:root{color-scheme:light;font-family:-apple-system,PingFang SC,Hiragino Sans GB,Noto Sans SC,Segoe UI,sans-serif;font-size:16px;line-height:1.5;font-weight:400;--bg: #eef6f1;--bg-accent: radial-gradient(circle at top, rgba(138, 184, 168, .28), transparent 42%);--surface: rgba(255, 255, 255, .9);--surface-strong: #ffffff;--border: rgba(72, 111, 98, .16);--text: #19352e;--muted: #56736b;--primary: #2f7d69;--primary-strong: #246654;--secondary: #4b8da5;--shadow: 0 18px 48px rgba(23, 49, 42, .1);--error: #a64747}@media(prefers-color-scheme:dark){:root{color-scheme:dark;--bg: #10211d;--bg-accent: radial-gradient(circle at top, rgba(70, 118, 104, .42), transparent 45%);--surface: rgba(25, 48, 42, .94);--surface-strong: #163028;--border: rgba(174, 210, 196, .16);--text: #eef7f4;--muted: #b9d0c8;--primary: #8ed2b4;--primary-strong: #73c6a2;--secondary: #92c8e6;--shadow: 0 18px 48px rgba(0, 0, 0, .28);--error: #ffb3b3}}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;color:var(--text);background:var(--bg-accent),linear-gradient(180deg,rgba(83,146,123,.08),transparent 24%),var(--bg)}body,button,input{font:inherit}button,input{min-height:44px}button{cursor:pointer}input{width:100%;padding:.8rem .95rem;border:1px solid var(--border);border-radius:16px;background:var(--surface-strong);color:var(--text)}input:focus-visible,button:focus-visible{outline:3px solid color-mix(in srgb,var(--secondary) 60%,white 40%);outline-offset:2px}.app-shell{width:min(100%,720px);margin:0 auto;padding:1rem 1rem 6rem}.error-boundary{min-height:100vh;display:grid;place-items:center;padding:1.5rem}.error-boundary__card{width:min(100%,34rem);display:grid;gap:.9rem;padding:1.5rem}.error-boundary__detail{font-size:.92rem}.error-boundary__actions{margin-top:.4rem}.dashboard,.dashboard-grid{display:grid;gap:1rem}.surface-card{background:var(--surface);border:1px solid var(--border);border-radius:28px;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.form-card,.empty-card,.insight-card,.chart-card,.child-header,.modal-card{padding:1.1rem}.eyebrow{margin:0 0 .45rem;color:var(--primary);font-size:.85rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}h1,h2{margin:0;line-height:1.2}.lead,.helper-text,.muted-text,.child-header__meta,.insight-card__message,.status-message{margin:0}.lead,.helper-text,.muted-text,.child-header__meta{color:var(--muted)}.stack-form{display:grid;gap:1rem;margin-top:1.25rem}.field{display:grid;gap:.4rem}.field label,.fieldset legend{font-weight:600}.fieldset{margin:0;padding:0;border:0}.radio-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.radio-card{display:flex;align-items:center;justify-content:center;gap:.5rem;min-height:52px;padding:.65rem .75rem;border:1px solid var(--border);border-radius:18px;background:var(--surface-strong)}.radio-card input{width:auto;min-height:auto;margin:0}.primary-button,.ghost-button,.fab-button{border:0;border-radius:999px;transition:transform .18s ease,opacity .18s ease,background .18s ease}.primary-button:hover,.ghost-button:hover,.fab-button:hover{transform:translateY(-1px)}.primary-button:disabled,.ghost-button:disabled,.fab-button:disabled{opacity:.6;transform:none;cursor:not-allowed}.primary-button{padding:.85rem 1.2rem;background:linear-gradient(135deg,var(--primary),var(--secondary));color:#fff;font-weight:700}.ghost-button{padding:.8rem 1rem;background:transparent;color:var(--text);border:1px solid var(--border)}.status-message{color:var(--error)}.global-status{width:min(100%,720px);margin:1rem auto 0;padding:0 1rem;color:var(--error)}.child-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.child-header__switcher{display:grid;flex:1;min-width:0;padding:0;border:0;background:transparent;color:inherit;text-align:left}.child-header__identity{display:grid;gap:.4rem}.child-header__title-row{display:inline-flex;align-items:center;gap:.45rem;width:fit-content;padding-bottom:.1rem;border-bottom:1px solid transparent;transition:border-color .18s ease,color .18s ease}.child-header__switcher:hover .child-header__title-row,.child-header__switcher:focus-visible .child-header__title-row{border-color:color-mix(in srgb,var(--primary) 30%,transparent 70%)}.child-header__chevron{color:var(--muted);font-size:.95rem;transform:translateY(.08rem)}.banner-pill{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:.35rem .8rem;border-radius:999px;background:#4b8da51f;color:var(--secondary);font-size:.9rem;font-weight:600;white-space:nowrap}.insight-card{display:grid;gap:.6rem}.chart-card{display:grid;gap:1rem}.chart-card__header{display:flex;justify-content:space-between;gap:.75rem}.chart-card__graphic{overflow:hidden;border-radius:22px;min-height:240px;background:#4b8da514}.chart-card__graphic svg{display:block;width:100%;height:auto}.chart-card__placeholder{display:grid;place-items:center;gap:.85rem;min-height:240px;padding:1.25rem;text-align:center}.chart-card__actions{display:flex;justify-content:center}.chart-card__retry{min-height:40px;padding:.55rem .95rem}.chart-card__skeleton{width:min(100%,440px);height:176px;border-radius:20px;background:linear-gradient(120deg,#4b8da51f,#4b8da547 45%,#4b8da51f);background-size:200% 100%;animation:chart-skeleton 1.4s ease-in-out infinite}@keyframes chart-skeleton{0%{background-position:100% 0}to{background-position:-100% 0}}.measurement-list{display:grid;gap:1rem;padding:1.1rem}.measurement-list__header,.measurement-list__meta,.measurement-list__confirm{display:flex;gap:.5rem}.measurement-list__header{align-items:flex-start;justify-content:space-between;flex-wrap:wrap}.measurement-list__meta{flex-wrap:wrap;align-items:center}.measurement-list__scroll{max-height:min(64rem,calc(100vh - 12rem));overflow-y:auto;margin:0 -.2rem;padding:0 .2rem}.measurement-list__items{display:grid;gap:.75rem;margin:0;padding:0;list-style:none}.measurement-list__item{padding-bottom:.75rem;border-bottom:1px solid var(--border)}.measurement-list__item:last-child{padding-bottom:0;border-bottom:0}.measurement-list__row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.75rem;align-items:start}.measurement-list__content{display:grid;gap:.35rem;min-width:0}.measurement-list__date{font-weight:700}.measurement-list__age,.measurement-list__empty{color:var(--muted)}.measurement-list__values{margin:0;color:var(--text);word-break:break-word}.measurement-list__actions{display:flex;align-items:flex-start;justify-content:flex-end;gap:.5rem}.measurement-list__icon-button{display:inline-flex;align-items:center;justify-content:center;width:44px;min-width:44px;min-height:44px;padding:0;border:1px solid var(--border);border-radius:999px;background:transparent;color:var(--muted);font-size:1.4rem;line-height:1}.measurement-list__icon{width:1rem;height:1rem}.measurement-list__delete{font-size:1.5rem}.measurement-list__confirm{flex-wrap:wrap;align-items:center;justify-content:flex-end}.measurement-list__confirm-text{color:var(--muted);font-size:.95rem}.measurement-list__confirm-button{min-height:40px;padding:.55rem .85rem}.dashboard-actions{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:center;gap:.75rem 1rem;padding-bottom:1rem}.standard-switcher{display:grid;gap:.45rem;min-width:min(100%,17rem);padding:.85rem 1rem}.standard-switcher__label{font-weight:600}.standard-switcher__select{min-width:min(100%,17rem);min-height:44px;padding:.8rem .95rem;border:1px solid var(--border);border-radius:16px;background:var(--surface-strong);color:var(--text);font:inherit}.standard-switcher__select:focus-visible{outline:3px solid color-mix(in srgb,var(--secondary) 60%,white 40%);outline-offset:2px}.data-io{display:grid;justify-items:center;gap:.35rem}.data-io__row{display:inline-flex;flex-wrap:wrap;justify-content:center;gap:.4rem}.data-io__status{max-width:min(100%,20rem);text-align:center}.reset-button-wrap{display:flex;justify-content:center}.text-button{min-height:44px;padding:.2rem .5rem;border:0;background:transparent;color:var(--muted);font-size:.95rem}.text-button:disabled{opacity:.6;cursor:not-allowed}.pwa-toast-stack{position:fixed;left:50%;bottom:calc(5.5rem + env(safe-area-inset-bottom,0px));z-index:20;display:grid;gap:.65rem;width:min(calc(100vw - 2rem),420px);transform:translate(-50%);pointer-events:none}.pwa-toast{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:.75rem 1rem;border-radius:20px;color:var(--text);background:color-mix(in srgb,var(--surface-strong) 92%,var(--bg) 8%);pointer-events:auto}.pwa-toast--action{justify-content:space-between}.pwa-toast__action{min-height:36px;padding:.1rem .35rem;color:var(--primary);font-weight:700}.reset-modal{display:grid;gap:.25rem}.fab-button{position:fixed;right:1rem;bottom:1rem;min-width:120px;padding:.95rem 1.25rem;background:linear-gradient(135deg,var(--primary),var(--primary-strong));color:#fff;box-shadow:0 16px 36px #24665447;font-weight:700}.modal-backdrop{position:fixed;inset:0;display:grid;align-items:end;padding:1rem;background:#07120f70}.modal-card{width:min(100%,720px);margin:0 auto}.modal-header,.action-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.add-child-modal,.child-switcher,.reset-modal{display:grid;gap:1rem}.action-row{justify-content:flex-end;flex-wrap:wrap}.child-switcher__header{align-items:flex-start}.child-switcher__body{display:grid;gap:1rem}.child-switcher__list{display:grid;gap:.75rem;margin:0;padding:0;list-style:none}.child-switcher__item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.75rem;align-items:center}.child-switcher__row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;width:100%;padding:.95rem 1rem;border:1px solid var(--border);border-radius:20px;background:var(--surface-strong);color:inherit;text-align:left;transition:border-color .18s ease,transform .18s ease,background .18s ease}.child-switcher__row:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--primary) 30%,var(--border) 70%)}.child-switcher__row:disabled,.child-switcher__delete:disabled{cursor:not-allowed;opacity:.6}.child-switcher__row:disabled:hover,.child-switcher__delete:disabled:hover{transform:none}.child-switcher__row-main,.child-switcher__row-side{display:grid;gap:.25rem}.child-switcher__row-side{justify-items:end;flex-shrink:0}.child-switcher__name{font-weight:700}.child-switcher__meta,.child-switcher__current{color:var(--muted)}.child-switcher__check{color:var(--primary);font-weight:700}.child-switcher__delete{width:40px;min-width:40px;min-height:40px;padding:0;border:1px solid var(--border);border-radius:999px;background:transparent;color:var(--muted);font-size:1.25rem;line-height:1}.child-switcher__add{justify-self:stretch}@media(min-width:640px){.app-shell{padding-top:1.5rem}.dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.modal-backdrop{align-items:center}.fab-button{right:max(1rem,calc((100vw - 720px)/2))}}@media(max-width:420px){.measurement-list__row{grid-template-columns:minmax(0,1fr)}.measurement-list__actions,.measurement-list__confirm{justify-content:flex-start}}
