:root{--base:#f9f5f9;--surface:#fff;--surface-high:#eee9ef;--on-surface:#141015;--on-surface-quiet:#585359;--outline:#8a848b;--outline-quiet:#e1dce2;--primary:#5d2966;--on-primary:#fff;--primary-container:#f5e0f8;--on-primary-container:#36003e;--secondary:#785f7c;--accent:#89600d;--accent-container:#fce8cb;--error:#9a1f23;--error-container:#ffe4e1;--success:#146635;--success-container:#dbf2e0;--elevation-1:0 1px 2px #1410150f, 0 1px 3px #1410151a;--elevation-2:0 2px 6px #14101514, 0 8px 24px #1410151f;--corner-xs:4px;--corner-s:8px;--corner-m:12px;--corner-l:16px;--corner-full:999px;--touch:48px;--app-bar:64px}@media (prefers-color-scheme:dark){:root{--base:#0d0a0e;--surface:#171217;--surface-high:#251f26;--on-surface:#e8e2e9;--on-surface-quiet:#a29ca2;--outline:#736c74;--outline-quiet:#2c272d;--primary:#d9abe0;--on-primary:#2f0036;--primary-container:#4b2251;--on-primary-container:#f4d0fa;--secondary:#ad95b1;--accent:#dcb77f;--accent-container:#3e2904;--error:#f09e97;--error-container:#3c1715;--success:#92cfa2;--success-container:#0f2b18;--elevation-1:0 1px 2px #0006, 0 1px 3px #0000004d;--elevation-2:0 2px 6px #00000073, 0 8px 24px #0006}}*,:before,:after{box-sizing:border-box}html{-moz-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--base);min-height:100dvh;color:var(--on-surface);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:1rem;line-height:1.5}a{color:var(--primary);text-underline-offset:2px}a:visited{color:var(--primary)}.title{letter-spacing:0;margin:0;font-size:1.375rem;font-weight:500;line-height:1.27}.headline{letter-spacing:-.01em;margin:0;font-size:1.5rem;font-weight:500;line-height:1.33}.body{margin:0;font-size:1rem;line-height:1.5}.body-small{margin:0;font-size:.875rem;line-height:1.43}.label{font-size:.875rem;font-weight:500;line-height:1.43}.quiet{color:var(--on-surface-quiet)}:where(a,button,input,[tabindex]):focus-visible{outline:3px solid var(--primary);outline-offset:2px;border-radius:var(--corner-xs)}.app-bar{z-index:10;height:calc(var(--app-bar) + env(safe-area-inset-top));padding:env(safe-area-inset-top) max(8px, env(safe-area-inset-right)) 0 max(8px, env(safe-area-inset-left));background:var(--surface);color:var(--on-surface);box-shadow:var(--elevation-1);align-items:center;gap:8px;display:flex;position:sticky;top:0}.app-bar__brand{min-width:0;color:inherit;border-radius:var(--corner-s);align-items:center;gap:10px;padding-inline-start:8px;text-decoration:none;display:flex}.app-bar__brand :where(img,svg){width:28px;height:28px;display:block}.app-bar__title{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.app-bar__rest{align-items:center;margin-inline-start:auto;display:flex}.icon-button{width:var(--touch);height:var(--touch);border-radius:var(--corner-full);color:var(--on-surface);cursor:pointer;appearance:none;background:0 0;border:0;place-items:center;padding:0;display:grid}.icon-button svg{width:24px;height:24px;display:block}.icon-button:active{background:var(--surface-high)}@media (hover:hover) and (pointer:fine){.icon-button:hover{background:var(--surface-high)}}.menu{position:relative}.menu__list{top:calc(100% + 4px);background:var(--surface);border:1px solid var(--outline-quiet);border-radius:var(--corner-xs);min-width:200px;max-width:min(280px,100vw - 32px);box-shadow:var(--elevation-2);transform-origin:100% 0;margin:0;padding:8px 0;list-style:none;animation:.12s ease-out menu-open;position:absolute;inset-inline-end:4px}@keyframes menu-open{0%{opacity:0;transform:scale(.96)translateY(-4px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.menu__list{animation:none}}.menu__item{display:block}.menu__item :where(a,button){width:100%;min-height:var(--touch);color:var(--on-surface);font:inherit;text-align:start;cursor:pointer;background:0 0;border:0;align-items:center;gap:12px;padding:0 12px;text-decoration:none;display:flex}.menu__item :where(a,button):active{background:var(--surface-high)}@media (hover:hover) and (pointer:fine){.menu__item :where(a,button):hover{background:var(--surface-high)}}.menu__item svg{width:24px;height:24px;color:var(--on-surface-quiet);flex:none}.menu__separator{background:var(--outline-quiet);height:1px;margin:8px 0}.menu__item form{margin:0;display:block}.content{padding:16px max(16px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));width:100%;max-width:44rem;margin-inline:auto}.center{min-height:100dvh;padding:max(16px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));place-items:center;display:grid}.card{background:var(--surface);border:1px solid var(--outline-quiet);border-radius:var(--corner-l);width:100%;box-shadow:var(--elevation-1);padding:20px}.center .card{max-width:26rem}form{gap:16px;margin-top:20px;display:grid}.field{gap:8px;display:grid}label{font-size:.875rem;font-weight:500}input{width:100%;min-height:var(--touch);color:var(--on-surface);background:var(--surface);border:1px solid var(--outline);border-radius:var(--corner-s);appearance:none;padding:12px 14px;font-family:inherit;font-size:1rem}input:focus{border-color:var(--primary)}input[aria-invalid=true]{border-color:var(--error)}.field-error{color:var(--error);font-size:.8125rem}.hint{color:var(--on-surface-quiet);font-size:.8125rem}.message{background:var(--error-container);border:1px solid var(--error);color:var(--error);border-radius:var(--corner-s);padding:12px;font-size:.875rem;display:block}button.button{min-height:var(--touch);border-radius:var(--corner-full);background:var(--primary);color:var(--on-primary);font:inherit;cursor:pointer;appearance:none;border:1px solid #0000;padding:0 24px;font-weight:500}button.button:disabled{opacity:.55;cursor:progress}button.button--outlined{color:var(--primary);border-color:var(--outline);background:0 0}@media (hover:hover) and (pointer:fine){button.button:hover:not(:disabled){filter:brightness(1.06)}}button.button:active:not(:disabled){filter:brightness(.94)}form>button.button{width:100%}.toggle{background:var(--base);border:1px solid var(--outline-quiet);border-radius:var(--corner-full);gap:4px;margin:20px 0 0;padding:4px;display:flex}.toggle a{border-radius:var(--corner-full);min-height:40px;color:var(--on-surface-quiet);flex:1;place-items:center;font-size:.875rem;text-decoration:none;display:grid}.toggle a[aria-current=page]{background:var(--surface);color:var(--on-surface);box-shadow:var(--elevation-1);font-weight:500}.pairs{gap:14px;margin:20px 0 0;display:grid}.pairs dt{color:var(--on-surface-quiet);font-size:.8125rem}.pairs dd{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin:4px 0 0}@media (min-width:600px){:root{--app-bar:64px}.content{padding-block:32px}.card{padding:24px}.headline{font-size:1.75rem}form>button.button{justify-self:start;width:auto}}.success{background:var(--success-container);border:1px solid var(--success);border-radius:var(--corner-s);color:var(--on-surface);gap:8px;margin:20px 0 0;padding:14px;display:grid}.success .label{color:var(--success)}.list{gap:4px;margin:12px 0 0;padding:0;list-style:none;display:grid}.row{border-bottom:1px solid var(--outline-quiet);flex-wrap:wrap;align-items:center;gap:12px;padding:10px 0;display:flex}.row:last-child{border-bottom:0}.row__text{flex:100%;min-width:0;display:grid}.row__text>span{overflow-wrap:anywhere}.row__action{flex-wrap:wrap;gap:8px;display:flex}.row>.hint{flex:none}.row form{flex-wrap:wrap;gap:8px;margin:0;display:flex}.row form>button.button,.row__action>button.button,.row>button.button{width:auto}.brand{border-radius:var(--corner-full);background:var(--primary-container);color:var(--primary);vertical-align:2px;margin-inline-start:8px;padding:1px 8px;font-size:.8125rem;font-weight:500;display:inline-block}button.button--danger{background:var(--error);color:var(--surface);border-color:#0000}.copy{flex-wrap:wrap;gap:8px;display:flex}.copy input{flex:14rem;min-width:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8125rem}.copy button.button{flex:none;width:auto}h2.title{margin:0}h3.label{margin:0;display:block}@media (min-width:600px){.row__text{flex:16rem}}select{width:100%;min-height:var(--touch);color:var(--on-surface);background:var(--surface);border:1px solid var(--outline);border-radius:var(--corner-s);padding:12px 14px;font-family:inherit;font-size:1rem}select:focus{border-color:var(--primary)}.day-picker{align-items:center;gap:8px;margin-bottom:16px;display:flex}.day-picker__center{text-align:center;flex:1;display:grid}.day-picker .icon-button{background:var(--surface);border:1px solid var(--outline-quiet);color:var(--on-surface);flex:none;text-decoration:none}.day-picker span.icon-button{background:0 0;border-color:#0000}.child{margin-bottom:16px}.child__head{gap:12px;display:grid}.total{grid-template-columns:auto auto;justify-content:start;align-items:baseline;gap:0 4px;display:grid}.total__value{font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:2.25rem;font-weight:600;line-height:1}.total__unit{color:var(--on-surface-quiet);font-size:1rem}.total__text{color:var(--on-surface-quiet);grid-column:1/-1;font-size:.8125rem}.feedings{margin:20px 0 0;padding:0;list-style:none;display:grid}.feeding{border-bottom:1px solid var(--outline-quiet);align-items:center;gap:12px;padding:6px 0;display:flex}.feeding:last-child{border-bottom:0}.feeding__time{font-variant-numeric:tabular-nums;color:var(--on-surface-quiet);min-width:3.5rem}.feeding__value{font-variant-numeric:tabular-nums;font-weight:500}.feeding__action{margin-inline-start:auto}.feeding form{flex-wrap:wrap;gap:8px;margin:0;display:flex}.feeding form>button.button{width:auto}button.button--small{min-height:36px;padding:0 14px;font-size:.875rem}.entry{gap:6px;margin-top:20px}.entry__fields{grid-template-columns:1fr 1fr;gap:12px;display:grid}.entry__fields>button.button{grid-column:1/-1;width:100%}@media (min-width:600px){.child__head{grid-template-columns:1fr auto;align-items:start}.total{text-align:end;justify-content:end}.entry__fields{grid-template-columns:10rem 10rem auto;align-items:end}.entry__fields>button.button{grid-column:auto;width:auto}}.weight{border-top:1px solid var(--outline-quiet);margin-top:24px;padding-top:20px}.weight__head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.weight__value{font-variant-numeric:tabular-nums;font-size:1.25rem;font-weight:600}.weight .entry{margin-top:12px}.entry__fields--weight{grid-template-columns:1fr}.weight__delete{margin-top:12px}.weight form.weight__delete{flex-wrap:wrap;gap:8px;display:flex}.weight form.weight__delete>button.button{width:auto}@media (min-width:600px){.entry__fields--weight{grid-template-columns:12rem auto}}:root{--bar:60px}.sections--bottom{inset-inline:0;z-index:20;background:var(--surface);border-top:1px solid var(--outline-quiet);padding-bottom:env(safe-area-inset-bottom);display:flex;position:fixed;bottom:0}.sections--top{display:none}.section{min-height:var(--bar);color:var(--on-surface-quiet);flex:1;place-items:center;gap:2px;padding:8px 4px;text-decoration:none;display:grid}.section svg{width:24px;height:24px}.section__name{font-size:.75rem;line-height:1.2}.section[aria-current=page]{color:var(--primary);font-weight:500}.section:active{background:var(--surface-high)}@media (hover:hover) and (pointer:fine){.section:hover{background:var(--surface-high)}}.content{padding-bottom:calc(var(--bar) + 16px + env(safe-area-inset-bottom))}.range{background:var(--surface);border:1px solid var(--outline-quiet);border-radius:var(--corner-full);gap:4px;margin-bottom:16px;padding:4px;display:flex}.range a{border-radius:var(--corner-full);min-height:40px;color:var(--on-surface-quiet);flex:1;place-items:center;font-size:.875rem;text-decoration:none;display:grid}.range a[aria-current=page]{background:var(--primary);color:var(--on-primary);font-weight:500}h3.history__title{margin-top:24px;display:block}.history{margin:8px 0 0}.history svg{width:100%;height:auto;display:block;overflow:visible}.history__empty{background:var(--base);border-radius:var(--corner-s);margin:8px 0 0;padding:16px}.history__grid{stroke:var(--outline-quiet);stroke-width:1px}.history__axis{fill:var(--on-surface-quiet);font-variant-numeric:tabular-nums;font-size:9px}.history__value{fill:var(--on-surface);font-variant-numeric:tabular-nums;font-size:10px;font-weight:600}.history__line{fill:none;stroke:var(--primary);stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.history__dot,.history__bar{fill:var(--primary)}@media (min-width:600px){.sections--bottom{display:none}.content{padding-bottom:32px}.sections--top{gap:4px;margin-inline-start:16px;display:flex}.sections--top .section{min-height:var(--touch);border-radius:var(--corner-full);flex:none;grid-auto-flow:column;align-items:center;gap:8px;padding:0 14px}.sections--top .section__name{font-size:.9375rem}.sections--top .section[aria-current=page]{background:var(--surface-high)}}.row--open,.feeding--open{display:block}.edit{gap:16px;width:100%;margin:0;display:grid}.edit__actions{flex-wrap:wrap;gap:8px;display:flex}.edit__actions>button.button{width:auto}.feeding--open form.entry{margin:0}.feeding__tools{gap:4px;display:flex}.vitamin{border-radius:var(--corner-s);border:1px solid var(--outline-quiet);align-items:center;gap:8px;margin:12px 0 0;padding:8px 12px;font-size:.875rem;display:flex}.vitamin__glyph{font-size:1rem;line-height:1}.vitamin--given{background:var(--success-container);border-color:var(--success);color:var(--success)}.vitamin--open{background:var(--surface-high);color:var(--on-surface-quiet)}.tick{min-height:var(--touch);color:var(--on-surface);cursor:pointer;grid-column:1/-1;align-items:center;gap:12px;margin:0;font-size:.875rem;display:flex}.tick input[type=checkbox]{width:24px;height:24px;accent-color:var(--primary);margin:0}.tick--done{color:var(--on-surface-quiet);cursor:default}.feeding__vitamin{color:var(--success);background:var(--success-container);border-radius:var(--corner-full);align-items:center;gap:4px;padding:2px 10px;font-size:.75rem;display:inline-flex}.message--hint{background:var(--accent-container);border-color:var(--accent);color:var(--accent)}.field--tick label{min-height:var(--touch);align-items:center;gap:12px;font-weight:400;display:flex}.field--tick input[type=checkbox]{width:22px;height:22px;min-height:0;accent-color:var(--primary);appearance:auto;flex:none;margin:0;padding:0}.switch{border-top:1px solid var(--outline-quiet);flex:100%;align-items:center;gap:12px;margin:4px 0 0;padding:8px 0 0;display:flex}.switch__text{flex:auto;min-width:0;display:grid}.switch__button{min-height:var(--touch);color:var(--on-surface-quiet);cursor:pointer;background:0 0;border:0;flex:none;align-items:center;gap:8px;padding:0 4px;font-family:inherit;font-size:.875rem;display:flex}.switch__track{border-radius:var(--corner-full);background:var(--outline-quiet);border:1px solid var(--outline);width:44px;height:24px;transition:background .12s;display:block;position:relative}.switch__knob{background:var(--surface);width:18px;height:18px;box-shadow:var(--elevation-1);border-radius:50%;transition:inset-inline-start .12s;position:absolute;inset-block-start:2px;inset-inline-start:2px}.switch__button[aria-checked=true] .switch__track{background:var(--primary);border-color:var(--primary)}.switch__button[aria-checked=true] .switch__knob{inset-inline-start:22px}.switch__word{font-variant-numeric:tabular-nums;min-width:2.2em}.switch__button[aria-checked=true] .switch__word{color:var(--primary);font-weight:500}.target{background:var(--surface-high);border-radius:var(--corner-s);border-inline-start:4px solid var(--outline);align-items:flex-start;gap:10px;margin:12px 0 0;padding:10px 12px;font-size:.875rem;display:flex}.target__glyph{text-align:center;width:1em;color:var(--on-surface-quiet);flex:none;font-size:1rem;line-height:1.4}.target__value{font-variant-numeric:tabular-nums;font-size:1rem;font-weight:600;display:block}.target__basis{color:var(--on-surface-quiet);margin-top:2px;font-size:.8125rem;display:block}.target__stale{color:var(--on-surface)}.target--reached{border-inline-start-color:var(--success)}.target--reached .target__glyph{color:var(--success)}.target--above{border-inline-start-color:var(--primary)}.target--above .target__glyph{color:var(--primary)}.target--open,.target--missing{border-inline-start-color:var(--outline)}@media (min-width:600px){.target{padding:12px 14px}.target__basis{max-width:62ch}}.notice{border-inline-start:4px solid var(--accent)}.notice__warn{color:var(--on-surface);font-weight:500}.avatar-button{padding:0}.avatar{background:var(--primary-container);width:40px;height:40px;color:var(--on-primary-container);font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;font-size:.875rem;font-weight:500;line-height:1;display:grid;overflow:hidden}.dialog{border-radius:var(--corner-l) var(--corner-l) 0 0;background:var(--surface);width:100%;max-height:92dvh;color:var(--on-surface);box-shadow:var(--elevation-2);padding:0;padding-bottom:env(safe-area-inset-bottom);border:0;margin:auto auto 0;overflow:auto}.dialog::backdrop{background:#00000080}.dialog__form{gap:16px;margin:0;padding:20px 16px;display:grid}.dialog__actions{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.dialog__actions>button.button{flex:auto;width:auto}html:has(dialog[open]){overflow:hidden}@media (min-width:600px){.dialog{border-radius:var(--corner-l);width:min(480px,100vw - 32px);margin:auto;padding-bottom:0}.dialog__form{padding:24px}}
