.install-hints{padding:16px;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--text)}.install-hints h2{margin:0 0 8px;font-size:16px;color:var(--text-muted)}.install-hints p{margin:0;font-size:14px;line-height:1.5}.settings{padding:16px 16px 88px;color:var(--text)}.settings__section{margin-bottom:24px;padding:16px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.settings__section h2{margin:0 0 12px;font-size:16px;color:var(--text-muted)}.settings__form{display:flex;flex-direction:column;gap:10px}.settings__form label{font-size:14px}.settings__form input[type=number],.settings__form input[type=text],.settings__form input[type=date]{padding:10px;font-size:16px;border:1px solid var(--border);border-radius:8px;background:var(--bg);color:var(--text)}.settings__sex{display:flex;gap:16px;border:none;padding:0;margin:0}.settings__form button,.settings__theme-btn{align-self:flex-start;padding:10px 16px;font-size:15px;border:none;border-radius:8px;background:var(--accent);color:var(--accent-text);cursor:pointer}.settings__quiet{border:0;padding:0;margin:0}.settings__quiet-range{display:flex;align-items:center;gap:8px}.settings__tz{color:var(--text-muted, #888);font-size:.85rem}.bottom-nav{position:fixed;left:0;right:0;bottom:0;display:flex;border-top:1px solid var(--border);background:var(--surface);padding-bottom:env(safe-area-inset-bottom,0);z-index:20}.bottom-nav__item{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 0;text-decoration:none;color:var(--text-muted);font-size:12px}.bottom-nav__item--active{color:var(--accent)}.bottom-nav__icon{font-size:20px;line-height:1}.app-shell{min-height:100vh;background:var(--bg);color:var(--text)}.app-loading{min-height:100vh;background:var(--bg)}:root,:root[data-theme=light]{color-scheme:light;--bg: #f6f7f9;--surface: #ffffff;--surface-2: #eef1f5;--text: #1a1d21;--text-muted: #5b6470;--border: #d8dde4;--accent: #3b82f6;--accent-text: #ffffff;--bottle: #f59e0b;--breast: #ec4899;--diaper: #10b981;--sleep: #6366f1;--danger: #ef4444;--shadow: 0 1px 3px rgba(0, 0, 0, .12)}:root[data-theme=dark]{color-scheme:dark;--bg: #14171c;--surface: #1e232b;--surface-2: #272d36;--text: #e7ebf0;--text-muted: #9aa4b1;--border: #333b45;--accent: #60a5fa;--accent-text: #0b0e12;--bottle: #fbbf24;--breast: #f472b6;--diaper: #34d399;--sleep: #818cf8;--danger: #f87171;--shadow: 0 1px 3px rgba(0, 0, 0, .5)}:root[data-theme=night]{color-scheme:dark;--bg: #07090c;--surface: #0d1116;--surface-2: #141a21;--text: #b9c0c9;--text-muted: #6b7480;--border: #1e252e;--accent: #3f6ea5;--accent-text: #0a0c0f;--bottle: #b8842a;--breast: #b25579;--diaper: #2f7d63;--sleep: #545c9c;--danger: #b04f4f;--shadow: none}:root{--radius: 14px;--radius-sm: 10px;--nav-h: 60px;--page-max: 480px;--gap: 12px}.app-shell{min-height:100dvh}.home,.onboarding,.join,.settings,.charts{width:100%;max-width:var(--page-max);margin:0 auto;padding:calc(16px + var(--safe-top)) 16px calc(var(--nav-h) + 24px + var(--safe-bottom))}.home{display:flex;flex-direction:column;gap:16px}.field{display:flex;flex-direction:column;gap:6px}.field__label{font-size:13px;font-weight:600;color:var(--text-muted);letter-spacing:.01em}.field input,.field select,.onboarding input,.onboarding select,.join input,.event-edit input,.breast-manual input,.sleep-manual input{width:100%;min-height:46px;padding:12px 14px;font-size:16px;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);outline:none;transition:border-color .15s ease,box-shadow .15s ease}input[type=date]{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;align-items:center}input[type=date]::-webkit-date-and-time-value{margin:0;text-align:left}input[type=date]::-webkit-datetime-edit{padding:0}.onboarding select,.field select,.settings__form select,.measurement-sheet select,.event-edit select{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;min-height:46px;padding:12px 40px 12px 14px;font-size:16px;color:var(--text);background-color:var(--surface);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23888888' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;border:1px solid var(--border);border-radius:var(--radius-sm);outline:none;cursor:pointer}.onboarding select:focus,.field select:focus,.settings__form select:focus,.measurement-sheet select:focus,.event-edit select:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 25%,transparent)}.field input:focus,.field select:focus,.onboarding input:focus,.join input:focus,.event-edit input:focus,.breast-manual input:focus,.sleep-manual input:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 25%,transparent)}.btn,.primary,.btn--primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 18px;font-size:16px;font-weight:600;line-height:1;color:var(--text);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:transform .05s ease,filter .15s ease,background-color .15s ease}.btn--primary,.primary{color:var(--accent-text);background:var(--accent);border-color:transparent}.btn:active,.primary:active,.btn--primary:active{transform:scale(.98)}.btn:disabled,.primary:disabled,.btn--primary:disabled{opacity:.45;cursor:not-allowed;transform:none}.onboarding .btn--primary,.bottle__done,.breast-running .primary,.breast-manual .primary,.sleep-running .primary,.sleep-sheet>.primary,.breast-sheet>.primary{width:100%}.chip,.toggle,.side-btn,.diaper-btn,.stepper__btn{cursor:pointer;font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:999px;transition:background-color .12s ease,color .12s ease,border-color .12s ease,transform .05s ease}.chip{padding:9px 16px;font-size:15px;font-weight:600}.chip--active{color:var(--accent-text);background:var(--accent);border-color:transparent}.toggle{flex:1;padding:11px 12px;font-size:15px;font-weight:600;border-radius:var(--radius-sm)}.toggle--on{color:var(--accent-text);background:var(--accent);border-color:transparent}.chip:active,.toggle:active,.side-btn:active,.diaper-btn:active,.stepper__btn:active{transform:scale(.96)}.onboarding{display:flex;flex-direction:column;justify-content:center;min-height:100dvh}.onboarding__mascot{display:block;width:160px;height:auto;margin:0 auto 12px}.onboarding h1{margin:0 0 4px;font-size:28px;font-weight:700;text-align:center}.onboarding__hint{margin:0 0 24px;color:var(--text-muted);text-align:center}.onboarding__form{display:flex;flex-direction:column;gap:16px;padding:20px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.header-status{padding:4px 2px}.header-status__name{margin:0 0 8px;font-size:26px;font-weight:700}.header-status__next,.header-status__since{margin:4px 0;font-size:15px;color:var(--text-muted)}.header-status__next{display:inline-block;padding:6px 12px;border-radius:999px;background:var(--surface-2);color:var(--text);font-weight:600}.header-status__next--overdue{color:var(--accent-text);background:var(--danger)}.live-banner{padding:12px 16px;border-radius:var(--radius);background:color-mix(in srgb,var(--accent) 14%,var(--surface));border:1px solid color-mix(in srgb,var(--accent) 35%,var(--border));color:var(--text);font-size:15px;display:flex;align-items:center;flex-wrap:wrap}.live-banner__who{font-weight:700}.live-banner__elapsed{margin-left:auto;font-variant-numeric:tabular-nums;font-weight:700;color:var(--accent)}.live-banner__sep{color:var(--text-muted)}.quick-buttons{display:grid;grid-template-columns:1fr 1fr;gap:var(--gap)}.quick-buttons__btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:104px;padding:16px;cursor:pointer;color:var(--text);background:var(--surface);border:1px solid var(--border);border-top:4px solid var(--accent);border-radius:var(--radius);box-shadow:var(--shadow);transition:transform .05s ease,filter .15s ease}.quick-buttons__btn:active{transform:scale(.97);filter:brightness(.97)}.quick-buttons__btn--bottle{border-top-color:var(--bottle)}.quick-buttons__btn--breast{border-top-color:var(--breast)}.quick-buttons__btn--diaper{border-top-color:var(--diaper)}.quick-buttons__btn--sleep{border-top-color:var(--sleep)}.quick-buttons__icon{font-size:34px;line-height:1}.quick-buttons__label{font-size:15px;font-weight:600}.timeline{list-style:none;margin:0;padding:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.timeline--empty{padding:28px 16px;text-align:center;color:var(--text-muted)}.timeline--empty p{margin:0}.timeline__empty-mascot{display:block;width:120px;height:auto;margin:0 auto 10px;opacity:.95}.event-row{display:flex;align-items:center;gap:12px;padding:13px 16px;border-top:1px solid var(--border);cursor:pointer;transition:background-color .12s ease}.event-row:first-child{border-top:none}.event-row:active{background:var(--surface-2)}.event-row__icon{font-size:22px;line-height:1}.event-row__time{font-variant-numeric:tabular-nums;font-weight:600;color:var(--text-muted);min-width:44px}.event-row__desc{flex:1}.sheet{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:flex;align-items:flex-end;justify-content:center}.sheet__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#00000080;animation:sheet-fade .18s ease}.sheet__panel{position:relative;width:100%;max-width:var(--page-max);max-height:88dvh;overflow-y:auto;background:var(--surface);border-radius:20px 20px 0 0;padding:8px 18px calc(20px + var(--safe-bottom));box-shadow:0 -8px 30px #00000040;animation:sheet-rise .22s cubic-bezier(.2,.8,.2,1)}.sheet__panel:before{content:"";display:block;width:40px;height:4px;margin:6px auto 10px;border-radius:999px;background:var(--border)}.sheet__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.sheet__title{margin:0;font-size:18px;font-weight:700}.sheet__close{margin-left:auto;width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;font-size:17px;color:var(--text-muted);background:var(--surface-2);border:none;border-radius:999px;cursor:pointer}.sheet__body{display:flex;flex-direction:column;gap:16px}@keyframes sheet-rise{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes sheet-fade{0%{opacity:0}to{opacity:1}}.bottle{display:flex;flex-direction:column;gap:18px}.bottle__presets{display:flex;flex-wrap:wrap;gap:8px}.bottle__stepper{display:flex;align-items:center;justify-content:center;gap:18px}.stepper__btn{width:52px;height:52px;font-size:26px;font-weight:700;border-radius:50%;display:inline-flex;align-items:center;justify-content:center}.bottle__value{font-size:40px;font-weight:700;font-variant-numeric:tabular-nums;min-width:88px;text-align:center}.bottle__unit{font-size:16px;color:var(--text-muted)}.bottle__kind{display:flex;gap:10px}.breast-sheet,.sleep-sheet{display:flex;flex-direction:column;gap:18px}.breast-side{display:flex;gap:12px}.side-btn{flex:1;padding:18px;font-size:16px;font-weight:600;border-radius:var(--radius-sm)}.side-btn[aria-pressed=true],.side-btn.side-btn--active{color:var(--accent-text);background:var(--breast);border-color:transparent}.breast-mode,.sleep-mode{display:flex;gap:10px}.breast-mode button,.sleep-mode button{flex:1;padding:11px;font:inherit;font-weight:600;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer}.breast-mode button[aria-pressed=true],.sleep-mode button[aria-pressed=true]{color:var(--accent-text);background:var(--accent);border-color:transparent}.breast-running,.sleep-running,.breast-manual,.sleep-manual{display:flex;flex-direction:column;gap:14px;align-items:stretch}.breast-elapsed,.sleep-elapsed{margin:0;text-align:center;font-size:44px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--accent)}.diaper-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.diaper-btn{padding:22px 8px;font-size:15px;font-weight:600;border-radius:var(--radius-sm);display:flex;flex-direction:column;align-items:center;gap:6px}.diaper-btn:active{background:var(--diaper);color:var(--accent-text);border-color:transparent}.event-edit{display:flex;flex-direction:column;gap:16px}.event-edit__field{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;color:var(--text-muted)}.event-edit__bottle,.event-edit__side,.event-edit__kind,.event-edit__diaper,.event-edit__ml{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.event-edit__ml-value{font-size:22px;font-weight:700;font-variant-numeric:tabular-nums;min-width:70px;text-align:center}.event-edit__actions{display:flex;gap:10px;margin-top:4px}.event-edit__save{flex:1;padding:13px;font-size:16px;font-weight:600;color:var(--accent-text);background:var(--accent);border:none;border-radius:var(--radius-sm);cursor:pointer}.event-edit__delete{padding:13px 18px;font-size:16px;font-weight:600;color:var(--danger);background:transparent;border:1px solid var(--danger);border-radius:var(--radius-sm);cursor:pointer}.join{display:flex;flex-direction:column;gap:14px;justify-content:center;min-height:100dvh}.join__mascot{display:block;width:140px;height:auto;margin:0 auto -4px}.join h1{margin:0;font-size:26px;font-weight:700;text-align:center}.join code{padding:2px 8px;border-radius:6px;background:var(--surface-2);font-size:15px}.join .btn,.join button{width:100%}.nudge{display:flex;align-items:center;gap:10px;flex-wrap:wrap;width:min(var(--page-max),calc(100% - 32px));margin:calc(10px + var(--safe-top)) auto 0;padding:12px 14px;font-size:14px;color:var(--text);background:color-mix(in srgb,var(--accent) 12%,var(--surface));border:1px solid color-mix(in srgb,var(--accent) 30%,var(--border));border-radius:var(--radius)}.nudge__text{flex:1;min-width:140px}.nudge__action{font-weight:600;color:var(--accent);text-decoration:none}.nudge__dismiss{padding:7px 13px;font-size:13px;font-weight:600;color:var(--text-muted);background:var(--surface-2);border:none;border-radius:999px;cursor:pointer}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.4;-webkit-font-smoothing:antialiased;transition:background-color .15s ease,color .15s ease}button{font:inherit;color:inherit;cursor:pointer}a{color:var(--accent)}:root{--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px)}
