@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/plus-jakarta-sans-vietnamese-wght-normal-qRpaaN48.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/plus-jakarta-sans-latin-ext-wght-normal-DmpS2jIq.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/plus-jakarta-sans-latin-wght-normal-eXO_dkmS.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--font-sans:"Plus Jakarta Sans Variable", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono:ui-monospace, "SF Mono", Menlo, Consolas, monospace;--font-size-xs:.8125rem;--font-size-sm:.9375rem;--font-size-md:1.0625rem;--font-size-lg:1.25rem;--font-size-xl:1.75rem;--font-size-2xl:2.125rem;--line-height-tight:1.15;--line-height-normal:1.5;--font-weight-regular:400;--font-weight-medium:550;--font-weight-semibold:650;--font-weight-bold:750;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--radius-sm:.625rem;--radius-md:1rem;--radius-lg:1.5rem;--radius-xl:2rem;--radius-full:999px;--touch-target:48px;--content-max-width:40rem;--color-bg:#eef5f3;--color-surface:#fff;--color-surface-muted:#e6efec;--color-border:#d3e0dc;--color-text:#0f201d;--color-text-muted:#48605a;--color-accent:#0f766e;--color-accent-strong:#0b5e57;--color-accent-2:#0e7490;--color-on-accent:#fff;--color-focus:#0f766e;--color-status-ok:#1d6b3c;--color-status-ok-bg:#dff3e6;--color-status-warn:#7a4d00;--color-status-warn-bg:#fdefd3;--color-status-neutral:#3f4f4b;--color-status-neutral-bg:#e5ecea;--tint-bp:#ffe4e0;--tint-bp-ink:#9a3324;--tint-glucose:#dcf0fb;--tint-glucose-ink:#11597d;--tint-weight:#e9e4fb;--tint-weight-ink:#4b3b9a;--tint-mood:#fdf0d2;--tint-mood-ink:#7a5300;--aurora-1:#7fd8c6;--aurora-2:#b9ecd7;--aurora-3:#cfc8f5;--aurora-4:#a8dcf2;--aurora-opacity:.95;--glass-alpha:.66;--glass-strong-alpha:.86;--glass-bg:rgb(255 255 255/var(--glass-alpha));--glass-strong:rgb(255 255 255/var(--glass-strong-alpha));--glass-border:#ffffffbf;--glass-edge:#0f201d14;--glass-blur:22px;--glass-highlight:inset 0 1px 0 #ffffffe6;--gradient-accent:linear-gradient(135deg, #0f766e 0%, #0e7490 100%);--shadow-sm:0 1px 2px #0f201d0f, 0 2px 8px #0f201d0a;--shadow-md:0 4px 12px #0f201d0f, 0 12px 32px #0f201d14;--shadow-lg:0 12px 40px #0f201d29;--shadow-accent:0 8px 24px #0f766e52;--duration-fast:.14s;--duration-normal:.22s;--ease-out:cubic-bezier(.2, .8, .2, 1)}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--color-bg:#07110f;--color-surface:#121e1c;--color-surface-muted:#1b2a27;--color-border:#2a3b37;--color-text:#e9f4f1;--color-text-muted:#a2b9b3;--color-accent:#5eead4;--color-accent-strong:#99f6e4;--color-accent-2:#67e8f9;--color-on-accent:#032420;--color-focus:#99f6e4;--color-status-ok:#8fe0a9;--color-status-ok-bg:#133222;--color-status-warn:#f6c96e;--color-status-warn-bg:#3a2c10;--color-status-neutral:#c8d6d2;--color-status-neutral-bg:#22302d;--tint-bp:#3a1d19;--tint-bp-ink:#ffb4a6;--tint-glucose:#102e3d;--tint-glucose-ink:#9ad8f7;--tint-weight:#251f45;--tint-weight-ink:#c9bdfb;--tint-mood:#3a2d0e;--tint-mood-ink:#f8d27c;--aurora-1:#0f5249;--aurora-2:#0b3b33;--aurora-3:#2a2160;--aurora-4:#0f3c52;--aurora-opacity:.85;--glass-alpha:.6;--glass-strong-alpha:.88;--glass-bg:rgb(18 30 28/var(--glass-alpha));--glass-strong:rgb(16 27 25/var(--glass-strong-alpha));--glass-border:#ffffff17;--glass-edge:#0000004d;--glass-highlight:inset 0 1px 0 #ffffff0f;--gradient-accent:linear-gradient(135deg, #5eead4 0%, #67e8f9 100%);--shadow-sm:0 1px 2px #0006;--shadow-md:0 8px 28px #00000073;--shadow-lg:0 16px 48px #0009;--shadow-accent:0 8px 28px #5eead438}}@media (prefers-reduced-transparency:reduce){:root{--glass-bg:var(--color-surface);--glass-strong:var(--color-surface);--glass-blur:0px;--aurora-opacity:.35}}@media (prefers-reduced-motion:reduce){:root{--duration-fast:0s;--duration-normal:0s}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);font-size:var(--font-size-md);line-height:var(--line-height-normal);-webkit-font-smoothing:antialiased;margin:0}h1,h2,p{margin:0}button{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px;border-radius:var(--radius-sm)}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.skip-link{left:var(--space-4);z-index:10;padding:var(--space-3) var(--space-4);background:var(--color-surface);color:var(--color-text);border-radius:var(--radius-sm);position:absolute;top:-100px}.skip-link:focus{top:var(--space-4)}.shell{min-height:100dvh;padding-bottom:calc(var(--touch-target) + var(--space-12) + var(--space-12) + env(safe-area-inset-bottom));flex-direction:column;display:flex}.topbar{z-index:2;justify-content:space-between;align-items:center;gap:var(--space-3);padding:calc(var(--space-3) + env(safe-area-inset-top)) var(--space-4) var(--space-3);background:color-mix(in srgb, var(--color-bg) 92%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);display:flex;position:sticky;top:0}.profile-chip{align-items:center;gap:var(--space-3);min-height:var(--touch-target);padding:var(--space-1) var(--space-4) var(--space-1) var(--space-1);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-full);text-align:left;cursor:pointer;display:flex}.profile-chip__avatar{border-radius:var(--radius-full);background:var(--color-surface-muted);width:40px;height:40px;color:var(--color-text-muted);place-items:center;display:grid}.profile-chip__text{line-height:var(--line-height-tight);flex-direction:column;display:flex}.profile-chip__label{font-size:var(--font-size-xs);color:var(--color-text-muted)}.profile-chip__name{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.status{align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);display:inline-flex}.status--ok{color:var(--color-status-ok);background:var(--color-status-ok-bg)}.status--warn{color:var(--color-status-warn);background:var(--color-status-warn-bg)}.status--neutral{color:var(--color-status-neutral);background:var(--color-status-neutral-bg)}.content{width:100%;max-width:var(--content-max-width);padding:var(--space-4);flex:1;margin:0 auto}.content:focus{outline:none}.page{gap:var(--space-5);flex-direction:column;display:flex}.page__header{gap:var(--space-1);padding-top:var(--space-2);flex-direction:column;display:flex}.page__eyebrow{font-size:var(--font-size-sm);color:var(--color-text-muted)}.page__title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);letter-spacing:-.01em}.empty-card{gap:var(--space-2);padding:var(--space-6) var(--space-5);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;display:flex}.empty-card__title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.empty-card__body{color:var(--color-text-muted)}.placeholder-list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.placeholder-item{min-height:var(--touch-target);padding:var(--space-3) var(--space-4);border:1px dashed var(--color-border);border-radius:var(--radius-md);color:var(--color-text-muted);font-size:var(--font-size-sm);align-items:center;display:flex}.text-link{min-height:var(--touch-target);color:var(--color-accent);font-weight:var(--font-weight-medium);align-items:center;display:inline-flex}.register-dock{left:0;right:0;bottom:calc(var(--touch-target) + var(--space-6) + env(safe-area-inset-bottom));z-index:3;padding:0 var(--space-4);pointer-events:none;justify-content:center;display:flex;position:fixed}.register-button{pointer-events:auto;justify-content:center;align-items:center;gap:var(--space-2);width:100%;max-width:calc(var(--content-max-width) - var(--space-8));min-height:56px;padding:0 var(--space-6);border-radius:var(--radius-full);background:var(--color-accent);color:var(--color-on-accent);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);box-shadow:var(--shadow-md);cursor:pointer;transition:background var(--duration-fast) ease;border:0;display:inline-flex}.register-button:hover{background:var(--color-accent-strong)}.register-button[aria-disabled=true]{cursor:not-allowed;opacity:.85}.tabbar{z-index:3;background:var(--color-surface);border-top:1px solid var(--color-border);padding-bottom:env(safe-area-inset-bottom);position:fixed;bottom:0;left:0;right:0}.tabbar ul{max-width:var(--content-max-width);grid-template-columns:repeat(4,1fr);margin:0 auto;padding:0;list-style:none;display:grid}.tabbar__link{min-height:calc(var(--touch-target) + var(--space-4));padding:var(--space-2) var(--space-1);color:var(--color-text-muted);font-size:var(--font-size-xs);flex-direction:column;justify-content:center;align-items:center;gap:2px;text-decoration:none;display:flex}.tabbar__link[aria-current=page]{color:var(--color-accent);font-weight:var(--font-weight-semibold);box-shadow:inset 0 3px 0 var(--color-accent)}.auth{min-height:100dvh;padding:var(--space-6) var(--space-4);place-items:center;display:grid}.auth__card{width:100%;max-width:28rem;padding:var(--space-8) var(--space-6);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.auth__brand{margin-bottom:var(--space-4);color:var(--color-accent);font-weight:var(--font-weight-semibold)}.muted{color:var(--color-text-muted)}.page__subtitle{color:var(--color-text-muted);font-weight:var(--font-weight-regular)}.form{gap:var(--space-4);border:0;flex-direction:column;min-width:0;margin:0;padding:0;display:flex}.field{gap:var(--space-2);border:0;flex-direction:column;margin:0;padding:0;display:flex}.field__label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);padding:0}.input{width:100%;min-height:var(--touch-target);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);color:var(--color-text);font:inherit}.input:focus-visible{outline-offset:0}.input--code{font-size:var(--font-size-xl);letter-spacing:.4em;text-align:center;font-variant-numeric:tabular-nums}.check{align-items:flex-start;gap:var(--space-3);min-height:var(--touch-target);padding:var(--space-2) 0;cursor:pointer;display:flex}.check input{width:22px;height:22px;accent-color:var(--color-accent);flex:none;margin-top:2px}.choice{align-items:flex-start;gap:var(--space-1);min-height:64px;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);text-align:left;cursor:pointer;flex-direction:column;display:flex}.choice:hover{border-color:var(--color-accent)}.choice__title{font-weight:var(--font-weight-semibold)}.choice__help{font-size:var(--font-size-sm);color:var(--color-text-muted)}.notice{gap:var(--space-3);max-height:40dvh;padding:var(--space-4);border-radius:var(--radius-md);background:var(--color-surface-muted);font-size:var(--font-size-sm);flex-direction:column;display:flex;overflow-y:auto}.feedback{align-items:flex-start;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-md);font-size:var(--font-size-sm);display:flex}.feedback svg{flex:none;margin-top:2px}.feedback--warn{color:var(--color-status-warn);background:var(--color-status-warn-bg)}.feedback--ok{color:var(--color-status-ok);background:var(--color-status-ok-bg)}.button{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--touch-target);padding:0 var(--space-5);border-radius:var(--radius-full);font:inherit;font-weight:var(--font-weight-semibold);cursor:pointer;border:1px solid #0000;text-decoration:none;display:inline-flex}.button:disabled{cursor:not-allowed;opacity:.55}.button--primary{background:var(--color-accent);color:var(--color-on-accent)}.button--primary:hover:not(:disabled){background:var(--color-accent-strong)}.button--secondary{background:var(--color-surface);border-color:var(--color-border);color:var(--color-text)}.button--text{color:var(--color-accent);background:0 0}.button--danger{background:var(--color-status-warn-bg);color:var(--color-status-warn)}.button--small{min-height:44px;padding:0 var(--space-4);font-size:var(--font-size-sm)}.icon-button{width:var(--touch-target);height:var(--touch-target);border-radius:var(--radius-full);cursor:pointer;background:0 0;border:0;place-items:center;display:grid}.inline-actions{gap:var(--space-1);display:flex}.section{gap:var(--space-3);flex-direction:column;display:flex}.section__header{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.section__title{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);margin:0}.list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.list__item{align-items:center;gap:var(--space-3);width:100%;min-height:64px;padding:var(--space-3) var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);text-align:left;display:flex}.list__item--muted{background:0 0;border-style:dashed}.list__button{font:inherit;color:inherit;cursor:pointer}.list__button--selected{border-color:var(--color-accent);box-shadow:inset 0 0 0 1px var(--color-accent)}.list__text{flex-direction:column;flex:1;min-width:0;display:flex}.list__title{font-weight:var(--font-weight-medium)}.list__meta{font-size:var(--font-size-sm);color:var(--color-text-muted)}.avatar{border-radius:var(--radius-full);background:var(--color-status-ok-bg);width:40px;height:40px;color:var(--color-status-ok);font-weight:var(--font-weight-semibold);flex:none;place-items:center;display:grid}.profile-chip__avatar{font-weight:var(--font-weight-semibold);color:var(--color-accent)}.sheet{width:min(100% - var(--space-8), 32rem);border-radius:var(--radius-lg);background:var(--color-surface);max-height:90dvh;color:var(--color-text);box-shadow:var(--shadow-md);border:0;padding:0}.sheet::backdrop{background:#0006}.sheet__header{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-4) var(--space-2) var(--space-5);background:var(--color-surface);display:flex;position:sticky;top:0}.sheet__title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.sheet__body{gap:var(--space-5);padding:0 var(--space-5) var(--space-6);flex-direction:column;display:flex}@media (width<=600px){.sheet{border-radius:var(--radius-lg) var(--radius-lg) 0 0;width:100%;max-width:none;padding-bottom:env(safe-area-inset-bottom);margin:auto 0 0}}.favorites,.kind-grid{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.favorite,.kind-button{min-height:64px;padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font:inherit;font-weight:var(--font-weight-semibold);text-align:left;cursor:pointer;box-shadow:var(--shadow-sm)}.favorite:hover,.kind-button:hover{border-color:var(--color-accent)}.metrics{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(150px,1fr));display:grid}.metric{gap:var(--space-1);min-height:120px;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);flex-direction:column;display:flex}.metric__title{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-muted);margin:0}.metric__value{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);font-variant-numeric:tabular-nums;line-height:var(--line-height-tight)}.metric__meta{font-size:var(--font-size-sm);color:var(--color-text-muted)}.sparkline{color:var(--color-accent);margin-top:auto}.conflict{flex-direction:column}.hint{font-size:var(--font-size-sm)}.bp-row{align-items:end;gap:var(--space-2);grid-template-columns:1fr auto 1fr;display:grid}.bp-row__slash{padding-bottom:var(--space-3);font-size:var(--font-size-2xl);color:var(--color-text-muted)}.input--big{font-size:var(--font-size-2xl);font-variant-numeric:tabular-nums;min-height:64px}.input::placeholder{color:var(--color-text-muted);opacity:.55}.chips{gap:var(--space-2);flex-wrap:wrap;display:flex}.chip{min-height:44px;padding:0 var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-full);background:var(--color-surface);color:var(--color-text);font:inherit;font-size:var(--font-size-sm);cursor:pointer}.chip[aria-pressed=true]{border-color:var(--color-accent);background:var(--color-status-ok-bg);color:var(--color-status-ok);font-weight:var(--font-weight-semibold)}.faces{gap:var(--space-2);grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.face{align-items:center;gap:var(--space-1);min-height:80px;padding:var(--space-2) var(--space-1);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font:inherit;cursor:pointer;flex-direction:column;display:flex}.face__emoji{font-size:2rem;line-height:1}.face__label{font-size:var(--font-size-xs);text-align:center}.more summary{min-height:var(--touch-target);color:var(--color-accent);font-weight:var(--font-weight-medium);cursor:pointer;align-items:center;display:flex}.more[open]{gap:var(--space-3);flex-direction:column;display:flex}.red-flag p:first-child{font-size:var(--font-size-lg);font-weight:var(--font-weight-medium)}.toast{left:50%;bottom:calc(var(--touch-target) + var(--space-12) + 56px + env(safe-area-inset-bottom));z-index:5;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-2) var(--space-2) var(--space-4);border-radius:var(--radius-full);background:var(--color-text);color:var(--color-bg);box-shadow:var(--shadow-md);display:flex;position:fixed;transform:translate(-50%)}.toast__action{min-height:44px;padding:0 var(--space-4);border-radius:var(--radius-full);color:var(--color-bg);font:inherit;font-weight:var(--font-weight-semibold);cursor:pointer;background:0 0;border:0;text-decoration:underline}.update-band{top:calc(72px + env(safe-area-inset-top));z-index:6;justify-content:center;align-items:center;gap:var(--space-3);width:min(100% - var(--space-8), 32rem);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-md);font-size:var(--font-size-sm);flex-wrap:wrap;display:flex;position:fixed;left:50%;transform:translate(-50%)}.fieldset{gap:var(--space-3);border:0;flex-direction:column;min-width:0;margin:0;padding:0;display:flex}.fieldset>legend{margin-bottom:var(--space-2)}.ingredient-row{align-items:flex-end;gap:var(--space-2);flex-wrap:wrap;display:flex}.ingredient-row>.input:first-child{flex:10rem;width:auto}.ingredient-row>.field{flex:9rem;min-width:0}.ingredient-row>select.input:not(.input--short){flex:8rem;width:auto}.input--short{flex:none;width:6.5rem}.choices{gap:var(--space-2);display:grid}.choice[aria-pressed=true]{border-color:var(--color-accent);box-shadow:inset 0 0 0 1px var(--color-accent);background:var(--color-status-ok-bg)}.time-list{gap:var(--space-2);flex-direction:column;display:flex}.section__subtitle{margin:var(--space-2) 0 0;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-muted)}.list__item.dose{flex-wrap:wrap;align-items:flex-start}.dose .list__text{gap:var(--space-1);min-width:12rem}.dose .status{align-self:flex-start}.list__text .status{margin-top:var(--space-1);align-self:flex-start}.dose__actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.facts{gap:var(--space-2) var(--space-4);grid-template-columns:max-content 1fr;margin:0;display:grid}.facts dt{color:var(--color-text-muted);font-size:var(--font-size-sm)}.facts dd{margin:0}.plain-list{padding-left:var(--space-4);gap:var(--space-1);flex-direction:column;margin:0;display:flex}@media (width<=420px){.facts{gap:var(--space-1);grid-template-columns:1fr}.facts dd{margin-bottom:var(--space-2)}}.form>.status{align-self:flex-start}.upload-actions{gap:var(--space-2);grid-template-columns:1fr 1fr;display:grid}.progress{gap:var(--space-2);flex-direction:column;display:flex}.progress progress{width:100%;height:12px;accent-color:var(--color-accent)}.doc-preview{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-muted);object-fit:contain;max-width:100%;max-height:60dvh;margin:0 auto;display:block}.list__button>svg{color:var(--color-text-muted);flex:none}body{background:var(--color-bg);font-feature-settings:"ss01", "cv11"}body:before{content:"";z-index:-1;pointer-events:none;opacity:var(--aurora-opacity);background:radial-gradient(40vmax 34vmax at 8% 4%, var(--aurora-1), transparent 70%), radial-gradient(36vmax 30vmax at 96% 12%, var(--aurora-3), transparent 70%), radial-gradient(44vmax 36vmax at 80% 92%, var(--aurora-4), transparent 70%), radial-gradient(38vmax 32vmax at 12% 88%, var(--aurora-2), transparent 70%);filter:saturate(1.1);position:fixed;inset:-10vmax}.metric,.list__item,.empty-card,.favorite,.kind-button,.choice,.face,.auth__card,.update-band,.profile-chip,.button--secondary,.chip,.dose,.doc-card{background:var(--glass-bg);border:1px solid var(--glass-border);box-shadow:var(--glass-highlight), 0 0 0 1px var(--glass-edge), var(--shadow-sm);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(1.4);backdrop-filter:blur(var(--glass-blur)) saturate(1.4)}.list__item--muted{box-shadow:none;border-style:dashed;border-color:var(--color-border);background:0 0}.metric,.empty-card,.list__item,.favorite,.kind-button,.choice,.face{border-radius:var(--radius-lg)}.metric,.list__button,.favorite,.kind-button,.choice,.face,.chip,.button{transition:transform var(--duration-fast) var(--ease-out), box-shadow var(--duration-normal) var(--ease-out), background var(--duration-fast) ease, border-color var(--duration-fast) ease}@media (hover:hover){.list__button:hover,.favorite:hover,.kind-button:hover,.choice:hover,.face:hover{border-color:var(--glass-border);box-shadow:var(--glass-highlight), 0 0 0 1px var(--glass-edge), var(--shadow-md);transform:translateY(-1px)}}.list__button:active,.favorite:active,.kind-button:active,.choice:active,.face:active,.chip:active,.button:active:not(:disabled){transform:scale(.98)}.page__title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);letter-spacing:-.03em}.page__eyebrow{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:.08em;text-transform:uppercase;color:var(--color-accent)}.section__title{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);letter-spacing:-.015em}.sheet__title,.empty-card__title,.choice__title{font-weight:var(--font-weight-bold);letter-spacing:-.01em}.metric__value{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);letter-spacing:-.03em}.topbar{background:color-mix(in srgb, var(--color-bg) 55%, transparent);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(1.4);backdrop-filter:blur(var(--glass-blur)) saturate(1.4);border-bottom:1px solid var(--glass-border)}.profile-chip__avatar,.avatar{background:var(--gradient-accent);color:var(--color-on-accent);font-weight:var(--font-weight-bold)}.tabbar{left:50%;right:auto;bottom:calc(var(--space-3) + env(safe-area-inset-bottom));width:min(100% - var(--space-6), calc(var(--content-max-width) - var(--space-4)));padding:var(--space-1);border:1px solid var(--glass-border);border-radius:var(--radius-xl);background:var(--glass-strong);box-shadow:var(--glass-highlight), 0 0 0 1px var(--glass-edge), var(--shadow-lg);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(1.5);backdrop-filter:blur(var(--glass-blur)) saturate(1.5);transform:translate(-50%)}.tabbar__link{min-height:calc(var(--touch-target) + var(--space-3));border-radius:calc(var(--radius-xl) - var(--space-1));font-weight:var(--font-weight-medium);transition:background var(--duration-fast) ease, color var(--duration-fast) ease}.tabbar__link[aria-current=page]{box-shadow:none;background:color-mix(in srgb, var(--color-accent) 14%, transparent);color:var(--color-accent);font-weight:var(--font-weight-bold)}.tabbar ul{align-items:end}.tabbar--with-fab ul{grid-template-columns:1fr 1fr 76px 1fr 1fr}.tabbar__center{justify-content:center;display:flex}.tabbar__fab{min-height:calc(var(--touch-target) + var(--space-3));padding:0 0 var(--space-2);color:var(--color-accent);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:center;gap:2px;display:flex}.tabbar__fab-circle{border-radius:var(--radius-full);background:var(--gradient-accent);width:60px;height:60px;color:var(--color-on-accent);box-shadow:0 0 0 5px var(--glass-strong), var(--shadow-accent);transition:transform var(--duration-fast) var(--ease-out);place-items:center;margin-top:-26px;display:grid}.tabbar__fab:hover .tabbar__fab-circle{transform:translateY(-1px)}.tabbar__fab:active .tabbar__fab-circle{transform:scale(.94)}.tabbar__link span{white-space:nowrap}.shell{padding-bottom:calc(var(--touch-target) + var(--space-12) + env(safe-area-inset-bottom))}.button--primary,.register-button{background:var(--gradient-accent);color:var(--color-on-accent);box-shadow:var(--shadow-accent), inset 0 1px 0 #ffffff40;border:0}.button--primary:hover:not(:disabled),.register-button:hover{background:var(--gradient-accent);filter:brightness(1.06)}.register-button{min-height:58px;font-weight:var(--font-weight-bold);letter-spacing:-.01em}.button--secondary{color:var(--color-text)}.button--text{font-weight:var(--font-weight-semibold)}.icon-button:hover{background:color-mix(in srgb, var(--color-text) 7%, transparent)}.chip[aria-pressed=true],.choice[aria-pressed=true]{background:color-mix(in srgb, var(--color-accent) 14%, var(--glass-strong));border-color:var(--color-accent);box-shadow:inset 0 0 0 1px var(--color-accent), var(--shadow-sm);color:var(--color-text)}.chip[aria-pressed=true]{color:var(--color-accent-strong)}.input{background:var(--glass-strong);border-color:var(--color-border);border-radius:var(--radius-md);transition:border-color var(--duration-fast) ease, box-shadow var(--duration-fast) ease}.input:focus-visible{border-color:var(--color-accent);box-shadow:0 0 0 4px color-mix(in srgb, var(--color-accent) 22%, transparent);outline:none}:focus-visible{outline-color:var(--color-focus)}.sheet{background:color-mix(in srgb, var(--color-surface) 96%, transparent);border:1px solid var(--glass-border);box-shadow:var(--glass-highlight), var(--shadow-lg);-webkit-backdrop-filter:blur(calc(var(--glass-blur) * 1.5)) saturate(1.5);backdrop-filter:blur(calc(var(--glass-blur) * 1.5)) saturate(1.5)}.sheet[open]{animation:sheet-in var(--duration-normal) var(--ease-out)}.sheet::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#040e0c61}.sheet__header{background:0 0}@media (width<=600px){.sheet{border-radius:var(--radius-xl) var(--radius-xl) 0 0;border-bottom:0}.sheet__header:before{content:"";top:var(--space-2);border-radius:var(--radius-full);background:color-mix(in srgb, var(--color-text) 18%, transparent);width:40px;height:5px;position:absolute;left:50%;transform:translate(-50%)}.sheet__header{padding-top:var(--space-6)}}@keyframes sheet-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}.toast{color:#f1faf8;box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);animation:toast-in var(--duration-normal) var(--ease-out);bottom:calc(var(--touch-target) + var(--space-12) + var(--space-4) + env(safe-area-inset-bottom));background:#0b1a17e0;border:1px solid #ffffff1f}.toast__action{color:#99f6e4}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%)}}.feedback,.status{border:1px solid color-mix(in srgb, currentColor 18%, transparent)}.favorites,.kind-grid{gap:var(--space-3)}.favorite,.kind-button{align-items:center;gap:var(--space-3);min-height:72px;padding:var(--space-3);font-weight:var(--font-weight-bold);display:flex}.kind-icon{border-radius:var(--radius-md);background:var(--tint,var(--color-surface-muted));width:44px;height:44px;color:var(--tint-ink,var(--color-accent));flex:none;place-items:center;display:grid}.kind-icon--bp{--tint:var(--tint-bp);--tint-ink:var(--tint-bp-ink)}.kind-icon--glucose_capillary{--tint:var(--tint-glucose);--tint-ink:var(--tint-glucose-ink)}.kind-icon--weight{--tint:var(--tint-weight);--tint-ink:var(--tint-weight-ink)}.kind-icon--mood{--tint:var(--tint-mood);--tint-ink:var(--tint-mood-ink)}.metric{gap:var(--space-2);min-height:150px;padding:var(--space-4)}.metric__head{align-items:center;gap:var(--space-2);display:flex}.metric__head .kind-icon{border-radius:var(--radius-sm);width:32px;height:32px}.sparkline{color:var(--color-accent)}.days-card{align-items:center;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-lg);display:flex}.days-card strong{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);letter-spacing:-.03em;color:var(--color-accent)}.auth__card{border-radius:var(--radius-xl);box-shadow:var(--glass-highlight), 0 0 0 1px var(--glass-edge), var(--shadow-lg)}.notice{background:var(--glass-strong);border:1px solid var(--color-border)}.doc-preview{border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){:root{--glass-bg:var(--glass-strong)}}@media (prefers-reduced-motion:reduce){.sheet[open],.toast{animation:none}}.days-card.metric{min-height:0;color:var(--color-accent);flex-direction:row}.ring{align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-muted);display:inline-flex}.ring svg{transform:rotate(-90deg)}.ring circle{fill:none;stroke-width:4px}.ring__track{stroke:color-mix(in srgb, var(--color-accent) 16%, transparent)}.ring__value{stroke:var(--color-accent);stroke-linecap:round;transition:stroke-dashoffset var(--duration-normal) var(--ease-out)}.list__item.dose{gap:var(--space-3);padding:var(--space-4)}.section__header{row-gap:var(--space-1);flex-wrap:wrap}.section__header .section__title{flex:auto}.section__header .button--text{white-space:nowrap;padding:0 var(--space-2)}.auth{align-content:center;gap:var(--space-6);padding-top:calc(var(--space-10) + env(safe-area-inset-top))}.brand{align-items:center;gap:var(--space-2);text-align:center;flex-direction:column;display:flex}.brand__logo{margin-bottom:var(--space-1);color:var(--color-text);line-height:0}.brand__tagline{max-width:22rem;color:var(--color-text-muted)}.auth__card{padding:var(--space-6) var(--space-5)}.auth__card .page__title{font-size:var(--font-size-xl)}.steps{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);display:flex}.steps__label{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:.06em;text-transform:uppercase;color:var(--color-accent)}.steps__bar{gap:6px;display:flex}.steps__dot{border-radius:var(--radius-full);background:color-mix(in srgb, var(--color-accent) 18%, transparent);width:22px;height:6px}.steps__dot--done{background:var(--gradient-accent)}fieldset.form>legend{margin-bottom:var(--space-4)}.choice{align-items:center;gap:var(--space-3);flex-direction:row}.choice__icon{border-radius:var(--radius-md);background:color-mix(in srgb, var(--color-accent) 14%, transparent);width:44px;height:44px;color:var(--color-accent);flex:none;place-items:center;display:grid}.choice__text{gap:var(--space-1);flex-direction:column;display:flex}.check input{appearance:none;border:2px solid var(--color-text-muted);background:var(--glass-strong);cursor:pointer;border-radius:7px;place-items:center;display:grid}.check input:checked{background:var(--gradient-accent);border-color:#0000}.check input:checked:after{content:"";border:solid var(--color-on-accent);border-width:0 2.5px 2.5px 0;width:6px;height:11px;margin-top:-2px;transform:rotate(45deg)}.notice{border-radius:var(--radius-md);line-height:1.6}.avatar--0{background:linear-gradient(135deg,#0f766e,#0e7490)}.avatar--1{background:linear-gradient(135deg,#5b3fc4,#6d28d9)}.avatar--2{background:linear-gradient(135deg,#b42350,#9f1239)}.avatar--3{background:linear-gradient(135deg,#8a5200,#9a3412)}.avatar--4{background:linear-gradient(135deg,#1d4ed8,#1e40af)}[class*=avatar--]{color:#fff}.add-row{align-items:center;gap:var(--space-3);width:100%;min-height:64px;padding:var(--space-3) var(--space-4);border:1.5px dashed color-mix(in srgb, var(--color-accent) 45%, transparent);border-radius:var(--radius-lg);background:color-mix(in srgb, var(--color-accent) 6%, transparent);color:var(--color-accent);font:inherit;font-weight:var(--font-weight-semibold);cursor:pointer;transition:background var(--duration-fast) ease;display:flex}.add-row:hover{background:color-mix(in srgb, var(--color-accent) 12%, transparent)}.add-row__icon{border-radius:var(--radius-full);background:color-mix(in srgb, var(--color-accent) 14%, transparent);place-items:center;width:40px;height:40px;display:grid}.sheet:focus{outline:none}@media (width<=600px){.sheet{margin-bottom:var(--keyboard,0px);max-height:calc(var(--visible-height,100dvh) - var(--space-4));overscroll-behavior:contain;overflow-y:auto}.sheet .form>.button--primary[type=submit]{bottom:var(--space-3);z-index:1;position:sticky}.sheet .form>.button--primary[type=submit]:disabled{opacity:1;background:color-mix(in srgb, var(--color-accent) 42%, var(--color-surface));box-shadow:0 -8px 16px 4px var(--color-surface)}}
