@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/nunito-cyrillic-ext-400-normal-CuPM9foi.woff2)format("woff2"),url(/assets/nunito-cyrillic-ext-400-normal-xaE7D4Sw.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/nunito-cyrillic-400-normal-xAOo5cBP.woff2)format("woff2"),url(/assets/nunito-cyrillic-400-normal-D1j0u8EH.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/nunito-vietnamese-400-normal-BHkVbP3T.woff2)format("woff2"),url(/assets/nunito-vietnamese-400-normal-DtOtW02z.woff)format("woff");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:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/nunito-latin-ext-400-normal-i-8OOpdj.woff2)format("woff2"),url(/assets/nunito-latin-ext-400-normal-CjMJVfGn.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:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/nunito-latin-400-normal-r8SDr6Up.woff2)format("woff2"),url(/assets/nunito-latin-400-normal-DKg4f3fz.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:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/nunito-cyrillic-ext-600-normal-CWPPjBOD.woff2)format("woff2"),url(/assets/nunito-cyrillic-ext-600-normal-vnfu4DTE.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/nunito-cyrillic-600-normal-DJGQ2h05.woff2)format("woff2"),url(/assets/nunito-cyrillic-600-normal-BUjmtIuu.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/nunito-vietnamese-600-normal-BY8O6Cug.woff2)format("woff2"),url(/assets/nunito-vietnamese-600-normal-DO1RqFw5.woff)format("woff");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:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/nunito-latin-ext-600-normal-Dd9Zuxh1.woff2)format("woff2"),url(/assets/nunito-latin-ext-600-normal-BKUpuB78.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:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/nunito-latin-600-normal-Br8yIETf.woff2)format("woff2"),url(/assets/nunito-latin-600-normal-Cd0eNu1l.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:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-cyrillic-ext-700-normal-BuR0mlCG.woff2)format("woff2"),url(/assets/nunito-cyrillic-ext-700-normal-DfoqN4Gs.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-cyrillic-700-normal-DP36NgGt.woff2)format("woff2"),url(/assets/nunito-cyrillic-700-normal-DfHRUDv-.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-vietnamese-700-normal-Ch8EUCfz.woff2)format("woff2"),url(/assets/nunito-vietnamese-700-normal-C9SQsXvj.woff)format("woff");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:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-latin-ext-700-normal-BWeMsAzO.woff2)format("woff2"),url(/assets/nunito-latin-ext-700-normal-D4woHhbd.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:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-latin-700-normal-Dort48En.woff2)format("woff2"),url(/assets/nunito-latin-700-normal-OcDqTBcA.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:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-cyrillic-ext-800-normal-B-cvGohL.woff2)format("woff2"),url(/assets/nunito-cyrillic-ext-800-normal-pjRatrRO.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-cyrillic-800-normal-D3igD7Kl.woff2)format("woff2"),url(/assets/nunito-cyrillic-800-normal-DymMgApb.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-vietnamese-800-normal-D_CZYdm9.woff2)format("woff2"),url(/assets/nunito-vietnamese-800-normal-Dz0hZPb5.woff)format("woff");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:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-latin-ext-800-normal-CtU8tJOV.woff2)format("woff2"),url(/assets/nunito-latin-ext-800-normal-CDcxIxx8.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:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-latin-800-normal-Dz8SOQK_.woff2)format("woff2"),url(/assets/nunito-latin-800-normal-D-J0wlBY.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{--bg:#f7f7fc;--surface:#fff;--surface-2:#f1f1f8;--text:#43425a;--text-dim:#9695ae;--primary:#8e9ffb;--primary-ink:#fff;--primary-shadow:#8e9ffb66;--primary-soft:#eef0fe;--chart-1:#8e9ffb;--chart-2:#aeb8fc;--chart-3:#cdd3fd;--mint:#d9f3e8;--mint-ink:#3da585;--peach:#ffe2da;--peach-ink:#e2855f;--lilac:#ece2fb;--lilac-ink:#8d68cf;--sun:#ffeec2;--sun-ink:#cc9a32;--accent-soft:#fde7e0;--accent-ink:#d07a55;--danger:#ef8c8c;--border:#ececf4;--radius:22px;--radius-sm:16px;--radius-pill:999px;--shadow:0 8px 22px #7878b41f;--shadow-sm:0 3px 10px #7878b41a;--appbar-h:56px;--tabbar-h:66px;--sans:"Nunito", system-ui, -apple-system, sans-serif;font:400 17px/1.5 var(--sans);color:var(--text);background:var(--bg);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility}*{box-sizing:border-box}html,body{background:var(--bg);margin:0}body{justify-content:center;min-height:100svh;display:flex}#root{background:var(--bg);width:100%;max-width:480px;min-height:100svh;position:relative}h1{color:var(--text);letter-spacing:-.2px;margin:0 0 .5rem;font-size:1.5rem;font-weight:800}h2{color:var(--text);margin:0 0 .6rem;font-size:1.1rem;font-weight:800}p{margin:.35rem 0}a{color:var(--lilac-ink)}b{font-weight:800}.appbar{width:100%;max-width:480px;height:var(--appbar-h);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);z-index:10;background:#f7f7fcd9;align-items:center;gap:.5rem;padding:0 1.1rem;display:flex;position:fixed;top:0;left:50%;transform:translate(-50%)}.appbar__mark{color:var(--primary);display:inline-flex}.appbar__name{letter-spacing:.2px;color:var(--text);font-size:1.05rem;font-weight:800}main{padding:calc(var(--appbar-h) + 1rem) 1rem calc(var(--tabbar-h) + 1.25rem + env(safe-area-inset-bottom,0px));display:block}.tabbar{width:100%;max-width:480px;height:calc(var(--tabbar-h) + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px);background:var(--surface);border-top:1px solid var(--border);z-index:10;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 -4px 18px #7878b412}.tabbar button{cursor:pointer;color:var(--text-dim);background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;min-height:0;padding:0;font-family:inherit;font-size:.72rem;font-weight:700;display:flex}.tabbar button svg{width:23px;height:23px}.tabbar button[aria-current=page]{color:var(--primary)}button{cursor:pointer;border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--surface);color:var(--text);min-height:44px;padding:.6rem 1rem;font-family:inherit;font-size:1rem;font-weight:700;transition:transform 60ms,box-shadow .15s,background .15s}button:active{transform:scale(.97)}button:disabled{opacity:.5;cursor:not-allowed}button.primary,.big-tap,button[type=submit]{width:100%;color:var(--primary-ink);border-radius:var(--radius);box-shadow:0 8px 18px var(--primary-shadow);background:linear-gradient(135deg,#9aa9fc,#8e9ffb);border:none;justify-content:center;align-items:center;gap:.5rem;margin:.5rem 0;padding:1rem;font-size:1.1rem;font-weight:800;display:flex}button.primary svg,.big-tap svg{width:21px;height:21px}.action-pair{gap:.6rem;margin-top:.2rem;display:flex}.action-pair .big-tap{margin:0}.btn-soft{border:1.5px solid color-mix(in srgb, currentColor 38%, transparent);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.35rem;padding:.9rem .5rem;font-size:.95rem;font-weight:800;display:flex}.btn-soft svg{width:24px;height:24px}.btn-soft--wakes{background:var(--lilac);color:var(--lilac-ink)}.btn-soft--feed{background:var(--peach);color:var(--peach-ink)}.btn-soft--nap{background:var(--mint);color:var(--mint-ink)}.nap-start{width:100%}.nap-progress{background:var(--mint);color:var(--mint-ink);border:1.5px solid color-mix(in srgb, var(--mint-ink) 38%, transparent);border-radius:var(--radius);box-shadow:var(--shadow-sm);flex-wrap:wrap;align-items:center;gap:.6rem;padding:.9rem 1rem;display:flex}.nap-progress__label{color:var(--mint-ink);align-items:center;gap:.4rem;font-weight:800;display:inline-flex}.nap-progress__timer{color:var(--mint-ink);margin-left:auto;font-size:1.5rem;font-weight:800}.nap-progress .primary{flex-basis:100%;margin:.3rem 0 0}label{color:var(--text-dim);margin:.6rem 0 .25rem;font-size:.85rem;font-weight:700;display:block}input,select{color:var(--text);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;max-width:100%;min-height:46px;padding:.65rem .75rem;font-family:inherit;font-size:1rem;font-weight:600}input:not([type=radio]){appearance:none}input:focus,select:focus{outline:2px solid var(--primary);outline-offset:1px}input[type=radio]{width:auto;min-height:0;accent-color:var(--primary);margin-right:.4rem}fieldset{border:1px solid var(--border);border-radius:var(--radius-sm);margin:.6rem 0;padding:.5rem .8rem}legend{color:var(--text-dim);padding:0 .4rem;font-size:.85rem;font-weight:700}fieldset label{color:var(--text);align-items:center;margin:.3rem 1rem .3rem 0;display:inline-flex}.row,.panel,.day-card,.totals,.baby-form,.master-plan,.weaning,.training,.add,.popin,.sync,.hero{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);margin:.7rem 0;padding:.95rem 1.05rem}.now .clock{text-align:center;color:var(--text-dim);margin-bottom:.75rem;font-size:.9rem;font-weight:700}.hero{text-align:center;padding:1.6rem 1rem 1.4rem}.sleep-ring{width:124px;height:124px;box-shadow:0 0 0 9px var(--ring-halo,var(--primary-soft)), 0 12px 26px #7878b424;background:radial-gradient(circle at 50% 40%, var(--ring-glow,#8e9ffb4d), transparent 70%), var(--ring-bg,var(--primary-soft));border-radius:50%;place-items:center;margin:0 auto .9rem;display:grid}.sleep-ring svg{width:48px;height:48px;color:var(--ring-ink,var(--primary))}.sleep-ring--asleep{--ring-bg:#eef0fe;--ring-glow:#8e9ffb52;--ring-halo:#f1f2fe;--ring-ink:#8e9ffb}.sleep-ring--settling{--ring-bg:#ece2fb;--ring-glow:#8d68cf47;--ring-halo:#f2ecfc;--ring-ink:#8d68cf}.sleep-ring--awake{--ring-bg:#fff3d4;--ring-glow:#cc9a324d;--ring-halo:#fff7e3;--ring-ink:#d8a943}.now h1{text-align:center;margin:.1rem 0 .15rem;font-size:1.9rem}.hero .substate{color:var(--text-dim);font-size:.95rem;font-weight:700}.nudge{background:var(--accent-soft);color:var(--accent-ink);border-radius:var(--radius-pill);margin-top:.85rem;padding:.45rem .9rem;font-size:.9rem;font-weight:800;display:inline-block}.now section{margin:.5rem 0}.disclaimer{background:var(--sun);color:var(--sun-ink);border-radius:var(--radius-sm);text-align:center;border:none;margin:.6rem 0;padding:.75rem .9rem;font-size:.92rem;font-weight:700}.history__list{flex-direction:column;gap:.75rem;display:flex}.day-card{text-align:left;cursor:pointer;width:100%;display:block}.day-card__date{color:var(--primary);margin-bottom:.65rem;font-size:1.05rem;font-weight:800}.day-card__metrics{flex-direction:column;gap:.55rem;margin:0;padding:0;list-style:none;display:flex}.metric{align-items:center;gap:.7rem;display:flex}.metric__text{flex-direction:column;line-height:1.2;display:flex}.metric__label{color:var(--text-dim);font-size:.8rem;font-weight:700}.metric__value{color:var(--text);font-size:1.05rem;font-weight:800}.chip-dot{color:#fff;border-radius:9px;flex:none;place-items:center;width:26px;height:26px;display:grid}.chip-dot svg{width:15px;height:15px}.chip-dot--night{background:var(--primary)}.chip-dot--nap{background:var(--mint-ink)}.chip-dot--total{background:var(--lilac-ink)}.chip-dot--wake{background:var(--peach-ink)}.chip-dot--cry{background:var(--danger)}.chip-dot--long{background:var(--sun-ink)}.chip-dot--feed{background:var(--peach-ink)}.range-toggle{gap:.4rem;margin:.2rem 0 .8rem;display:flex}.range-toggle button{border-radius:var(--radius-pill);background:var(--surface);border:1px solid var(--border);min-height:38px;color:var(--text-dim);flex:1;padding:.4rem 0;font-size:.9rem;font-weight:800}.range-toggle button.active{background:var(--primary);color:var(--primary-ink);border-color:var(--primary)}.score-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);margin:.7rem 0;padding:.95rem 1.05rem}.score-card--hero{padding:1.1rem 1.15rem 1.3rem}.score-head{color:var(--text-dim);margin:0 0 .3rem;font-size:1.05rem;font-weight:700}.score-head b{color:var(--primary);font-size:2.4rem;font-weight:800}.score-sub{color:var(--text-dim);font-weight:700}.chart-tap{text-align:left;cursor:pointer;border-radius:var(--radius);background:0 0;border:none;width:100%;min-height:0;padding:0;display:block;position:relative}button.chart-tap.score-card--hero{border:1px solid var(--border)}.chart-tap__hint{text-align:center;color:var(--text-dim);margin-top:.2rem;font-size:.72rem;font-weight:700;display:block}.charts-grid{grid-template-columns:1fr 1fr;gap:.7rem;margin-top:.3rem;display:grid}.charts-grid .chart-tap{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);padding:.6rem .65rem}.charts-grid .trend{margin:0}.charts-grid .trend figcaption{font-size:.78rem}.charts-grid .trend svg{box-shadow:none;background:0 0;border:none}.chart-modal{z-index:50;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#43425a73;place-items:center;padding:1.2rem;animation:.18s pop;display:grid;position:fixed;inset:0}.chart-modal__panel{background:var(--surface);border-radius:var(--radius);width:100%;max-width:440px;padding:1.4rem 1.1rem 1rem;position:relative;box-shadow:0 20px 50px #00000040}.chart-modal__panel .trend figcaption{color:var(--text);margin-bottom:.5rem;font-size:1rem;font-weight:800}.chart-modal__close{background:var(--surface-2);width:36px;height:36px;min-height:0;color:var(--text-dim);border:none;border-radius:50%;place-items:center;padding:0;font-size:1rem;font-weight:800;display:grid;position:absolute;top:.6rem;right:.6rem}.trend{margin:.8rem 0}.trend figcaption{color:var(--text-dim);margin-bottom:.3rem;font-size:.85rem;font-weight:700}.trend svg{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm)}.day-detail .totals{grid-template-columns:1fr 1fr;gap:.3rem .8rem;font-weight:700;list-style:none;display:grid}.day-detail .totals b{color:var(--primary)}.row{flex-wrap:wrap;align-items:center;gap:.5rem;padding:.8rem .95rem;display:flex}.row>span{flex:1;min-width:50%;font-weight:700}.row.editing{flex-direction:column;align-items:stretch}.add__buttons{gap:.5rem;display:flex}.add__buttons button{flex:1}table{border-collapse:collapse;width:100%;margin-top:.5rem;font-size:.9rem}th,td{text-align:left;border-bottom:1px solid var(--border);padding:.45rem .35rem}th{color:var(--text-dim);font-weight:800}tr.tonight{background:var(--primary-soft)}tr.tonight td{color:var(--text);font-weight:800}.onboarding{padding:calc(var(--appbar-h) + 1rem) 1.25rem 2rem;text-align:center}.onboarding h1{font-size:1.9rem}[role=alert]{color:var(--danger);font-weight:700}.empty,.hint{color:var(--text-dim);text-align:center}.settings-hint{color:var(--mint-ink);margin:0 0 .5rem;font-size:.85rem;font-weight:700}.toast{top:calc(var(--appbar-h) + .5rem);z-index:5;background:var(--mint);color:var(--mint-ink);text-align:center;border-radius:var(--radius-pill);box-shadow:var(--shadow-sm);margin:0 0 .6rem;padding:.6rem 1rem;font-weight:800;animation:.25s pop;position:sticky}@keyframes pop{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.panel{animation:.18s slidein}@keyframes slidein{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}
