:root{--bg: #f5efe4;--bg-raised: #fdf9f0;--bg-sunken: #ece4d4;--text: #33291e;--text-dim: #7d7264;--line: #e0d6c3;--accent: #b4552d;--accent-soft: #b4552d1f;--on-accent: #fdf9f0;--fever: #c22f21;--poop-1: #d9a441;--poop-2: #b98a3c;--poop-3: #8a6a33;--poop-4: #5f4a26;--sleep: #5a6d8c;--feed: #b4552d;--radius: 18px;--radius-sm: 12px;--shadow: 0 1px 3px rgb(51 41 30 / .08), 0 4px 16px rgb(51 41 30 / .06);--font: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI Variable", "Segoe UI", Roboto, "Helvetica Neue", sans-serif}[data-theme=night]{--bg: #16120d;--bg-raised: #201a13;--bg-sunken: #0f0c08;--text: #e6dccb;--text-dim: #97897a;--line: #322a20;--accent: #c76f45;--accent-soft: #c76f4526;--on-accent: #16120d;--fever: #d9553f;--sleep: #7b8dab;--feed: #c76f45;--shadow: 0 1px 3px rgb(0 0 0 / .4), 0 4px 16px rgb(0 0 0 / .3)}*{margin:0;padding:0;box-sizing:border-box}html{height:100%}body{height:100%;font-family:var(--font);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overscroll-behavior-y:none;transition:background .6s ease,color .6s ease}#app{max-width:480px;margin:0 auto;height:100dvh;display:flex;flex-direction:column;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);overflow:hidden}button{font-family:inherit;font-size:inherit;color:inherit;background:none;border:none;cursor:pointer;touch-action:manipulation}input,select{font-family:inherit;font-size:inherit;color:var(--text);background:var(--bg-raised);border:1.5px solid var(--line);border-radius:var(--radius-sm);padding:14px 16px;width:100%;outline:none}input:focus{border-color:var(--accent)}input::placeholder{color:var(--text-dim)}.numeral{font-variant-numeric:tabular-nums;font-weight:650;letter-spacing:-.02em}.btn-primary{display:block;width:100%;padding:16px;border-radius:var(--radius);background:var(--accent);color:var(--on-accent);font-size:17px;font-weight:600;transition:transform .15s ease,opacity .2s}.btn-primary:active{transform:scale(.98)}.btn-primary:disabled{opacity:.45}.btn-ghost{display:block;width:100%;padding:14px;border-radius:var(--radius);color:var(--text-dim);font-size:15px}.card{background:var(--bg-raised);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.screen{flex:1;min-height:0;display:flex;flex-direction:column;padding:24px 20px;overflow-y:auto;animation:settle .35s ease both}@keyframes settle{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#140f0873;z-index:40;animation:fade .25s ease both}@keyframes fade{0%{opacity:0}to{opacity:1}}.sheet{position:fixed;left:50%;transform:translate(-50%);bottom:0;width:100%;max-width:480px;background:var(--bg-raised);border-radius:var(--radius) var(--radius) 0 0;padding:12px 20px calc(20px + env(safe-area-inset-bottom));z-index:50;animation:sheet-up .3s cubic-bezier(.2,.9,.3,1) both;display:flex;flex-direction:column;gap:16px;max-height:88dvh;overflow-y:auto}@keyframes sheet-up{0%{transform:translate(-50%,100%)}to{transform:translate(-50%)}}.sheet-handle{width:36px;height:4px;border-radius:2px;background:var(--line);margin:0 auto}.sheet-title{font-size:19px;font-weight:650;text-align:center}.time-adjust{display:flex;flex-direction:column;gap:10px}.time-adjust-value{font-size:30px;text-align:center;background:var(--bg-sunken);border:none;border-radius:var(--radius-sm);padding:10px;font-variant-numeric:tabular-nums;font-weight:650;color:var(--text);width:100%}.time-chips{display:flex;gap:8px}.time-chip{flex:1;padding:12px 0;border-radius:var(--radius-sm);border:1.5px solid var(--line);background:var(--bg-raised);font-size:15px;font-variant-numeric:tabular-nums;color:var(--text-dim)}.time-chip.active{border-color:var(--accent);background:var(--accent-soft);color:var(--text)}.save-check{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;z-index:60;pointer-events:none}.save-check svg{width:72px;height:72px}.save-check circle{fill:var(--bg-raised);stroke:var(--accent);stroke-width:2;opacity:.95}.save-check path{stroke:var(--accent);stroke-width:3;fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:40;stroke-dashoffset:40;animation:draw-check .35s .05s ease-out forwards}@keyframes draw-check{to{stroke-dashoffset:0}}.save-check-wrap{animation:check-settle .8s ease both}@keyframes check-settle{0%{opacity:0;transform:scale(.85)}20%{opacity:1;transform:scale(1)}75%{opacity:1}to{opacity:0;transform:scale(1)}}
