@font-face{font-family:Figtree;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/figtree-latin-ext-400-normal-CXAzuTZb.woff2)format("woff2"),url(/assets/figtree-latin-ext-400-normal-Gbh-3PTk.woff)format("woff");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:Figtree;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/figtree-latin-400-normal-g7Dtegnw.woff2)format("woff2"),url(/assets/figtree-latin-400-normal-BD4aNku5.woff)format("woff");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}@font-face{font-family:Figtree;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/figtree-latin-ext-600-normal-DJlfifZj.woff2)format("woff2"),url(/assets/figtree-latin-ext-600-normal-CQqsimlV.woff)format("woff");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:Figtree;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/figtree-latin-600-normal-Cv_xCTDl.woff2)format("woff2"),url(/assets/figtree-latin-600-normal-BM_oTo4n.woff)format("woff");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}@font-face{font-family:Figtree;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/figtree-latin-ext-700-normal-CS4sQkGV.woff2)format("woff2"),url(/assets/figtree-latin-ext-700-normal-BoDi4KL2.woff)format("woff");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:Figtree;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/figtree-latin-700-normal-th6qEP7c.woff2)format("woff2"),url(/assets/figtree-latin-700-normal-BCCt2T1q.woff)format("woff");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{--color-bg:#f5ead8;--color-surface:#ebddc5;--color-text:#201e1d;--color-accent:#c67139;--color-accent-2:#7a8a5e;--color-divider:#201e1d29;--color-neutral-100:#f9f4ed;--color-neutral-200:#eee7db;--color-neutral-300:#dcd3c4;--color-neutral-400:#c0b6a5;--color-neutral-500:#a19786;--color-neutral-600:#82796a;--color-neutral-700:#645c50;--color-neutral-800:#474238;--color-neutral-900:#2e2b25;--color-accent-100:#fff2eb;--color-accent-200:#ffe1d0;--color-accent-300:#ffc6a5;--color-accent-400:#f6a06b;--color-accent-500:#d67f48;--color-accent-600:#b2622d;--color-accent-700:#8c491a;--color-accent-800:#643312;--color-accent-900:#402310;--color-accent-2-100:#f0fae1;--color-accent-2-200:#e1eecc;--color-accent-2-300:#ccdbb2;--color-accent-2-400:#aebf92;--color-accent-2-500:#8fa073;--color-accent-2-600:#728157;--color-accent-2-700:#56633f;--color-accent-2-800:#3d472b;--color-accent-2-900:#272e1b;--font-heading:"Figtree", system-ui, sans-serif;--font-heading-weight:700;--font-body:"Figtree", system-ui, sans-serif;--space-1:4.4px;--space-2:8.8px;--space-3:13.2px;--space-4:17.6px;--space-6:26.4px;--space-8:35.2px;--radius-sm:8px;--radius-md:16px;--radius-lg:28px;--shadow-sm:0 1px 2px #2e2b2524;--shadow-md:0 3px 10px #2e2b2529;--shadow-lg:0 12px 32px #2e2b2538}.night{--color-bg:#211b13;--color-surface:#2f2820;--color-text:#f3ead9;--color-divider:#f3ead92e;--color-accent:#d67f48;--color-accent-100:#402310;--color-accent-800:#ffc6a5;--color-accent-2-100:#272e1b;--color-accent-2-800:#ccdbb2;--color-neutral-100:#2e2b25;--color-neutral-200:#3a352c;--color-neutral-800:#dcd3c4;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html{background:var(--color-bg)}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-body)}h1,h2,h3,h4{font-family:var(--font-heading);font-weight:var(--font-heading-weight)}.washed{filter:saturate(.6)contrast(.85)brightness(1.1)opacity(.94)}*,:before,:after{box-sizing:border-box}body{margin:0;font-size:15px;font-weight:400;line-height:1.55}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:var(--font-heading-weight);letter-spacing:-.015em;margin:0 0 var(--space-2);line-height:1.12}h1{font-size:42px}h2{font-size:32px}h3{font-size:25px}h4{font-size:20px}h5{font-size:16px}h6{letter-spacing:.08em;text-transform:uppercase;font-size:13px}p{margin:0 0 var(--space-3)}a{color:var(--color-accent);text-underline-offset:3px}a:hover{color:var(--color-accent-600)}img{max-width:100%;display:block}figure{margin:0}figcaption{margin-top:var(--space-1);color:color-mix(in srgb, var(--color-text) 55%, transparent);font-size:11px}.text-muted{color:color-mix(in srgb, var(--color-text) 55%, transparent)}:focus{outline:none}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}::selection{background:color-mix(in srgb, var(--color-accent) 30%, transparent)}.hr{height:1px;margin:var(--space-4) 0;background:var(--color-divider);border:0}.btn{cursor:pointer;font-family:var(--font-heading);color:var(--color-text);padding:var(--space-2) calc(var(--space-3) * 1.2);border-radius:var(--radius-md);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;gap:6px;font-size:14px;font-weight:600;line-height:1.2;text-decoration:none;display:inline-flex}.btn svg{display:block}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--color-accent);color:var(--color-bg)}.btn-primary:hover{background:var(--color-accent-600)}.btn-primary:active{background:var(--color-accent-700)}.btn-secondary{border-color:var(--color-divider)}.btn-secondary:hover{background:color-mix(in srgb, var(--color-text) 7%, transparent)}.btn-secondary:active{background:color-mix(in srgb, var(--color-text) 14%, transparent)}.btn-ghost{color:var(--color-accent);padding-inline:var(--space-1)}.btn-ghost:hover{background:color-mix(in srgb, var(--color-accent) 10%, transparent)}.btn-ghost:active{background:color-mix(in srgb, var(--color-accent) 18%, transparent)}.btn-icon{width:36px;height:36px;padding:0}.btn-block{width:100%;margin-top:var(--space-2)}.field>label{color:color-mix(in srgb, var(--color-text) 70%, transparent);margin-bottom:5px;font-size:12px;display:block}.input{width:100%;min-height:36px;font:inherit;color:var(--color-text);caret-color:var(--color-accent);background:var(--color-surface);border:1px solid var(--color-divider);border-radius:var(--radius-md);padding:6px 10px;font-size:14px}.input:hover{border-color:color-mix(in srgb, var(--color-text) 45%, transparent)}.input:focus-visible{border-color:var(--color-accent);outline-offset:0}textarea.input{resize:vertical;min-height:90px}.radio{cursor:pointer;align-items:center;gap:8px;font-size:14px;display:inline-flex}.radio input,.seg-opt input{opacity:0;pointer-events:none;width:0;height:0;position:absolute}.radio .dot{border:1.5px solid var(--color-divider);border-radius:50%;flex:none;width:16px;height:16px}.radio:hover .dot{border-color:var(--color-accent)}.radio input:checked+.dot{border-color:var(--color-accent);background:var(--color-accent);box-shadow:inset 0 0 0 4px var(--color-bg)}.radio input:focus-visible+.dot{outline:2px solid var(--color-accent);outline-offset:2px}.seg{border:1px solid var(--color-divider);border-radius:var(--radius-md);display:inline-flex;overflow:hidden}.seg-opt{cursor:pointer;align-items:center;gap:6px;padding:7px 12px;font-size:13px;display:inline-flex}.seg-opt+.seg-opt{border-left:1px solid var(--color-divider)}.seg-opt:has(input:checked){background:var(--color-accent);color:var(--color-bg)}.seg-opt:not(:has(input:checked)):hover{background:color-mix(in srgb, var(--color-text) 7%, transparent)}.seg-opt:has(input:focus-visible){outline:2px solid var(--color-accent);outline-offset:-2px}.card{gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-surface);flex-direction:column;display:flex}.card-kicker{letter-spacing:.1em;text-transform:uppercase;color:var(--color-accent);font-size:10px}.card-title{font-family:var(--font-heading);font-weight:var(--font-heading-weight);font-size:17px;line-height:1.2}.card-body{opacity:.8;flex:1;margin:0;font-size:13px}.card-meta{color:color-mix(in srgb, var(--color-text) 50%, transparent);align-items:center;gap:6px;font-size:11px;display:flex}.elev-sm{box-shadow:var(--shadow-sm)}.elev-md{box-shadow:var(--shadow-md)}.elev-lg{box-shadow:var(--shadow-lg)}.tag{letter-spacing:.02em;border-radius:calc(var(--radius-md) * .75);align-items:center;padding:3px 10px;font-size:11px;display:inline-flex}.tag-accent{background:var(--color-accent-100);color:var(--color-accent-800)}.tag-accent-2{background:var(--color-accent-2-100);color:var(--color-accent-2-800)}.tag-neutral{background:var(--color-neutral-100);color:var(--color-neutral-800)}.tag-outline{border:1px solid var(--color-accent);color:var(--color-accent)}.table{border-collapse:collapse;width:100%;font-size:14px}.table th{text-align:left;letter-spacing:.08em;text-transform:uppercase;color:color-mix(in srgb, var(--color-text) 60%, transparent);padding:var(--space-2);border-bottom:1px solid var(--color-divider);font-size:11px}.table td{padding:var(--space-2);border-bottom:1px solid color-mix(in srgb, var(--color-text) 8%, transparent)}.table tbody tr:hover{background:color-mix(in srgb, var(--color-text) 4%, transparent)}.dialog-backdrop{padding:var(--space-4);background:color-mix(in srgb, var(--color-neutral-900) 50%, transparent);place-items:center;display:grid;position:fixed;inset:0}.dialog{gap:var(--space-3);width:min(440px,100%);padding:var(--space-4);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-lg);flex-direction:column;display:flex}.dialog-title{font-family:var(--font-heading);font-weight:var(--font-heading-weight);font-size:20px}.dialog-body{opacity:.85;font-size:14px}.dialog-actions{justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-2);display:flex}.card{padding:var(--space-4);border-radius:20px}.dialog{border-radius:24px}.btn,.tag,.seg,.input{border-radius:999px}.input{min-width:0;max-width:100%;padding-inline:14px}@keyframes sproutPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.55;transform:scale(.8)}}@keyframes sproutRise{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.app{min-height:100vh;background:var(--color-bg);min-height:100dvh;color:var(--color-text);font-family:var(--font-body)}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}*{touch-action:manipulation}button,label,.tile,.row,.chip,.seg-opt,.pill,.nav-tab,.baby-chip,.dialog-title,.card-kicker,.tile-label{-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}@media (max-width:719px),(pointer:coarse){input,select,textarea,.input{font-size:16px}.input{min-height:44px}.seg-opt{min-height:40px;padding-block:9px}.btn{min-height:40px}.btn-icon{min-height:36px}}.muted{color:color-mix(in srgb, var(--color-text) 55%, transparent)}.muted-50{color:color-mix(in srgb, var(--color-text) 50%, transparent)}.small{font-size:13px}.tiny{font-size:12px}.flex{align-items:center;gap:var(--space-2);display:flex}.wrap{flex-wrap:wrap}.grow{flex:1}.right{margin-left:auto}.stack{gap:var(--space-3);flex-direction:column;display:flex}.reset-btn{font:inherit;color:inherit;cursor:pointer;text-align:left;background:0 0;border:none;padding:0}.error{color:var(--color-accent-700);margin:0;font-size:13px}.night .error{color:var(--color-accent-300)}.helper{color:color-mix(in srgb, var(--color-text) 60%, transparent);margin:0;font-size:13px}.app-header{z-index:20;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-4);background:color-mix(in srgb, var(--color-bg) 88%, transparent);-webkit-backdrop-filter:blur(8px);display:flex;position:sticky;top:0}.brand{color:inherit;align-items:center;gap:10px;margin-right:auto;text-decoration:none;display:flex}.brand-mark{background:var(--color-accent-2-500);width:34px;height:34px;color:var(--color-bg);border-radius:50%;flex:none;place-items:center;display:grid}.brand-name{font-family:var(--font-heading);font-weight:var(--font-heading-weight);font-size:20px}.nav-desk{gap:4px;display:flex}.nav-tab{cursor:pointer;font-family:var(--font-body);color:inherit;background:0 0;border:none;border-radius:999px;padding:8px 16px;font-size:14px;font-weight:600}.nav-tab:hover{background:color-mix(in srgb, var(--color-text) 8%, transparent)}.nav-tab.active{background:var(--color-surface);color:var(--color-accent-700)}.night .nav-tab.active{color:var(--color-accent-300)}.baby-chip{background:var(--color-surface);cursor:pointer;font-family:var(--font-body);color:inherit;border:none;border-radius:999px;align-items:center;gap:8px;padding:4px 12px 4px 4px;display:flex}.baby-chip:hover{box-shadow:var(--shadow-sm)}.baby-chip-text{white-space:nowrap;font-size:13px;font-weight:600}.avatar{background:var(--color-accent-300);color:var(--color-accent-800);border-radius:50%;flex:none;place-items:center;font-weight:700;display:grid}.avatar-sm{width:28px;height:28px;font-size:12px}.avatar-user{background:var(--color-accent-2-200);color:var(--color-accent-2-800)}.avatar-lg{width:56px;height:56px;font-family:var(--font-heading);font-weight:var(--font-heading-weight);font-size:22px}.app-main{max-width:1060px;padding:var(--space-4) var(--space-4) var(--space-8);margin:0 auto}.screen{animation:.18s ease-out sproutRise}.nav-mob{z-index:30;background:var(--color-surface);box-shadow:var(--shadow-lg);left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));border-radius:999px;justify-content:space-around;padding:8px;display:flex;position:fixed}.nav-mob button{cursor:pointer;font-family:var(--font-body);color:inherit;background:0 0;border:none;border-radius:999px;min-height:44px;padding:9px 13px;font-size:12px;font-weight:600}.nav-mob button.active{background:var(--color-accent);color:var(--color-bg)}@media (max-width:719px){.desk-only{display:none!important}.app-main{padding-bottom:calc(110px + env(safe-area-inset-bottom,0px))!important}.app-header{gap:var(--space-2)!important;padding:calc(var(--space-2) + env(safe-area-inset-top,0px)) var(--space-3) var(--space-2)!important}.baby-chip-text{text-overflow:ellipsis;max-width:120px;overflow:hidden}}@media (min-width:720px){.mob-only{display:none!important}}.date-line{color:color-mix(in srgb, var(--color-text) 55%, transparent);margin:0;font-size:13px}.greeting{margin:2px 0 var(--space-4);font-size:34px}.page-title{margin-bottom:var(--space-4);font-size:30px}.banner{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-accent-2-100);color:var(--color-accent-2-800);margin-bottom:var(--space-3);border-radius:999px;flex-wrap:wrap;display:flex}.banner strong{font-size:14px}.banner .banner-sub{opacity:.8;font-size:13px}.banner .btn{margin-left:auto}.banner .btn-secondary{color:inherit;border-color:color-mix(in srgb, currentColor 30%, transparent)}.banner-warm{background:var(--color-accent-100);color:var(--color-accent-800)}.pulse{background:var(--color-accent-2-600);border-radius:50%;flex:none;width:10px;height:10px;animation:2s ease-in-out infinite sproutPulse}.banner-warm .pulse{background:var(--color-accent-500);animation:none}@media (max-width:719px){.banner{border-radius:20px;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"dot title action""dot sub action";align-items:center;gap:1px 10px;padding:11px 12px 11px 14px;display:grid}.banner .pulse{grid-area:dot}.banner strong{grid-area:title;line-height:1.25}.banner .banner-sub{grid-area:sub;line-height:1.3}.banner .btn{white-space:nowrap;grid-area:action;align-self:center;width:auto;min-height:36px;margin-left:0;padding-inline:13px}.banner.reset-btn{text-align:left}}.tiles{gap:var(--space-3);margin-bottom:var(--space-6);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));display:grid}.tile{padding:var(--space-4);cursor:pointer;background:var(--color-surface);color:var(--color-text);font-family:var(--font-body);text-align:left;border:none;border-radius:20px;flex-direction:column;align-items:flex-start;gap:10px;min-height:118px;transition:box-shadow .15s,transform .1s;display:flex}.tile:hover{box-shadow:var(--shadow-md)}.tile:active{transform:scale(.98)}.tile-icon{border-radius:50%;place-items:center;width:40px;height:40px;display:grid}.tile-label{font-family:var(--font-heading);font-size:17px;font-weight:600}.tile-sub{color:color-mix(in srgb, var(--color-text) 55%, transparent);font-size:12px}.stats{gap:var(--space-3);margin-bottom:var(--space-6);grid-template-columns:repeat(auto-fit,minmax(140px,1fr));display:grid}.kpis{gap:var(--space-3);margin-bottom:var(--space-6);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));display:grid}.stat-value{font-family:var(--font-heading);font-weight:var(--font-heading-weight);letter-spacing:-.01em;font-size:24px}.section-head{align-items:baseline;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.section-head h4{margin:0}.rows{flex-direction:column;gap:2px;display:flex}.row{align-items:center;gap:var(--space-3);padding:10px var(--space-3);border-radius:var(--radius-md);cursor:pointer;width:100%;font-family:var(--font-body);color:inherit;text-align:left;background:0 0;border:none;flex-wrap:wrap;min-height:44px;display:flex}.row:hover{background:color-mix(in srgb, var(--color-text) 4%, transparent)}.row-dot{border-radius:50%;flex:none;width:9px;height:9px}.row-time{min-width:76px;font-size:14px;font-weight:600}.row-title{font-size:14px}.row-meta{color:color-mix(in srgb, var(--color-text) 50%, transparent);margin-left:auto;font-size:12px}.empty{padding:var(--space-4);background:color-mix(in srgb, var(--color-surface) 60%, transparent);color:color-mix(in srgb, var(--color-text) 60%, transparent);border-radius:20px;font-size:13px}.charts{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(300px,1fr));display:grid}.chart-card{gap:var(--space-3)}.chart-bars{align-items:flex-end;gap:10px;height:130px;display:flex}.bar-col{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:6px;height:100%;display:flex}.bar-val{color:color-mix(in srgb, var(--color-text) 55%, transparent);white-space:nowrap;font-size:10px}.bar-val-strong{color:var(--color-text);font-weight:600}.bar{background:var(--color-accent-300);border-radius:9px 9px 4px 4px;width:100%;max-width:28px;transition:height .3s}.bar-today{background:var(--color-accent-500)}.bar-empty{border-top:2px dotted var(--color-neutral-400);background:0 0;border-radius:0;height:0!important}.bar-lbl{font-size:11px;font-weight:600}.bar-lbl-today{color:var(--color-accent-700)}.night .bar-lbl-today{color:var(--color-accent-300)}.intake{flex-direction:column;display:flex}.intake-plot{align-items:flex-end;gap:10px;height:118px;display:flex;position:relative}.intake-col{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:5px;min-width:0;height:100%;display:flex}.intake-days{gap:10px;margin-top:6px;display:flex}.intake-days .bar-lbl{text-align:center;flex:1}.guide-line{border-top:1.5px dashed color-mix(in srgb, var(--color-text) 28%, transparent);pointer-events:none;position:absolute;left:0;right:0}.guide-label{color:color-mix(in srgb, var(--color-text) 55%, transparent);white-space:nowrap;font-size:10px;line-height:1;position:absolute;bottom:2px;left:0}.bar-lbl-muted{color:color-mix(in srgb, var(--color-text) 55%, transparent);font-size:10px}.rhythm{flex-direction:column;gap:7px;display:flex}.rhythm-row{align-items:center;gap:10px;display:flex}.rhythm-lbl{flex:none;width:32px;font-size:11px;font-weight:600}.track{background:var(--color-neutral-200);border-radius:999px;flex:1;height:14px;position:relative;overflow:hidden}.track-block{background:var(--color-accent-2-500);border-radius:999px;position:absolute;top:2px;bottom:2px}.rhythm-total{text-align:right;width:38px;color:color-mix(in srgb, var(--color-text) 55%, transparent);flex:none;font-size:11px}.axis{color:color-mix(in srgb, var(--color-text) 45%, transparent);justify-content:space-between;padding-left:42px;padding-right:48px;font-size:10px;display:flex}.dots-rows{flex-direction:column;gap:9px;display:flex}.dots{flex-wrap:wrap;gap:4px;display:flex}.dot-11{border-radius:50%;width:11px;height:11px}.legend{gap:var(--space-3);color:color-mix(in srgb, var(--color-text) 60%, transparent);flex-wrap:wrap;font-size:11px;display:flex}.legend span{align-items:center;gap:5px;display:inline-flex}.legend-dot{border-radius:50%;width:10px;height:10px}.legend-band{border-radius:999px;width:14px;height:8px}.weight-bars{align-items:flex-end;gap:14px;height:110px;display:flex}.weight-bars .bar{background:var(--color-neutral-400);max-width:28px}.tl-head{align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.tl-head h1{flex:1;margin:0}.chips{margin-bottom:var(--space-4);flex-wrap:wrap;gap:8px;display:flex}.chips-tight{gap:7px;margin-bottom:0}.chip{cursor:pointer;font-family:var(--font-body);border:1px solid var(--color-divider);color:var(--color-text);background:0 0;border-radius:999px;min-height:34px;padding:6px 14px;font-size:13px}.chip:hover{background:color-mix(in srgb, var(--color-text) 7%, transparent)}.chip.on{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-bg)}.chip-divider{background:var(--color-divider);align-self:stretch;width:1px;margin:0 4px}.filter-strip{margin-bottom:var(--space-4);scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:8px;padding:2px 2px 4px;display:flex;overflow-x:auto}.filter-strip::-webkit-scrollbar{display:none}.filter-strip .chip{flex:none}.chip-dot{align-items:center;gap:7px;display:inline-flex}.chip-dot .dot{border-radius:50%;flex:none;width:8px;height:8px}.chip.on .dot{box-shadow:0 0 0 1.5px color-mix(in srgb, var(--color-bg) 85%, transparent)}@media (max-width:719px){.filter-strip .chip{min-height:34px;padding:5px 12px;font-size:13px}}.vis-head{justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.seg-compact .seg-opt{min-height:30px;padding:4px 10px;font-size:12px}.legend-filter{gap:4px}.legend-btn{cursor:pointer;min-height:30px;font:inherit;color:color-mix(in srgb, var(--color-text) 60%, transparent);background:0 0;border:1px solid #0000;border-radius:999px;align-items:center;gap:5px;padding:4px 10px;font-size:11px;display:inline-flex}.legend-btn:hover{background:color-mix(in srgb, var(--color-text) 6%, transparent)}.legend-btn.active{border-color:var(--color-accent);color:var(--color-text)}.legend-btn.dim{opacity:.45}.legend-reset{color:var(--color-accent)}.group{margin-bottom:var(--space-6)}.group-title{color:color-mix(in srgb, var(--color-text) 55%, transparent);margin-bottom:var(--space-3)}.vis-rows{flex-direction:column;gap:8px;display:flex}.vis-row{align-items:center;gap:10px;display:flex}.vis-lbl{text-align:right;flex:none;width:52px;font-size:11px;font-weight:600}.vis-track{background:var(--color-neutral-200);border-radius:999px;flex:1;height:17px;position:relative}.vis-band{background:var(--color-accent-2-400);border-radius:999px;position:absolute;top:3px;bottom:3px}.vis-dot{border:1.5px solid var(--color-bg);border-radius:50%;width:8px;height:8px;position:absolute;top:50%;transform:translate(-50%,-50%)}.vis-axis{padding-left:62px;padding-right:0}.sub{color:color-mix(in srgb, var(--color-text) 55%, transparent);margin-bottom:var(--space-4);font-size:13px}.insights{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));display:grid}.insight{gap:var(--space-2)}.mini-bars{align-items:flex-end;gap:5px;height:34px;display:flex}.mini-bar{border-radius:6px 6px 3px 3px;flex:1;max-width:22px}.disclaimer{margin-top:var(--space-4);color:color-mix(in srgb, var(--color-text) 50%, transparent);font-size:12px}.profile{max-width:640px}.profile .card{margin-bottom:var(--space-4)}.baby-card{align-items:center;gap:var(--space-3);flex-direction:row}.pref-row{align-items:center;gap:var(--space-3);flex-wrap:wrap;min-height:36px;display:flex}.pref-label{flex:1;min-width:140px;font-size:14px}.pref-hint{opacity:.6;font-size:12px}.checkbox{accent-color:var(--color-accent);cursor:pointer;width:18px;height:18px;margin:0}.pills{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.pill{cursor:pointer;font-family:var(--font-body);border:none;padding:6px 14px}.pill:hover{box-shadow:var(--shadow-sm)}.select{appearance:auto}.code-box{font-family:var(--font-heading);font-weight:var(--font-heading-weight);letter-spacing:.12em;text-align:center;padding:var(--space-3);background:var(--color-bg);border-radius:999px;font-size:28px}.link-box{word-break:break-all;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--color-bg);font-size:12px}.growth-list{flex-direction:column;gap:2px;display:flex}.onboarding{max-width:460px;margin:var(--space-8) auto 0;text-align:center}.ob-mark{width:72px;height:72px;margin:0 auto var(--space-4);background:var(--color-accent-2-200);color:var(--color-accent-2-700);border-radius:50%;place-items:center;display:grid}.onboarding h2{font-size:28px}.onboarding p{color:color-mix(in srgb, var(--color-text) 70%, transparent);font-size:15px}.ob-dots{margin:var(--space-4) 0;justify-content:center;gap:7px;display:flex}.ob-dot{background:var(--color-neutral-300);border-radius:50%;width:9px;height:9px}.ob-dot.on{background:var(--color-accent)}.ob-actions{justify-content:center;gap:var(--space-2);display:flex}.auth{max-width:440px;margin:var(--space-6) auto 0}.auth .card{gap:var(--space-3);padding:var(--space-4)}.auth h2{text-align:center;font-size:28px}.auth .lede{text-align:center;color:color-mix(in srgb, var(--color-text) 70%, transparent);font-size:14px}.auth-switch{text-align:center;margin-top:var(--space-3);font-size:13px}.setup{max-width:520px;margin:0 auto}.dialog-backdrop{z-index:40;overscroll-behavior:contain}.dialog-backdrop.sheet{align-items:flex-end}@media (max-width:719px){.dialog-backdrop.sheet{padding:0}.dialog-backdrop.sheet .dialog{padding-bottom:calc(var(--space-4) + env(safe-area-inset-bottom,0px));border-bottom-right-radius:0;border-bottom-left-radius:0}}.dialog{max-height:calc(100vh - 2 * var(--space-4));max-height:calc(100dvh - 2 * var(--space-4));overscroll-behavior:contain;-webkit-overflow-scrolling:touch;overflow:hidden auto}.dialog>*{min-width:0;max-width:100%}input[type=time],input[type=date]{appearance:none;width:100%;min-width:0}input::-webkit-date-and-time-value{text-align:left;min-height:1.3em}@media (max-width:719px){.dialog-backdrop.sheet .dialog{max-height:100dvh}}.dialog-head{align-items:center;gap:var(--space-2);display:flex}.dialog-head .dialog-title{flex:1}.dialog .field+.field{margin-top:0}.two-col{gap:var(--space-3);min-width:0;display:flex}.two-col>.field{flex:1 1 0;min-width:0}.select-input{appearance:auto}.toast{z-index:60;background:var(--color-neutral-900);color:var(--color-neutral-100);box-shadow:var(--shadow-lg);text-align:center;border-radius:999px;max-width:calc(100% - 32px);padding:10px 18px;font-size:13px;animation:.2s ease-out sproutRise;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}@media (max-width:719px){.toast{bottom:calc(88px + env(safe-area-inset-bottom,0px))}}.print-page{max-width:760px;margin:0 auto}.print-page h1{margin-bottom:4px;font-size:30px}.print-page .table td,.print-page .table th{padding:6px 8px;font-size:13px}.print-actions{gap:var(--space-2);margin-bottom:var(--space-4);display:flex}@media print{:root,.night{--color-bg:#fff;--color-surface:#f3f0ea;--color-text:#111;--color-divider:#ccc;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.app-header,.nav-mob,.no-print,.toast{display:none!important}.app-main{max-width:none;padding:0}.card{break-inside:avoid}body{font-size:12px}}.field>.field-label{color:color-mix(in srgb, var(--color-text) 70%, transparent);margin-bottom:5px;font-size:12px;display:block}.btn-danger{color:var(--color-accent-700)}.night .btn-danger{color:var(--color-accent-300)}.field-hint{color:color-mix(in srgb, var(--color-text) 55%, transparent);margin-top:4px;font-size:12px}.color-chip{align-items:center;gap:7px;display:inline-flex}.swatch{width:12px;height:12px;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--color-text) 25%, transparent);border-radius:50%;flex:none}.chip.on .swatch{box-shadow:inset 0 0 0 1.5px color-mix(in srgb, var(--color-bg) 80%, transparent)}.swatch-unknown{background:repeating-linear-gradient(45deg, transparent 0 2px, color-mix(in srgb, var(--color-text) 40%, transparent) 2px 3px)!important}.field-hint-warm{color:var(--color-accent-700)}.night .field-hint-warm{color:var(--color-accent-300)}
