/* Growth uses the existing child theme and form/dialog controls. */
.growth-panel{padding:24px}.growth-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin:16px 0}.growth-metrics>div{background:var(--color-primary-soft);border-radius:12px;padding:14px;min-width:0;overflow-wrap:anywhere}.growth-metrics small,.growth-metrics strong{display:block}.growth-metrics strong{font-size:20px;margin-top:6px}.growth-recent-title{margin-top:30px;flex-wrap:wrap}.growth-periods{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:18px 0}.growth-periods button{padding:12px 4px;font-size:13px}.growth-periods button[aria-pressed=true]{background:var(--color-primary-soft);border-color:var(--color-primary)}.growth-plot{width:100%;min-width:0}.growth-plot>svg{display:block;width:100%;height:auto;overflow:visible}.growth-plot g[role=button]{cursor:pointer}.growth-plot g[role=button]:focus{outline:none}.growth-plot g[role=button]:focus circle:last-of-type{stroke:var(--color-accent);stroke-width:4}.growth-detail-link{text-align:left;padding:8px 0;border:0;background:none}.growth-record>div{min-width:0;overflow-wrap:anywhere}.growth-notes{white-space:pre-wrap;overflow-wrap:anywhere}.growth-legend{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0}.growth-legend li{display:flex;gap:4px;align-items:center}.growth-legend svg{width:36px;height:12px}@media(max-width:600px){.growth-panel{padding:16px}.growth-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.growth-metrics strong{font-size:18px}.growth-recent-title h2{font-size:18px}}
/* Child identity palettes; functional area and danger colors remain independent. */
:root,[data-theme="purple"]{--skin-primary:#6328da;--color-primary:var(--skin-primary);--color-primary-soft:#f0e7fc;--color-accent:#6328da;--color-surface-tint:#faf8fd;--color-border-accent:#a15bf2}
[data-theme="sage"]{--skin-primary:#28756c;--color-primary:var(--skin-primary);--color-primary-soft:#e4efe8;--color-accent:#426f65;--color-surface-tint:#f6f8f5;--color-border-accent:#8ab8aa}
[data-theme="blue"]{--skin-primary:#356b8b;--color-primary:var(--skin-primary);--color-primary-soft:#e5eff6;--color-accent:#466d85;--color-surface-tint:#f5f8fa;--color-border-accent:#88aec5}
[data-theme="pink"]{--skin-primary:#965369;--color-primary:var(--skin-primary);--color-primary-soft:#f7e8ed;--color-accent:#865466;--color-surface-tint:#fcf7f8;--color-border-accent:#c694a6}
[data-theme="lavender"]{--skin-primary:#715a94;--color-primary:var(--skin-primary);--color-primary-soft:#efe9f6;--color-accent:#715e89;--color-surface-tint:#f8f6fb;--color-border-accent:#ad9ac5}
[data-theme="peach"]{--skin-primary:#91603b;--color-primary:var(--skin-primary);--color-primary-soft:#f8ecdf;--color-accent:#856346;--color-surface-tint:#fcf8f3;--color-border-accent:#c3a17e}
/* One palette for the shared brand sprite; existing child tokens are unchanged. */
:root{--brand-body-start:var(--color-primary);--brand-body-mid:var(--color-primary);--brand-body-soft:var(--color-border-accent);--brand-body-light:var(--color-primary-soft);--brand-bubble-light:var(--color-primary-soft);--brand-bubble-mid:var(--color-border-accent);--brand-bubble-dark:var(--color-primary);--brand-bubble-edge:var(--color-primary-soft);--brand-rim-light:var(--color-primary-soft);--brand-rim-mid:var(--color-border-accent);--brand-rim-blue:var(--color-border-accent);--brand-rim-pink:var(--color-primary-soft);--brand-outer-light:var(--color-primary-soft);--brand-outer-mid:var(--color-border-accent);--brand-outer-dark:var(--color-primary);--brand-ink:color-mix(in srgb,var(--color-primary) 55%,#101c38);--brand-edu:var(--color-primary);--splash-halo:var(--color-primary-soft);--splash-wave:var(--color-border-accent)}
:root:not([data-theme]),[data-theme="purple"]{--brand-body-start:#6328da;--brand-body-mid:#7837eb;--brand-body-soft:#a15bf2;--brand-body-light:#d19af7;--brand-bubble-light:#f2d8ff;--brand-bubble-mid:#b871f1;--brand-bubble-dark:#7837d9;--brand-bubble-edge:#e0affa;--brand-rim-light:#f4d7ff;--brand-rim-mid:#c39cff;--brand-rim-blue:#8acfff;--brand-rim-pink:#f4c4f5;--brand-outer-light:#b6e9ff;--brand-outer-mid:#3baaf5;--brand-outer-dark:#1375e6;--brand-ink:#101c58;--brand-edu:#9860ed;--splash-halo:#eee3fc;--splash-wave:#d7eaff}
:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--text,#243e3b);background:var(--color-surface-tint);font-synthesis:none}*{box-sizing:border-box}body{margin:0}header{max-width:1040px;margin:auto;padding:28px 32px;display:flex;justify-content:space-between;align-items:center}.brand{display:flex;gap:12px;align-items:center;font-size:28px;color:var(--color-primary);text-decoration:none;font-weight:750}.brand span{font-size:20px}.brand small{display:block;font-size:11px;font-weight:400;color:var(--text-muted,#738480);margin-top:3px}main{max-width:820px;margin:16px auto 70px;padding:0 24px}h1{font-size:36px;letter-spacing:-1px;margin:10px 0}h2{font-size:20px;margin:0}p{line-height:1.6}.heading{display:flex;align-items:center;justify-content:space-between;margin:36px 0 26px}.heading p{color:var(--text-muted,#72817d);margin:8px 0}.eyebrow{font-size:11px;letter-spacing:1.6px;font-weight:750;color:var(--color-accent)}.badge{background:var(--feeding-tint,#e5eee6);border-radius:30px;padding:8px 15px;font-size:12px}nav{display:flex;border-bottom:1px solid var(--border,#dde5df);gap:30px;color:var(--text-muted,#89948d);font-size:14px}nav>span{padding:16px 0}nav small{font-size:9px;display:inline-block}nav .active{color:var(--color-primary);border-bottom:3px solid var(--color-primary);font-weight:700}.last{display:flex;align-items:center;gap:18px;background:var(--color-primary-soft);border:1px solid var(--border,#d9e8dc);border-radius:16px;padding:23px;margin-bottom:24px}.last p{margin:5px 0 0;font-weight:600}.last-icon{font-size:32px;color:var(--color-primary)}.card{background:var(--surface,white);border:1px solid var(--border,#e1e7e1);border-radius:18px;box-shadow:0 8px 30px #243e3b04;overflow:hidden}.tabs{display:flex;background:var(--surface-subtle,#fafbf9);border-bottom:1px solid var(--border,#e1e7e1);padding:8px;gap:8px}.tabs button{flex:1;border:0;background:none;color:var(--text-muted,#738480)}.tabs button[aria-selected=true]{background:var(--color-primary);color:var(--on-primary,white);box-shadow:0 3px 8px #28756c20}button,.primary{font:inherit;font-size:14px;font-weight:600;border-radius:9px;padding:12px 18px;border:1px solid var(--border,#d7e2d9);background:var(--surface,white);color:var(--color-primary);cursor:pointer;text-decoration:none;display:inline-block}button:hover{filter:brightness(.96)}button:disabled{opacity:.6;cursor:wait}.primary{background:var(--color-primary);color:var(--on-primary,white);border-color:var(--color-primary)}form,#history{padding:28px}.form-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:24px}.muted{font-size:12px;color:var(--text-muted,#798981)}.form-heading .muted{max-width:170px;text-align:right}label,legend{display:block;font-size:13px;font-weight:650;margin:20px 0 8px}input,select{width:100%;border:1px solid var(--border,#d9e2dc);border-radius:9px;background:var(--surface,#fff);padding:13px;font:inherit;color:var(--text,#243e3b);min-width:0}input:focus,select:focus,button:focus-visible,a:focus-visible{outline:3px solid var(--color-border-accent);outline-offset:2px}.columns{display:grid;grid-template-columns:1fr 1fr;gap:20px}fieldset{border:0;padding:0;margin:0}.checks{display:grid;grid-template-columns:1fr 1fr;gap:12px}.checks label{display:flex;align-items:center;gap:12px;border:1px solid var(--border,#d9e2dc);border-radius:9px;padding:16px;margin:0}.checks input{width:18px;height:18px;accent-color:var(--color-primary)}.actions{display:flex;gap:12px;margin-top:30px}.footnote{text-align:center;margin-top:22px}.record{padding:20px 0;border-bottom:1px solid var(--border,#e9eee9);display:flex;justify-content:space-between;gap:12px;align-items:center}.record p{margin:5px 0;font-size:14px}.record small{color:var(--text-muted,#798981)}.welcome{padding:48px;margin-top:60px;max-width:600px}.welcome .primary{margin:20px 0}#form-status{padding:12px;color:var(--danger,#86491d);white-space:pre-line}#form-status:empty{display:none}[hidden]{display:none!important}@media(max-width:600px){header{padding:22px 20px}.brand small{display:none}header button{font-size:11px;padding:9px}main{padding:0 16px}h1{font-size:30px}nav{gap:22px;font-size:12px}nav small{display:block}.heading{margin:26px 0}.badge{display:none}form,#history{padding:20px}.form-heading{align-items:flex-start}.form-heading .muted{font-size:10px;max-width:105px}.columns{grid-template-columns:1fr;gap:0}.welcome{padding:28px}.record{align-items:flex-start}.record button{font-size:12px}.actions{flex-wrap:wrap}}

.record-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.record-actions .danger{color:var(--danger,#a33732);border-color:var(--danger-soft,#ebc8c5)}@media(max-width:600px){.record-actions{flex-direction:column;flex-shrink:0}}
nav button{border:0;border-radius:0;background:none;color:var(--text-muted,#89948d);font-size:14px;padding:16px 0;font-weight:400}nav button.active{font-weight:700}.tabs button[aria-pressed=true]{background:var(--color-primary);color:var(--on-primary,white)}#diaper-history{padding:28px}.choice-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.choice-grid.colors{grid-template-columns:repeat(6,1fr)}.choice-grid label{margin:0;position:relative;cursor:pointer}.choice-grid input{position:absolute;opacity:0;width:1px;height:1px}.choice-grid label>span{display:flex;align-items:center;flex-direction:column;gap:8px;border:2px solid transparent;border-radius:12px;padding:10px 4px;font-size:12px;text-align:center}.choice-grid svg{width:48px;height:48px;fill:#ded6c7}.choice-grid input:checked+span{border-color:var(--color-primary);background:var(--color-primary-soft)}.choice-grid input:focus-visible+span{outline:3px solid var(--color-border-accent);outline-offset:2px}#poo-details{margin-top:24px;border-top:1px solid var(--border,#e1e7e1)}@media(max-width:500px){.choice-grid,.choice-grid.colors{grid-template-columns:repeat(3,1fr)}#diaper-history{padding:20px}nav button{font-size:12px}}
.account-menu{position:relative}.account-menu summary{cursor:pointer;padding:10px 16px;border:1px solid var(--border,#d7e2d9);border-radius:9px;color:var(--color-primary);background:var(--surface,white);font-size:14px;font-weight:600}.account-menu summary:focus-visible{outline:3px solid var(--color-border-accent);outline-offset:2px}.account-options{position:absolute;right:0;top:calc(100% + 8px);width:200px;z-index:10;padding:8px;background:var(--surface,white);border:1px solid var(--border,#d7e2d9);border-radius:12px;box-shadow:0 8px 24px #243e3b20}.account-options button{display:block;text-align:left;width:100%;border:0}.admin-placeholder{padding:24px}

nav button,nav>span{font-size:17px}nav small{font-size:10px}.brand .brand-mark{width:52px;height:52px;flex-shrink:0}.brand>span{font-size:25px;letter-spacing:-.6px}.brand small{letter-spacing:0}.choice-grid input:checked+span::after{content:"✓";position:absolute;right:5px;top:3px;color:var(--color-primary);font-weight:800}@media(max-width:600px){nav{gap:20px}nav button,nav>span{font-size:15px}.brand .brand-mark{width:44px;height:44px}.brand>span{font-size:23px}}
nav{overflow-x:auto;gap:24px;scrollbar-width:thin}nav button{white-space:nowrap;flex-shrink:0;min-height:48px}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.dashboard-card{padding:22px;display:flex;flex-direction:column;align-items:flex-start;gap:12px}.dashboard-card p{margin:0}.dashboard-detail{font-size:19px;font-weight:600}.dashboard-time,.dashboard-card small{color:var(--text-muted,#607770);font-size:13px}.dashboard-card button{margin-top:auto}.timeline{list-style:none;padding:0;margin:0}.timeline-event{display:grid;grid-template-columns:58px 1fr;gap:18px;padding:20px 12px;border-bottom:1px solid var(--border,#dce6de)}.timeline-event time{font-weight:700;color:var(--color-primary)}.timeline-event p{margin:0 0 6px}.timeline-event small{color:var(--text-muted,#71867c)}.empty-state{padding:30px;text-align:center;color:var(--text-muted,#71867c)}.health-history{margin-top:22px;padding:24px}textarea{width:100%;font:inherit;padding:12px;border:1px solid var(--border,#d9e2dc);border-radius:9px;resize:vertical}.record-note{white-space:pre-wrap;overflow-wrap:anywhere}.record>div:first-child{min-width:0;overflow-wrap:anywhere}@media(max-width:600px){.dashboard-grid{grid-template-columns:1fr}.dashboard-card{padding:20px}nav{gap:20px}.dashboard-detail{font-size:18px}.health-history{padding:20px}}
.dashboard-last .last-content{flex:1;min-width:0}.dashboard-last #dashboard-last{font-size:20px;line-height:1.4}.dashboard-last .last-details{font-size:13px;font-weight:400;color:var(--text-muted,#607770);overflow-wrap:anywhere;margin-top:10px}@media(max-width:600px){.dashboard-last{flex-wrap:wrap;gap:12px;padding:20px}.dashboard-last .last-content{flex-basis:calc(100% - 48px)}.dashboard-last button{margin-left:44px}.dashboard-last #dashboard-last{font-size:19px}}
.datetime-hint{display:block;margin-top:6px}.timeline-actions{justify-content:flex-start;flex-direction:row;margin-top:12px}.timeline-actions button{padding:9px 14px;min-height:40px}input[type=datetime-local]{min-height:48px}@media(max-width:600px){nav{gap:18px;scroll-padding:10px}nav button{min-height:48px}.timeline-actions{flex-direction:row}}

/* Shared date/time controls and modal; values never wrap or depend on device locale. */
.datetime-controls{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:8px}
.datetime-controls .datetime-trigger{display:flex;align-items:center;gap:6px;min-width:0;min-height:48px;width:100%;padding:10px 8px;font-size:15px;font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--color-primary);background:var(--color-primary-soft);border:1px solid var(--color-border-accent)}
.datetime-trigger svg{width:18px;height:18px;flex:none}.datetime-trigger .dt-chevron{margin-left:auto;font-size:16px}.datetime-trigger:disabled{opacity:.55;cursor:not-allowed}
.datetime-trigger:hover:not(:disabled){border-color:var(--color-primary)}.datetime-trigger:focus-visible,.datetime-modal :focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}
.datetime-modal{box-sizing:border-box;width:min(420px,calc(100% - 16px));max-height:calc(100dvh - 16px);padding:16px;border:1px solid var(--color-border-accent);border-radius:18px;color:var(--text,#243e3b);background:var(--surface,#fff);overflow:auto;overscroll-behavior:contain;box-shadow:0 20px 80px #183b3833}
.datetime-modal::backdrop{background:#173e3866}.dt-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}.dt-heading h2{font-size:21px;margin:0}.datetime-modal button{min-height:44px;padding:8px;border-radius:9px;touch-action:manipulation}
.dt-calendar-nav{display:flex;align-items:center;gap:4px}.dt-calendar-nav>button{width:44px;flex:none;font-size:24px}.dt-period{display:flex;flex:1;min-width:0;justify-content:center;gap:4px}.dt-period button{color:var(--color-primary);font-weight:600;text-transform:capitalize}
.dt-week,.dt-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;text-align:center}.dt-week{font-size:12px;color:var(--text-muted,#607770);line-height:24px}.dt-days button{border:1px solid transparent;font-weight:500;padding:4px}.dt-days button[aria-current=date]{text-decoration:underline;text-underline-offset:4px;border-color:var(--color-primary)}
.dt-days button[aria-pressed=true],.dt-options button[aria-pressed=true]{background:var(--color-primary);color:var(--on-primary,#fff)}.dt-days button:disabled{opacity:.35}.dt-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.dt-options button{font-size:14px;text-transform:capitalize}
.dt-selected{font-size:13px;color:var(--success,#526d64);margin:12px 0}.dt-clock{display:flex;align-items:center;justify-content:center;gap:12px}.dt-clock label{margin:0;font-size:14px}.dt-clock input{display:block;width:80px;height:48px;font-size:24px;text-align:center;font-variant-numeric:tabular-nums}.dt-clock input[aria-invalid=true]{border-color:var(--danger,#a33732)}
.dt-wheels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;text-align:center}.dt-wheels>div{min-width:0}.dt-wheels span{display:block;margin-bottom:8px;font-size:14px}.dt-wheel{height:220px;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;scroll-snap-type:y mandatory;scrollbar-width:none;padding:88px 0;box-sizing:border-box;border:1px solid var(--color-border-accent);border-radius:12px;scroll-behavior:auto}.dt-wheel::-webkit-scrollbar{display:none}.dt-wheel [role=option]{height:44px;line-height:44px;scroll-snap-align:center;cursor:pointer;font-size:22px;font-variant-numeric:tabular-nums;color:var(--text-muted,#607770)}.dt-wheel [aria-selected=true]{background:var(--color-primary-soft);color:var(--color-primary);font-weight:700;box-shadow:inset 0 1px var(--color-border-accent),inset 0 -1px var(--color-border-accent)}
#dt-time-mode{display:block;margin:12px auto;color:var(--color-primary)}.dt-footer{display:flex;gap:8px;margin-top:12px;border-top:1px solid var(--color-border-accent);padding-top:12px}.dt-footer button{flex:1}#dt-error{color:var(--danger,#a33732);font-size:13px;margin:8px 0}#dt-error:empty{display:none}
.datetime-modal button,.datetime-trigger,.dt-wheel{-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}
.datetime-modal [hidden]{display:none!important}
@media(max-width:360px){.datetime-modal{padding:10px}.datetime-controls{gap:6px}.datetime-controls .datetime-trigger{font-size:14px;padding:10px 6px;gap:4px}.datetime-trigger svg{width:16px;height:16px}.dt-week,.dt-days{gap:0}}
@media(prefers-reduced-motion:reduce){.datetime-modal *{scroll-behavior:auto;transition:none;animation:none}}

.note-preview{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:13px;color:var(--text-muted,#607770);white-space:normal}.hygiene-latest{width:100%}.hygiene-latest p{margin-top:4px}

.dashboard-buttons{display:flex;gap:8px;align-items:center;margin-top:auto}.dashboard-last .dashboard-buttons button{margin-left:0}.dashboard-buttons button{min-height:44px}.chart-period button{min-height:44px}.chart-indicators{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:16px}.chart-indicator{padding:16px 10px;display:flex;flex-direction:column;gap:6px}.chart-indicator strong{font-size:23px;color:var(--color-primary)}.chart-indicator span{font-size:12px;color:var(--text-muted,#607770)}.chart-card{padding:18px;margin-bottom:16px}.chart-card svg{width:100%;height:auto;display:block;cursor:pointer;touch-action:manipulation}.chart-card svg:focus-visible{outline:3px solid var(--color-border-accent)}.chart-legend{display:flex;gap:16px;font-size:12px}.chart-legend span::before{content:'';display:inline-block;width:10px;height:10px;background:var(--series);border-radius:3px;margin-right:6px}.chart-selection{font-size:13px;color:var(--text-muted,#607770);margin:8px 0 0}.chart-day-picker{padding:18px;margin-top:16px}.chart-day-picker label{margin-top:0}.chart-day-controls{display:flex;gap:8px;margin-bottom:12px}.chart-day-controls button{min-width:44px;padding:8px;font-size:24px}.chart-day-picker>button{width:100%;min-height:44px}.activity-grid{padding:8px}.activity-row{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;width:100%;gap:4px;align-items:center;text-align:center;min-height:44px;border:0;border-bottom:1px solid var(--border,#e1e7e1);border-radius:0;padding:8px 2px;font-size:13px}.activity-row[aria-pressed=true]{background:var(--color-primary-soft)}.activity-head{font-size:12px;color:var(--text-muted,#607770)}.chart-dialog{width:min(560px,calc(100% - 24px));max-height:calc(100dvh - 24px);overflow:auto;border:1px solid var(--border,#d7e2d9);border-radius:18px;padding:20px;color:var(--text,#243e3b)}.chart-dialog::backdrop{background:#173e3866}.chart-dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;position:sticky;top:-20px;background:var(--surface,white);padding:12px 0}.chart-dialog-heading button{min-height:44px}.chart-detail-record{padding:16px 0;border-bottom:1px solid var(--border,#e1e7e1);overflow-wrap:anywhere}.chart-detail-record small{color:var(--text-muted,#607770)}@media(max-width:600px){.dashboard-last .dashboard-buttons{margin-left:44px}.chart-card{padding:14px 8px}.chart-card h2{font-size:18px}.chart-card svg{min-height:150px}#charts-page .heading{align-items:flex-start;gap:8px}#charts-title{font-size:27px}.chart-indicator{padding:12px 8px}}

.import-panel{padding:22px;margin-bottom:18px}.import-panel>button{margin-top:12px;min-height:44px}.import-panel input[type=checkbox],.import-panel input[type=radio]{width:20px;height:20px;vertical-align:middle;accent-color:var(--color-primary)}.import-panel label{line-height:1.5}.import-panel summary{cursor:pointer;min-height:44px;padding:10px 0}.import-entry{border-bottom:1px solid var(--border,#dce6de);overflow-wrap:anywhere;font-size:13px}.import-entry p{white-space:pre-wrap}.import-warning{border:2px solid var(--danger,#a33732);background:var(--surface-subtle,#fff0ee);padding:16px;border-radius:12px;color:var(--danger,#8c2420)}

.history-filter{margin:0 0 1rem}.history-filter-heading{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.history-filter-heading p{margin:.5rem 0}.history-dates{padding:.75rem 0}.history-dates .columns>div{min-width:0}.history-dates input{min-width:0;width:100%;box-sizing:border-box}.history-error{color:var(--danger,#a13a18)}.history-filter button{min-height:44px}.history-filter[aria-busy=true] .history-filter-heading p{opacity:.65}

.chart-week{padding:10px 4px}.chart-week .chart-legend{margin:2px 6px 12px}.chart-week-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px}.chart-week-day{display:flex;flex-direction:column;align-items:center;min-width:0;padding:10px 1px;border:1px solid transparent;color:var(--text,#243e3b);gap:5px;font-variant-numeric:tabular-nums}.chart-week-day[aria-pressed=true]{background:var(--color-primary-soft);border-color:var(--color-border-accent)}.chart-week-day time{display:flex;flex-direction:column;gap:4px;font-size:11px;font-weight:500;margin-bottom:6px}.chart-week-metric{display:flex;align-items:center;justify-content:center;gap:4px;font-size:13px}.chart-week-metric::before{content:'';width:12px;height:12px;flex-shrink:0;border-radius:50%;background:var(--series)}.chart-week-total{font-size:22px;margin-top:5px;line-height:1.1}.chart-week-label{font-size:11px;font-weight:400;line-height:1.1}.chart-week-ml{font-size:12px;margin-top:8px}.chart-week-volume{width:80%;height:4px;border-radius:4px;background:var(--feeding-tint,#e4efe8);margin-top:4px;overflow:hidden}.chart-week-volume>span{display:block;height:100%;background:var(--series)}.chart-timeline{padding:14px 8px}.chart-axis-titles{display:flex;justify-content:space-between;gap:10px;font-size:12px;color:var(--success,#435f57);margin:12px 0 6px}.chart-axis-label{font-size:11px;fill:#435f57;font-variant-numeric:tabular-nums}.chart-month-label{font-size:10px;font-weight:650}.chart-timeline .chart-legend{flex-wrap:wrap;gap:8px 16px;margin:0}.chart-week .chart-legend span::before,.chart-timeline .chart-legend span::before{border-radius:50%;width:12px;height:12px;vertical-align:-1px}.chart-timeline .chart-line-key::before{height:3px;width:18px;vertical-align:3px}.chart-timeline .chart-selection{color:var(--success,#435f57);min-height:42px}.chart-timeline svg{min-height:0}@media(min-width:601px){.chart-week{padding:16px}.chart-week-days{gap:8px}.chart-week-day{padding:14px 4px}.chart-week-day time{font-size:13px}.chart-week-metric{font-size:15px}.chart-week-ml{font-size:14px}}
.activity-row{grid-template-columns:repeat(var(--activity-columns,4),minmax(0,1fr))}.chart-detail-record{display:flex;align-items:flex-start;gap:10px}.chart-record-content{flex:1;min-width:0}.chart-record-actions{display:flex;flex-shrink:0;gap:4px}.chart-icon-action{width:44px;height:44px;min-width:44px;padding:10px;display:grid;place-items:center}.chart-icon-action svg{width:20px;height:20px}.chart-icon-action.danger{color:var(--danger,#a33732);border-color:var(--danger-soft,#ebc8c5)}.chart-indicator#solids-indicator{text-align:left;cursor:pointer;border-color:#8ab8aa}.chart-indicator#solids-indicator:hover{background:var(--surface-subtle,#f0f7f3)}.solid-distribution-row{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 12px;padding:12px 0;border-bottom:1px solid var(--border,#e1e7e1)}.solid-distribution-row strong{overflow-wrap:anywhere}.solid-distribution-row span{font-size:14px;color:var(--text-muted,#607770)}
.settings-card{padding:22px;margin-bottom:18px}.settings-card fieldset{margin-top:22px}.settings-card legend{font-weight:700;font-size:18px}.settings-card .hygiene-rule{margin:20px 0}.inline-check{display:flex;gap:10px;align-items:center;min-height:44px}.inline-check input{width:20px;height:20px;flex-shrink:0}.data-actions{padding:24px;display:flex;gap:12px;flex-wrap:wrap}.email-add{display:flex;gap:8px;align-items:center}.email-list{padding:0;list-style:none}.email-list li{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:10px 0}.email-list span{min-width:0;overflow-wrap:anywhere}.email-list button{flex-shrink:0}.settings-card input{min-height:44px}#settings-form{padding:0}#appointment-settings{min-height:44px}
.inline-check input{accent-color:var(--color-primary)}

.push-master{font-size:16px;font-weight:650;margin-top:18px;min-height:44px;cursor:pointer}.push-master input{min-height:20px!important}.push-rules-inactive{opacity:.6}.push-rules-inactive input{cursor:not-allowed}.appointment-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.appointment-tabs button{min-width:0;min-height:44px;white-space:nowrap;font-size:clamp(12px,3.3vw,14px);padding:12px 4px;overflow:hidden;text-overflow:ellipsis}.appointment-tabs button[aria-selected=true]{background:var(--color-primary);color:var(--on-primary,white)}.appointment-list-panel{padding:24px}.appointment-list-panel .record:focus{outline:2px solid var(--color-border-accent);outline-offset:3px}@media(max-width:600px){.appointment-list-panel{padding:20px}}

.activity-scroll{overflow-x:auto;margin-bottom:20px}.routine-grid{min-width:calc(var(--activity-columns) * 90px)}.routine-grid .activity-head span{overflow-wrap:anywhere}.record-actions{flex-wrap:wrap}#list-records strong{overflow-wrap:anywhere}#list-records .record>div:first-child{min-width:0}

#list-records .record{display:block;padding:16px 0}#list-records .record>div:first-child{display:flex;justify-content:space-between;align-items:center;gap:12px}#list-records .record p{font-size:12px;color:var(--text-muted,#738480)}#list-records .record-actions{display:flex;flex-direction:row;gap:8px;margin-top:10px}#list-records .record-actions button{min-height:44px;flex:1;padding:10px 8px}.activity-scroll:focus-visible{outline:3px solid var(--color-border-accent)}

/* Dashboard-only family view; individual/single-child cards keep their styles. */
.dashboard-heading.has-family-view{flex-wrap:wrap;gap:12px}.family-view-switch{display:flex;gap:4px;margin-left:auto}.family-view-switch button{min-height:44px;padding:8px 12px;font-size:13px}.family-view-switch button[aria-pressed=true]{color:var(--color-primary);background:var(--color-primary-soft);border-color:var(--color-border-accent)}
.family-dashboard-card{cursor:pointer;margin-bottom:14px;padding:18px}.family-dashboard-card:focus-visible{outline:3px solid var(--color-primary);outline-offset:3px}.family-child-heading,.family-child-identity{display:flex;align-items:center;gap:10px}.family-child-heading{justify-content:space-between;margin-bottom:14px}.family-child-identity{min-width:0}.family-child-identity h2{overflow-wrap:anywhere}.family-child-identity p{margin:3px 0;font-size:13px}.family-child-link{color:var(--color-primary);font-size:12px;flex-shrink:0}.family-metrics,.family-hygiene-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.family-metric{display:flex;flex-direction:column;gap:6px;padding:12px 9px;min-width:0;border-radius:12px;background:var(--feeding-tint,#f0f7f2)}.family-metric-diaper{background:var(--diaper-tint,#fff7e6)}.family-metric-label{font-size:12px;color:var(--text-muted,#506c63)}.family-metric-time{font-size:16px;overflow-wrap:anywhere}.family-metric-detail{font-size:12px;color:var(--text-muted,#536b63);overflow-wrap:anywhere}.family-hygiene{margin-top:16px}.family-hygiene h3{font-size:13px;margin:0 0 9px}.family-hygiene-item{display:flex;flex-direction:column;gap:6px;border:1px solid var(--border,#e3e9e4);border-radius:10px;padding:10px;min-width:0;font-size:12px;overflow-wrap:anywhere}.family-appointments-list{display:grid;gap:8px}.family-appointment{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 12px;width:100%;padding:14px;text-align:left;min-height:54px}.family-appointment span{flex-basis:100%;font-size:13px;color:var(--text-muted,#536b63);overflow-wrap:anywhere}.family-appointment:focus-visible{outline:3px solid var(--color-primary)}
@media(max-width:430px){.family-dashboard-card{padding:14px 10px}.family-metrics,.family-hygiene-grid{gap:5px}.family-metric{padding:10px 6px}.family-metric-time{font-size:14px}.family-child-heading{align-items:flex-start}.family-child-link{max-width:80px;text-align:right;white-space:normal}.dashboard-heading.has-family-view>div:first-child{flex-basis:100%}.family-view-switch{margin-left:0}}
/* One navigation structure: top on desktop, fixed bottom on mobile/PWA. */
#primary-nav svg{display:none}#primary-nav button:focus-visible{outline:3px solid var(--color-primary);outline-offset:-3px}
@media(max-width:600px){html[data-mobile-editing] #primary-nav{display:none}}
@media(max-width:600px){
 :root{--bottom-nav-height:72px;--keyboard-inset:0px}
 html{scroll-padding-bottom:calc(var(--bottom-nav-height) + env(safe-area-inset-bottom,0px) + var(--keyboard-inset) + 16px)}
 main{margin-bottom:0;padding-bottom:calc(var(--bottom-nav-height) + env(safe-area-inset-bottom,0px) + var(--keyboard-inset) + 24px)}
 #primary-nav{position:fixed;z-index:9;inset:auto 0 var(--keyboard-inset);display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0;height:calc(var(--bottom-nav-height) + env(safe-area-inset-bottom,0px));padding:4px max(2px,env(safe-area-inset-right,0px)) calc(4px + env(safe-area-inset-bottom,0px)) max(2px,env(safe-area-inset-left,0px));overflow:visible;border:0;border-top:1px solid var(--color-border-accent);background:color-mix(in srgb,var(--color-primary-soft) 35%,var(--surface,#fff));box-shadow:0 -3px 14px color-mix(in srgb,var(--color-primary) 8%,transparent)}
 #primary-nav button{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-width:0;min-height:60px;padding:5px 0;border:0;border-radius:9px;color:var(--text-muted,#526761);font-size:clamp(9px,2.6vw,11px);line-height:1.2;letter-spacing:-.2px;font-weight:600;white-space:nowrap;touch-action:manipulation}
 #primary-nav svg{display:block;width:24px;height:24px;flex:none}
 #primary-nav button.active{color:var(--color-primary);background:var(--color-primary-soft);font-weight:750;border:0}
 #primary-nav button.active::before{content:'';position:absolute;top:1px;width:24px;height:3px;background:var(--color-primary);border-radius:3px}
}

.account-options svg{display:none}
@media(max-width:600px){
 .account-options{width:min(280px,calc(100vw - 40px));padding:8px;max-height:calc(100dvh - 180px);overflow-y:auto}
 .account-options button{display:flex;align-items:center;gap:14px;min-height:54px;padding:14px 16px;font-size:16px;line-height:1.4;border-radius:8px;color:var(--color-primary)}
 .account-options svg{display:block;flex:none;width:24px;height:24px}
 .account-options button:focus-visible{outline:3px solid var(--color-primary);outline-offset:-3px}
 .account-options button:hover{background:var(--color-primary-soft)}
 .account-options #logout{margin-top:6px;border-top:1px solid var(--border,#dce6de);border-radius:0 0 8px 8px;color:var(--text-muted,#526761)}
}

.family-section{padding:22px;margin-top:18px}.family-section h1{font-size:28px}.family-section form{padding:16px 0}.family-section form button,#family-name-save{margin-top:16px}.child-edit{min-width:0}.child-edit input{margin-bottom:8px}#onboarding .actions{flex-wrap:wrap}#family-invite input{max-width:100%}
/* Dashboard and Listas: compact surfaces, scoped to these two pages. */
#dashboard-page,#lists-page{max-width:760px;margin-inline:auto}
.dashboard-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:26px 0 18px}.dashboard-heading h1{font-size:30px;margin:4px 0;letter-spacing:-.8px}.dashboard-heading p{margin:0;font-size:14px;color:var(--text-muted,#607770)}.dashboard-heading p:empty{display:none}.dashboard-heading>button{min-height:44px;padding:10px 12px}
#dashboard-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
#dashboard-cards .dashboard-card{--area:var(--feeding-ink,#28756c);--tint:var(--feeding-tint,#edf6f1);min-width:0;padding:0;gap:0;border:1px solid color-mix(in srgb,var(--area) 12%,var(--surface,white));background:var(--tint);border-radius:18px;overflow:hidden;box-shadow:0 4px 16px #243e3b05;display:flex;align-items:stretch}
.dashboard-diapers{--area:var(--diaper-ink,#93651c);--tint:var(--diaper-tint,#fff8e9)}.dashboard-health{--area:var(--health-ink,#ad5060);--tint:var(--health-tint,#fff1f2)}.dashboard-hygiene{--area:var(--hygiene-ink,#5866a0);--tint:var(--hygiene-tint,#f0f2fc)}
#dashboard-cards .dashboard-diapers{--area:var(--diaper-ink,#93651c);--tint:var(--diaper-tint,#fff8e9)}#dashboard-cards .dashboard-health{--area:var(--health-ink,#ad5060);--tint:var(--health-tint,#fff1f2)}#dashboard-cards .dashboard-hygiene{--area:var(--hygiene-ink,#5866a0);--tint:var(--hygiene-tint,#f0f2fc)}
.dashboard-card-main{display:block;flex:1;padding:14px 14px 10px;text-decoration:none;color:var(--text,#243e3b);min-height:120px;overflow-wrap:anywhere}.dashboard-card-heading{display:flex;align-items:center;gap:8px;margin-bottom:12px}.dashboard-card-heading h2{font-size:15px;letter-spacing:-.3px;flex:1;min-width:0}.dashboard-area-icon{display:grid;place-items:center;width:34px;height:34px;flex:none;border-radius:50%;background:color-mix(in srgb,var(--area) 10%,var(--surface,white));color:var(--area)}.dashboard-area-icon svg{width:23px;height:23px}.dashboard-chevron{color:var(--area,var(--feeding-ink,#28756c));font-size:23px;font-weight:400}.dashboard-primary{font-size:23px;line-height:1.3;font-weight:750;letter-spacing:-.6px}.dashboard-secondary{font-size:13px;line-height:1.45!important;color:var(--text-muted,#526c65);margin-top:5px!important}.dashboard-medication{font-size:12px;line-height:1.4!important;margin-top:7px!important;color:var(--text-muted,#526c65)}
#dashboard-cards .dashboard-buttons{gap:6px;padding:0 10px;display:flex;align-items:stretch}#dashboard-cards .dashboard-buttons button{flex:1;min-width:0;min-height:44px;padding:8px 4px;margin:0;font-size:12px;letter-spacing:-.2px;border:0;color:var(--area);background:color-mix(in srgb,var(--area) 10%,var(--surface,white))}#dashboard-cards .dashboard-buttons button:first-child{background:color-mix(in srgb,var(--area) 17%,var(--surface,white))}
.dashboard-record-details{padding:0 12px;font-size:12px;color:var(--text-muted,#526c65)}.dashboard-record-details summary{min-height:44px;display:flex;align-items:center;gap:6px;cursor:pointer;font-size:11px}.dashboard-record-details summary::after{content:'+';margin-left:auto}.dashboard-record-details[open] summary::after{content:'−'}.dashboard-record-details p{padding-bottom:8px;line-height:1.5;overflow-wrap:anywhere}.dashboard-record-details .dashboard-routine{font-weight:650;display:flex;justify-content:space-between;gap:8px;padding-bottom:3px}.dashboard-record-details:focus-within{outline-offset:-3px}
.dashboard-section{margin-top:18px}.dashboard-section-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:6px}.dashboard-section-heading h2{font-size:18px;letter-spacing:-.3px}.dashboard-section-heading a{display:flex;align-items:center;gap:8px;min-height:44px;font-size:13px;color:var(--color-primary);text-decoration:none;font-weight:600}.dashboard-section-heading a span{font-size:22px}
.dashboard-events{padding:4px 14px;margin:0;list-style:none;background:var(--surface,#fff);border:1px solid var(--border,#e1e7e1);border-radius:16px}.dashboard-event{display:grid;grid-template-columns:42px 30px minmax(0,1fr);align-items:center;gap:10px;min-height:52px;padding:8px 0;font-size:13px;border-bottom:1px solid #eef2ee}.dashboard-event:last-child{border:0}.dashboard-event time{color:var(--text-muted,#607770);font-size:12px;font-variant-numeric:tabular-nums}.dashboard-event>span:last-child{overflow-wrap:anywhere;line-height:1.5}.dashboard-event-icon{--area:var(--feeding-ink,#28756c);--tint:var(--feeding-tint,#edf6f1);width:30px;height:30px;border-radius:50%;background:var(--tint);color:var(--area);display:grid;place-items:center}.dashboard-event-icon.dashboard-diapers{--area:var(--diaper-ink,#93651c);--tint:var(--diaper-tint,#fff8e9)}.dashboard-event-icon.dashboard-health{--area:var(--health-ink,#ad5060);--tint:var(--health-tint,#fff1f2)}.dashboard-event-icon.dashboard-hygiene{--area:var(--hygiene-ink,#5866a0);--tint:var(--hygiene-tint,#f0f2fc)}.dashboard-event-icon svg{width:19px;height:19px}.dashboard-empty{font-size:13px;color:var(--text-muted,#607770);padding:10px 0;margin:0;line-height:1.5}
.dashboard-next{display:flex;align-items:center;gap:14px;padding:14px;background:var(--surface,#fff);border:1px solid var(--border,#e1e7e1);border-radius:16px;text-decoration:none;color:var(--text,#243e3b)}.dashboard-date-stamp{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:none;min-width:50px;min-height:62px;border-radius:12px;background:var(--surface-subtle,#f0f5f1)}.dashboard-date-stamp strong{font-size:24px;line-height:1.1}.dashboard-date-stamp span{font-size:12px}.dashboard-next-text{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1;font-size:13px;overflow-wrap:anywhere}.dashboard-next-text>span,.dashboard-next-text time{color:var(--text-muted,#607770)}.dashboard-card-main:hover,.dashboard-next:hover{background:#ffffff55}.dashboard-card-main:focus-visible{outline-offset:-4px}
#lists-page>.heading{margin:26px 0 18px}#lists-page h1{font-size:30px}#lists-page .reference-card{overflow:visible}.reference-tabs{border-radius:18px 18px 0 0;display:grid;grid-template-columns:1fr 1fr 1.45fr;gap:4px;padding:6px}.reference-tabs button{min-width:0;min-height:44px;font-size:13px;padding:8px 4px;white-space:nowrap}.reference-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:16px 16px 8px}.reference-heading h2{font-size:17px;letter-spacing:-.3px}.reference-heading button{min-height:44px;flex:none;padding:10px;font-size:13px}#list-records{padding:0 16px 10px}#list-records .reference-row{display:flex;align-items:center;gap:10px;padding:6px 0;min-height:58px}#list-records .reference-row:last-child{border-bottom:0}#list-records .reference-row strong{flex:1;min-width:0;font-size:14px;font-weight:600;line-height:1.4}.reference-badge{font-size:9px;line-height:1;text-transform:uppercase;letter-spacing:.7px;font-weight:750;padding:6px 7px;border-radius:6px;background:var(--surface-subtle,#e6f2eb);color:var(--success,#346450);flex:none}.reference-badge.inactive{background:var(--surface-subtle,#f0f1ee);color:var(--text-muted,#69726c)}.reference-more{flex:none;width:44px;height:44px;padding:5px;border-color:transparent;font-size:26px;line-height:1;border-radius:10px;background:transparent}.reference-more:hover{background:var(--color-primary-soft)}.reference-empty{padding:10px 0 16px}.reference-empty p{font-size:14px;color:var(--text-muted,#607770)}.reference-empty button{min-height:44px}
.reference-dialog{width:min(420px,calc(100% - 24px));max-height:calc(100dvh - 32px);padding:20px;border:1px solid var(--border,#d7e2d9);border-radius:18px;color:var(--text,#243e3b);background:var(--surface,#fff);overflow:auto;box-shadow:0 20px 80px #183b3833}.reference-dialog::backdrop{background:#173e3866}.reference-dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.reference-dialog-heading h2{font-size:21px;min-width:0;overflow-wrap:anywhere}.reference-dialog-heading button{width:44px;height:44px;padding:4px;border:0;font-size:26px;flex:none}.reference-dialog form{padding:0}.reference-dialog .actions{justify-content:flex-end;margin-top:24px;flex-wrap:nowrap}.reference-dialog button{min-height:44px}.reference-dialog #list-menu{display:grid;gap:4px;margin-top:10px}.reference-dialog #list-menu button{text-align:left;border:0;padding:14px 12px}.reference-dialog .danger{color:var(--danger,#a33732);background:var(--surface-subtle,#fff1ef)}.reference-dialog #list-error{font-size:13px;color:var(--danger,#a33732)}.reference-dialog #list-error:empty{display:none}.reference-dialog #list-warning{background:var(--surface-subtle,#f6f8f5);border-radius:8px;padding:10px;font-size:13px}
@media(max-width:600px){.dashboard-heading{margin:10px 0 16px}.dashboard-heading h1{font-size:27px}#dashboard-cards{gap:10px}.dashboard-card-main{padding:12px 11px 8px}.dashboard-card-heading{gap:6px;margin-bottom:10px}.dashboard-card-heading h2{font-size:13px}.dashboard-primary{font-size:21px}.dashboard-area-icon{width:29px;height:29px}.dashboard-area-icon svg{width:21px;height:21px}.dashboard-card-heading .dashboard-chevron{font-size:18px}.dashboard-section{margin-top:12px}.dashboard-section-heading h2{font-size:17px}.reference-heading{padding:12px 12px 6px}#list-records{padding-inline:12px}.reference-dialog{margin-bottom:calc(12px + env(safe-area-inset-bottom,0px));}.reference-tabs button{font-size:12px}.dashboard-record-details{padding-inline:10px}}
@media(max-width:360px){#dashboard-cards{gap:8px}.dashboard-card-main{padding:10px 9px 8px}.dashboard-card-heading{gap:4px}.dashboard-card-heading h2{font-size:12px}.dashboard-area-icon{width:25px;height:25px}.dashboard-area-icon svg{width:18px;height:18px}.dashboard-primary{font-size:19px}.dashboard-secondary{font-size:12px}#dashboard-cards .dashboard-buttons{padding-inline:7px;gap:4px}#dashboard-cards .dashboard-buttons button{font-size:10.5px;padding-inline:2px}.reference-tabs button{font-size:11px}.reference-heading h2{font-size:15px}.reference-heading button{font-size:12px}#list-records .reference-row{gap:6px}.reference-badge{font-size:8px;padding:6px}.dashboard-section-heading a{font-size:12px}}
@media(prefers-reduced-motion:no-preference){.dashboard-card-main,.dashboard-next,.reference-more{transition:background .15s ease}}

/* Main feeding card and per-routine hygiene summary. */
#dashboard-cards .dashboard-feeding,#dashboard-cards .dashboard-hygiene{grid-column:1 / -1}
#dashboard-cards .dashboard-feeding .dashboard-primary{font-size:clamp(21px,5.5vw,27px);line-height:1.35;max-width:32ch}
#dashboard-cards .dashboard-feeding .dashboard-secondary{font-size:14px;margin-top:8px!important}
#dashboard-cards .dashboard-feeding .dashboard-buttons,#dashboard-cards .dashboard-hygiene .dashboard-buttons{max-width:330px;width:100%;padding-inline:12px}
#dashboard-cards .dashboard-feeding .dashboard-buttons button,#dashboard-cards .dashboard-hygiene .dashboard-buttons button{font-size:13px}
.dashboard-routines{list-style:none;padding:0;margin:0;display:grid;gap:0}
.dashboard-routines .dashboard-routine{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:7px 0;border-bottom:1px solid #5866a012;font-size:14px;line-height:1.45}
.dashboard-routines .dashboard-routine:last-child{border-bottom:0}
.dashboard-routines .dashboard-routine>span:first-child{min-width:0;overflow-wrap:anywhere;font-weight:600}
.dashboard-routines .dashboard-routine>span:last-child{flex:none;color:var(--text-muted,#526c65);font-size:13px;font-variant-numeric:tabular-nums}
.dashboard-routines-more{display:flex;align-items:center;min-height:44px;padding:8px 12px;font-size:13px;color:var(--hygiene-ink,#5866a0);text-decoration:none;font-weight:600}

#settings-notification-window{padding-bottom:22px;border-bottom:1px solid var(--border,#e1e7e1)}#settings-notification-window .columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.reference-tabs{grid-template-columns:1fr 1fr 1.4fr 2fr 1.3fr}.reference-tabs button{white-space:normal;line-height:1.35}@media(max-width:600px){.reference-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}}

.reference-field-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:14px}.reference-field-heading label{margin:0;min-width:0}.reference-field-heading .reference-quick-add{flex:none;min-height:44px;min-width:44px;padding:8px;font-size:13px;font-weight:500;background:transparent;border-color:transparent;color:var(--success,#346450)}.reference-quick-add:hover{background:var(--color-primary-soft)}.reference-field-heading+select{margin-top:0;min-width:0;max-width:100%}

/* Child identity: shared context, decorative celebrations only on the Dashboard. */
.child-page-heading>div,.dashboard-heading>div{min-width:0}
.child-page-heading .eyebrow,.dashboard-heading .eyebrow{display:block;font-size:11px;line-height:1.5;font-weight:750;letter-spacing:1.6px;color:var(--color-accent);overflow-wrap:anywhere}
.child-page-heading h1{margin:4px 0}
.dashboard-heading h1{overflow-wrap:anywhere}
.dashboard-heading[data-celebration="monthly"],.dashboard-heading[data-celebration="birthday"]{display:grid;grid-template-columns:minmax(0,1fr) 132px auto;gap:12px}
#dashboard-celebration-art{width:132px;height:132px;object-fit:contain;pointer-events:none;user-select:none}
.dashboard-heading[data-celebration="monthly"] #dashboard-age,.dashboard-heading[data-celebration="birthday"] #dashboard-age{font-size:18px;font-weight:650;color:var(--color-primary);margin-top:8px}
.dashboard-heading[data-celebration="birthday"] #dashboard-age{color:var(--text-muted,#846b36)}
#dashboard-celebration-message{font-size:13px;margin-top:2px}
@media(max-width:600px){
 .dashboard-heading[data-celebration="monthly"],.dashboard-heading[data-celebration="birthday"]{grid-template-columns:minmax(0,1fr) auto;gap:10px;min-height:126px;align-items:start}
 .dashboard-heading[data-celebration="monthly"]>div,.dashboard-heading[data-celebration="birthday"]>div{grid-column:1;grid-row:1}
 .dashboard-heading[data-celebration="monthly"]>button,.dashboard-heading[data-celebration="birthday"]>button{grid-column:2;grid-row:1;align-self:start}
 #dashboard-celebration-art{grid-column:2;grid-row:1;justify-self:center;align-self:end;width:64px;height:64px;margin-top:54px}
 .dashboard-heading[data-celebration="monthly"] #dashboard-age,.dashboard-heading[data-celebration="birthday"] #dashboard-age{font-size:16px}
}

/* Keep the complete DD/MM/YYYY date readable in activity grids. */
.activity-row{grid-template-columns:minmax(90px,1fr) repeat(calc(var(--activity-columns,4) - 1),minmax(0,1fr))}

/* Same date/time dialog for plain-date, time and timestamp fields. */
.date-picker-input,.time-picker-input{padding-right:42px;background-repeat:no-repeat;background-position:right 12px center;background-size:20px;min-height:44px}
.date-picker-input{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2328756c' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M7 3v4M17 3v4M3 10h18'/%3E%3C/svg%3E")}
.time-picker-input{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2328756c' stroke-width='1.7' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E")}

/* Native radios provide keyboard selection and a visible mark as well as color. */
.theme-choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px;min-width:0}
.theme-choices label{display:grid;grid-template-columns:16px 20px minmax(0,1fr);align-items:center;gap:6px;min-width:0;min-height:48px;padding:10px 8px;margin:0;border:1px solid var(--border,#b8c4bf);border-radius:10px;cursor:pointer;font-size:13px}
.theme-choices input{min-height:16px;width:16px;height:16px;flex:none;margin:0;accent-color:var(--color-primary)}
.theme-swatch{width:20px;height:20px;border-radius:50%;background:var(--color-primary-soft);border:2px solid var(--color-primary);flex:none}
.theme-choices label:has(input:checked){border-color:var(--color-primary);background:var(--color-primary-soft);box-shadow:inset 0 0 0 1px var(--color-primary)}
.theme-choices label:has(input:focus-visible){outline:3px solid var(--color-primary);outline-offset:2px}
#family-children .record>div:first-child{flex:1}
.child-edit select{min-height:48px}
.child-page-heading h1,.dashboard-heading h1{color:var(--color-primary)}
input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible,summary:focus-visible{outline-color:var(--color-primary)}
#family-children .record{display:grid;grid-template-columns:minmax(0,1fr) auto}#family-children .child-edit{grid-column:1/-1;width:100%}.theme-choices input:focus-visible{outline:none}

.theme-choices label>span:last-child{min-width:0;overflow-wrap:anywhere;line-height:1.4}
.theme-choices:has(input:disabled) label{cursor:default}
.appearance-child{padding:16px;margin:18px 0 0;border:1px solid var(--color-border-accent);border-radius:14px;background:var(--color-surface-tint);min-width:0}
.appearance-child legend{padding:0 6px;color:var(--color-primary);font-size:16px;overflow-wrap:anywhere}
.family-dashboard-card[data-theme]{border-color:var(--color-border-accent);background:linear-gradient(var(--color-surface-tint),#fff 160px)}
.family-dashboard-card[data-theme] .family-child-identity h2{color:var(--color-primary)}
@media(max-width:600px){.theme-choices{grid-template-columns:repeat(2,minmax(0,1fr))}.theme-choices label{grid-template-columns:16px minmax(0,1fr);column-gap:8px;row-gap:4px;font-size:14px}.theme-choices .theme-swatch{grid-column:2;grid-row:1}.theme-choices label>span:last-child{grid-column:1/-1}.theme-choices input{grid-column:1;grid-row:1}}
/* Shared secondary actions retain the active theme, independently of destructive red. */
:root{--color-secondary-text:var(--color-accent);--color-secondary-bg:color-mix(in srgb,var(--color-primary-soft) 45%,var(--surface,white));--color-secondary-border:color-mix(in srgb,var(--color-border-accent) 50%,var(--surface,white))}
.record-actions button:not(.danger),.chart-icon-action:not(.danger),button.action-secondary{color:var(--color-secondary-text);background:var(--color-secondary-bg);border:1px solid var(--color-secondary-border);font-weight:600}
.reference-dialog #list-menu button.action-secondary{border:1px solid var(--color-secondary-border)}
.record-actions button:not(.danger):hover,.chart-icon-action:not(.danger):hover,button.action-secondary:hover{background:var(--color-primary-soft)}
/* Independent health modules retain the existing functional card identity. */
.dashboard-health-state{min-width:0}
.dashboard-health-state+.dashboard-health-state{margin-top:7px;padding-top:7px;border-top:1px solid color-mix(in srgb,var(--area) 16%,transparent)}
.dashboard-health-icon{display:block;width:16px;height:16px;margin-bottom:3px;color:var(--area)}
.dashboard-health-value{font-size:16px;line-height:1.3;font-weight:700;overflow-wrap:anywhere}
.dashboard-health-context{margin-top:3px!important;font-size:12px;line-height:1.4;color:var(--text-muted,#526c65);font-variant-numeric:tabular-nums}
#dashboard-cards .dashboard-health .dashboard-buttons{flex-wrap:wrap}
#dashboard-cards .dashboard-health .dashboard-buttons button{flex:1 0 max-content;font-size:12px;padding-inline:5px;letter-spacing:normal}
/* Mobile: allow the denser health summary more room without changing desktop. */
@media(max-width:600px){
 #dashboard-cards{grid-template-columns:minmax(0,46fr) minmax(0,54fr)}
 .dashboard-health .dashboard-card-main{padding-block:10px 8px}
 .dashboard-health .dashboard-card-heading{margin-bottom:8px}
 .dashboard-health-state{display:grid;grid-template-columns:14px minmax(0,1fr);column-gap:5px;align-items:start}
 .dashboard-health-icon{grid-column:1;grid-row:1 / span 2;width:14px;height:14px;margin:3px 0 0}
 .dashboard-health-value,.dashboard-health-context{grid-column:2}
 .dashboard-health-value{font-size:15px;line-height:1.3}
 .dashboard-health-context{font-size:11px;line-height:1.4;margin-top:2px!important}
 .dashboard-health-time{white-space:nowrap}
 .dashboard-health-state+.dashboard-health-state{margin-top:6px;padding-top:6px}
 #dashboard-cards .dashboard-health .dashboard-buttons{flex-wrap:nowrap;padding-inline:6px;gap:4px}
 #dashboard-cards .dashboard-health .dashboard-buttons button{flex:1 1 0;font-size:11px;padding:6px 2px;letter-spacing:-.2px;overflow-wrap:normal}
}


/* Startup is separate from operational feedback and never contains family data. */
#application-shell[hidden],#startup[hidden]{display:none!important}
.startup{position:relative;isolation:isolate;display:grid;place-items:center;min-height:100vh;min-height:100dvh;padding:calc(24px + env(safe-area-inset-top,0px)) calc(24px + env(safe-area-inset-right,0px)) calc(48px + env(safe-area-inset-bottom,0px)) calc(24px + env(safe-area-inset-left,0px));overflow:hidden;background:radial-gradient(ellipse at 12% 10%,color-mix(in srgb,var(--splash-wave) 48%,white),transparent 52%),radial-gradient(ellipse at 92% 60%,color-mix(in srgb,var(--splash-halo) 50%,var(--surface,white)),transparent 56%),#fafbfd;color:var(--color-primary)}
.startup-content{position:relative;z-index:1;width:min(100%,390px);text-align:center}
.startup-content::before{content:none}
.startup-illustration{display:block;width:100%;height:auto;max-height:36vh;max-height:36dvh;object-fit:contain;margin:0 auto -5px;mask-image:linear-gradient(#000 95%,transparent)}
.startup h1{line-height:1;margin:0 auto 14px}
.startup-symbol{display:block;width:min(38vw,154px);height:auto;max-height:18vh;max-height:18dvh;object-fit:contain;margin:0 auto -12px}
.startup-lettering{display:block;width:min(71vw,278px);height:auto;max-height:10vh;max-height:10dvh;object-fit:contain;margin:auto}
#startup-message{font-size:15px;line-height:1.6;color:var(--color-accent);margin:0 0 18px}
.startup-indicator{display:inline-block;width:22px;height:22px;border:2px solid var(--color-border-accent);border-top-color:var(--color-primary);border-radius:50%}
.startup-indicator[hidden]{display:none}
#startup-error-text{font-size:16px;line-height:1.6;color:var(--color-accent);margin:0 0 20px}
#startup-retry{min-height:48px;max-width:100%;white-space:normal}
.startup-waves{position:absolute;z-index:0;bottom:0;left:0;width:100%;height:25.3%;min-height:100px;object-fit:fill;pointer-events:none;mask-image:linear-gradient(transparent,#000 12%);mix-blend-mode:multiply}
@media(prefers-reduced-motion:no-preference){.startup-indicator{animation:startup-spin 1s linear infinite}}
@keyframes startup-spin{to{transform:rotate(360deg)}}
@media(max-height:520px){.startup{padding-top:calc(12px + env(safe-area-inset-top,0px));padding-bottom:calc(20px + env(safe-area-inset-bottom,0px))}.startup-illustration{max-height:28vh;max-height:28dvh;margin-bottom:0}.startup h1{margin-bottom:8px}.startup-symbol{max-height:17vh;max-height:17dvh}.startup-lettering{max-height:10vh;max-height:10dvh}.startup-waves{height:16%;min-height:60px}#startup-message{margin-bottom:10px}.startup[data-state=ERROR] .startup-illustration{max-height:18dvh}}

/* All pages use the same approved horizontal v3 composition and optical axis. */
.brand-symbols{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}
.brand-on-dark{--brand-ink:#f8f7ff;--brand-edu:var(--color-border-accent)}
.brand .brand-horizontal{display:block;width:196px;height:auto;flex-shrink:0}
@media(max-width:600px){.brand .brand-horizontal{width:170px}header:has(#child-picker:not([hidden])) .brand .brand-horizontal{width:140px}}
@media(max-width:360px){header:has(#child-picker:not([hidden])) .brand .brand-horizontal{width:124px}}

/* Shared feeding SVG definitions take no layout space; timeline icons replace emoji. */
.feeding-symbols{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}
.timeline-event-icon{display:inline-block;width:1em;height:1em;vertical-align:-.12em;color:var(--feeding-ink,#28756c)}

.timeline-event-icon[data-area="diapers"]{color:var(--diaper-ink,#93651c)}
.timeline-event-icon[data-area="health"]{color:var(--health-ink,#ad5060)}
.timeline-event-icon[data-area="hygiene"]{color:var(--hygiene-ink,#5866a0)}

.dashboard-stool-details{display:block;margin-top:4px}

/* Shared operation feedback; reserve scroll space and keep navigation reachable. */
.feedback-announcement{position:fixed;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
#operation-feedback{position:fixed;z-index:20;left:max(12px,env(safe-area-inset-left,0px));right:max(12px,env(safe-area-inset-right,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px) + var(--keyboard-inset,0px));width:auto;max-width:520px;margin:0 auto;display:flex;align-items:flex-start;gap:8px;padding:12px 12px 12px 16px;border:1px solid var(--color-border-accent);border-left:4px solid var(--color-primary);border-radius:14px;background:var(--color-surface-tint);color:var(--text,#243e3b);box-shadow:0 6px 24px #243e3b24;text-align:left;font:14px/1.5 system-ui,sans-serif;max-height:40dvh;overflow:auto}
.feedback-text{flex:1;min-width:0;overflow-wrap:anywhere}.feedback-label{display:block;color:var(--color-primary);font-size:13px}.feedback-count{display:block;color:var(--text-muted,#526660);margin-top:4px}.feedback-count:empty{display:none}#status{margin:2px 0 0;white-space:pre-line;line-height:1.5}
#operation-feedback .feedback-close{flex:none;min-width:44px;min-height:44px;padding:4px;font-size:24px;line-height:1;border:0;background:transparent;color:inherit}
#operation-feedback:is([data-type=success],[data-type=info]){border-left-color:var(--color-primary)}#operation-feedback:is([data-type=success],[data-type=info]) .feedback-label{color:var(--color-primary)}
#operation-feedback[data-type=warning]{border-left-color:#94611d}#operation-feedback[data-type=warning] .feedback-label{color:var(--danger,#815215)}
#operation-feedback[data-type=error]{border-left-color:var(--danger,#a33732)}#operation-feedback[data-type=error] .feedback-label{color:var(--danger,#a33732)}
main{padding-bottom:var(--feedback-space,0px)}
dialog:has(>#operation-feedback:not([hidden])){padding-bottom:calc(24px + var(--feedback-space,0px))}
@media(max-width:600px){#operation-feedback:not(.feedback-in-dialog){bottom:calc(var(--bottom-nav-height,72px) + env(safe-area-inset-bottom,0px) + var(--keyboard-inset,0px) + 12px)}main{padding-bottom:calc(var(--bottom-nav-height,72px) + env(safe-area-inset-bottom,0px) + var(--keyboard-inset,0px) + 24px + var(--feedback-space,0px))}}

/* Compact timeline: separate edit and destructive targets, retaining row density. */
.dashboard-event{grid-template-columns:minmax(0,1fr) auto;gap:4px;padding:4px 0}
.dashboard-event-main{display:grid;grid-template-columns:38px 30px minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;min-height:44px;width:100%;padding:4px 0;border:0;border-radius:6px;background:transparent;color:inherit;text-align:left;font-size:13px;font-weight:400}
.dashboard-event-description{overflow-wrap:anywhere;line-height:1.5}.dashboard-event-main .dashboard-chevron{font-size:20px;color:var(--color-primary)}
.dashboard-event-delete{color:var(--danger,#a33732);display:grid;place-items:center;min-width:44px;min-height:44px;padding:10px;border:0;background:transparent}.dashboard-event-delete svg{width:18px;height:18px}
#record-delete-description{overflow-wrap:anywhere}

#record-delete-confirm .danger{color:var(--danger,#a33732);border-color:var(--danger-soft,#ebc8c5);background:var(--surface-subtle,#fff1ef)}

/* Keep register/history navigation usable at the narrowest mobile width. */
#health-page>.card>.tabs button,#hygiene-page>.card>.tabs button{min-height:44px;min-width:0;padding-inline:8px}
#health-history,#hygiene-history{margin-top:0}

.health-record-type{display:block}

#foods label{min-width:0;overflow-wrap:anywhere}#foods input{flex-shrink:0}#foods-label .reference-quick-add{margin-inline-start:8px}#list-records .reference-row strong{overflow-wrap:anywhere}

/* Reference confirmation reuses the editor modal and its destructive action style. */
#list-confirm-description{overflow-wrap:anywhere}

/* Shared child context: compact on narrow screens, with explicit historical mode. */
#child-context{max-width:960px;margin:0 auto 12px;padding:0 16px} .child-context-control{display:flex;align-items:center;gap:8px;min-width:0}#child-choice-label{display:flex;flex-direction:column;gap:4px;width:100%;max-width:360px}#child-choice{width:100%;min-width:0}#child-context-message{font-size:13px}#child-context-actions,#child-change-dialog .actions{flex-wrap:wrap}#child-change-dialog button{white-space:normal}#child-name{overflow-wrap:anywhere}
[data-child-mode=archived] #feeding,[data-child-mode=archived] #diaper-form,[data-child-mode=archived] #health-form,[data-child-mode=archived] #hygiene-form,[data-child-mode=archived] #appointment-form{opacity:.65}

/* Compact child navigation; context warnings keep their separate, conditional area. */
header{gap:10px}#child-picker{position:relative;margin-left:auto;min-width:0;max-width:45%}#child-choice{display:flex;align-items:center;gap:6px;max-width:100%;min-height:44px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:6px 8px}#child-options{position:absolute;right:0;top:calc(100% + 6px);width:min(320px,calc(100vw - 32px));max-height:60vh;overflow:auto;background:var(--surface,white);border:1px solid var(--color-border-accent);border-radius:12px;padding:6px;box-shadow:0 8px 24px #243e3b20;z-index:20}#child-options button{display:flex;align-items:center;gap:8px;width:100%;min-height:44px;text-align:left;white-space:normal;overflow-wrap:anywhere;border:0}#child-options [aria-checked=true]{background:var(--color-primary-soft)}#child-options [aria-checked=true]::after{content:'✓';margin-left:auto}#child-context:not(:has(#child-context-message:not(:empty))):has(#child-context-actions[hidden]):has(#child-leave-archive[hidden]){display:none}#child-context-message:empty{display:none}header .account-menu{flex-shrink:0}@media(max-width:600px){header:has(#child-picker:not([hidden])){padding-inline:12px;gap:6px}header:has(#child-picker:not([hidden])) .brand{gap:4px}header:has(#child-picker:not([hidden])) .brand>span{font-size:17px}header:has(#child-picker:not([hidden])) .brand .brand-mark{width:32px;height:32px}#child-picker{max-width:42%}#child-choice{font-size:12px}}

.child-avatar{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:0 0 30px;width:30px;height:30px;border-radius:50%;overflow:hidden;background:var(--surface-subtle,#dce9df);color:var(--text,#29433c);font-size:11px;font-weight:750;line-height:1;vertical-align:middle}.child-avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.child-avatar[data-color=blue]{background:var(--surface-subtle,#dce9f5)}.child-avatar[data-color=pink]{background:var(--surface-subtle,#f4dfe7)}.child-avatar[data-color=lavender]{background:var(--surface-subtle,#e7dff1)}.child-avatar[data-color=peach]{background:var(--warning-soft,#f5e1ce)}.child-avatar[data-color=sand]{background:var(--surface-subtle,#eae5cd)}.child-avatar[data-color=aqua]{background:var(--surface-subtle,#d4ebea)}.child-avatar[data-color=rose]{background:var(--surface-subtle,#eecdd0)}.child-choice-name{overflow:hidden;text-overflow:ellipsis;min-width:0}#child-options button>span:not(.child-avatar){min-width:0;overflow-wrap:anywhere}#family-children .record>div>.child-avatar{margin-right:8px}.avatar-dialog canvas{display:block;width:min(256px,100%);height:auto;margin:12px auto;border-radius:12px}.avatar-dialog input[type=file]{max-width:100%}.avatar-crop input{padding:0}.avatar-dialog .actions{flex-wrap:wrap}.avatar-error{color:var(--danger,#9a3028)}#child-choice .child-avatar{width:26px;height:26px;flex-basis:26px}

#child-options{position:fixed;right:auto}

@media(max-width:360px){header:has(#child-picker:not([hidden])) .brand>span{display:none}#child-picker{max-width:none;flex:1}#child-choice{width:100%}}

#child-options .child-option-label{display:flex;flex-direction:column;gap:3px}#child-options .child-option-age{font-size:12px;font-weight:400;line-height:1.35;color:var(--text-muted,#526760)}
/* BL-016 QA: local layouts reuse theme tokens, record actions and shared date controls. */
.growth-indicators{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;margin:16px 0}.growth-indicators button{min-width:0;white-space:normal;overflow-wrap:anywhere;padding:10px 4px;font-size:13px;min-height:44px}.growth-indicators button[aria-selected=true]{background:var(--color-primary);color:var(--on-primary,#fff);border-color:var(--color-primary)}
.growth-latest-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0}.growth-latest-metric{display:flex;flex-direction:column;gap:7px;background:var(--color-primary-soft);padding:14px;border-radius:12px;min-width:0;overflow-wrap:anywhere}.growth-latest-metric strong{font-size:21px}.growth-latest-metric time,.growth-latest-metric small{font-size:12px;color:var(--muted,#657870)}
.growth-metric-heading{display:flex;gap:6px;align-items:center;min-width:0}.growth-metric-icon{width:20px;height:20px;flex:none;color:var(--color-primary);fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.growth-detail-link{display:flex;flex-direction:column;gap:10px;width:100%;color:inherit;min-height:44px}.growth-detail-link time{font-weight:600}.growth-history-values{display:flex;flex-wrap:wrap;gap:8px}.growth-metric-chip{display:flex;flex-direction:column;gap:4px;border-radius:9px;padding:9px;background:var(--color-primary-soft);font-size:12px;min-width:0;overflow-wrap:anywhere}.growth-metric-chip .growth-metric-icon{width:16px;height:16px}.growth-record{display:block}
#growth-chart-summary{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}#growth-chart-summary.with-who{grid-template-columns:repeat(3,minmax(0,1fr))}#growth-chart-summary>div{display:flex;flex-direction:column;padding:12px}#growth-chart-summary>div>small:first-child{min-height:2.8em;line-height:1.4}#growth-chart-summary strong{font-size:19px;line-height:1.3;margin-top:6px}#growth-chart-summary .growth-tile-status{font-size:11px;margin-top:4px}#growth-chart-summary .growth-percentile{border:1px solid var(--color-border-accent);background:var(--color-surface-tint)}
.growth-window{border:1px solid var(--color-border-accent);border-radius:12px;background:var(--color-surface-tint);padding:14px;margin-top:18px}.growth-window-dates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.growth-window-dates>div{min-width:0}.growth-window-dates input{width:100%;min-width:0}.growth-window-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}.growth-window-actions button{padding:10px 5px;min-width:0;min-height:44px}.growth-window>p:last-child{font-size:12px;margin-bottom:0}
@media(max-width:600px){.growth-latest-grid{grid-template-columns:1fr}.growth-latest-metric{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 10px}.growth-latest-metric time,.growth-latest-metric small{grid-column:1/-1}.growth-latest-metric strong{font-size:19px;text-align:right}#growth-chart-summary.with-who{grid-template-columns:repeat(2,minmax(0,1fr))}#growth-chart-summary .growth-percentile{grid-column:1/-1}#growth-chart-summary strong{font-size:17px}.growth-indicators button{font-size:12px}.growth-window-dates input{padding-inline:6px;font-size:13px}}
@media(max-width:350px){.growth-window-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.growth-window-actions button:last-child{grid-column:1/-1}.growth-window{padding:10px}.growth-metric-chip{width:100%}.growth-latest-metric{grid-template-columns:1fr}.growth-latest-metric strong{text-align:left}}
.growth-indicator-compact{display:none}@media(max-width:600px){.growth-indicator-full{display:none}.growth-indicator-compact{display:inline}.growth-indicators button{overflow-wrap:normal}}
#growth-chart-summary .growth-percentile{background:var(--surface-subtle,#f2eef7);border-color:#e1d8ea;color:var(--text-muted,#614d6f)}
/* BL-016 v6: the editor and WHO help stay local to their panels. */
#growth-form{margin-top:24px;padding-top:18px;border-top:1px solid var(--color-border-accent)}
#growth-form-error{color:var(--danger,#a33333);overflow-wrap:anywhere}
#growth-who-help{margin-top:18px;color:var(--muted,#657870)}
#growth-who-help summary{cursor:pointer;min-height:44px;padding:12px 0;color:var(--color-primary);font-size:13px}
#growth-who-help summary:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px;border-radius:4px}
#growth-who-help-content{font-size:13px;line-height:1.5}
/* BL-015: functional sleep identity remains independent of the child's theme. */
:root{--sleep-area:#67439b;--sleep-tint:#e8dcf7}
[data-theme=blue]{--sleep-area:#64429a;--sleep-tint:#e8ddf7}
[data-theme=pink]{--sleep-area:#70479e;--sleep-tint:#eddef8}
[data-theme=lavender]{--sleep-area:#62408f;--sleep-tint:#e7d9f5}
[data-theme=peach]{--sleep-area:#70509b;--sleep-tint:#efe2f8}
#dashboard-cards .dashboard-sleep,.dashboard-event-icon.dashboard-sleep{--area:var(--sleep-area);--tint:var(--sleep-tint)}
#dashboard-cards .dashboard-sleep{grid-column:1/-1}
#dashboard-cards .dashboard-sleep .dashboard-buttons{max-width:330px;width:100%;padding-inline:12px}
#sleep-page .card{margin-block:14px}#sleep-page .actions{flex-wrap:wrap}#sleep-page input,#sleep-page select,#sleep-page textarea{max-width:100%;min-width:0}#sleep-page .columns>div{min-width:0}#sleep-page .card p{overflow-wrap:anywhere}
#sleep-interruption{max-width:min(560px,calc(100vw - 24px))}#sleep-interruption form{min-width:0}#sleep-interruption .actions{flex-wrap:wrap}
.sleep-chart svg{width:100%;height:auto}.sleep-chart details p{font-size:13px}
#sleep-warning,#sleep-error{color:var(--danger,#8a440f)}#sleep-settings .columns>div{min-width:0}
#sleep-register>section.card,#sleep-records>.card{padding:20px}#sleep-page input[type=checkbox],#sleep-settings input[type=checkbox]{width:20px;height:20px;accent-color:var(--color-primary)}#sleep-page label:has(input[type=checkbox]),#sleep-settings label:has(input[type=checkbox]){display:flex;align-items:center;gap:8px}
/* Sono follows the existing health/hygiene card, history and picker structure. */
#sleep-page>.card{margin-block:0}#sleep-summary{padding:28px}#sleep-summary>section+section{margin-top:24px;padding-top:20px;border-top:1px solid var(--border,#e1e7e1)}#sleep-summary .actions{margin-top:18px}.sleep-today-indicators{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-block:24px}.sleep-today-indicators>div{padding:16px;background:var(--color-surface-tint);border-radius:12px}.sleep-today-indicators span{display:block;font-size:12px;color:var(--text-muted,#657870)}.sleep-today-indicators strong{display:block;margin-top:8px;font-size:20px}#sleep-register .sleep-current-tip{padding:20px 28px 0;font-size:13px}#sleep-register .sleep-current-tip p{margin-top:0}#sleep-register #sleep-active-option{margin-top:18px}#sleep-page #sleep-history{padding:28px}#sleep-page .sleep-record-content{min-width:0;flex:1}#sleep-page .sleep-record-content>p{margin:6px 0}#sleep-page .sleep-record-content small{color:var(--text-muted,#798981)}#sleep-page .sleep-details{margin-top:12px;font-size:13px}#sleep-page .sleep-details summary{cursor:pointer;min-height:44px;padding-block:12px;color:var(--color-primary)}#sleep-page .sleep-history-date{font-size:14px;margin:20px 0 0}#sleep-page .sleep-details .record{gap:12px}#sleep-page #sleep-active-hint{display:block}#sleep-page #sleep-active-hint[hidden]{display:none}#sleep-night-choice .actions{flex-wrap:wrap}
@media(max-width:600px){#sleep-summary,#sleep-page #sleep-history{padding:20px}#sleep-register .sleep-current-tip{padding:20px 20px 0}.sleep-today-indicators{gap:10px}.sleep-today-indicators>div{padding:12px}.sleep-today-indicators strong{font-size:17px}}
/* Dashboard Hoje only: preserve geometry, theme colours and the full Hoje page. */
#dashboard-events time{font-weight:600}
#dashboard-events .timeline-description,#dashboard-events .timeline-complement{font-weight:400}
#dashboard-events .timeline-primary{font-weight:600}
#dashboard-events .timeline-module{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
#sleep-summary .sleep-current .actions>#sleep-quick{flex:1}
.field-error{color:var(--danger,#a33333);font-size:.875rem;margin:.35rem 0 .75rem;overflow-wrap:anywhere}
input[aria-invalid=true],select[aria-invalid=true],textarea[aria-invalid=true],button[aria-invalid=true],[role=listbox][aria-invalid=true]{border-color:#a33333;outline:1px solid #a33333;outline-offset:1px}

/* Approved skin identity, independent from luminosity. */
[data-theme="ocean"]{--skin-primary:#0755d7;--color-primary:var(--skin-primary);--color-primary-soft:color-mix(in srgb,#28BEFA 12%,white);--color-accent:var(--color-primary);--color-surface-tint:color-mix(in srgb,#28BEFA 3%,white);--color-border-accent:#28BEFA;--brand-body-start:#0755D7;--brand-body-mid:#007BF2;--brand-body-soft:#28BEFA;--brand-body-light:#72E5FE;--brand-bubble-light:#A9DEFF;--brand-bubble-mid:#4CA6FC;--brand-bubble-dark:#1D64DA;--brand-outer-light:#FFE8AE;--brand-outer-mid:#FFBA39;--brand-outer-dark:#F58B16;--brand-edu:#168CED;--brand-ink:#101C58;--splash-halo:var(--color-primary-soft);--splash-wave:#FFE8AE}
[data-theme="green"]{--skin-primary:#08724f;--color-primary:var(--skin-primary);--color-primary-soft:color-mix(in srgb,#32D8A0 12%,white);--color-accent:var(--color-primary);--color-surface-tint:color-mix(in srgb,#32D8A0 3%,white);--color-border-accent:#32D8A0;--brand-body-start:#07805A;--brand-body-mid:#0BB27D;--brand-body-soft:#32D8A0;--brand-body-light:#9DF1BF;--brand-bubble-light:#AEF6CE;--brand-bubble-mid:#45D8A1;--brand-bubble-dark:#007D60;--brand-outer-light:#FFE1DE;--brand-outer-mid:#FF91A8;--brand-outer-dark:#E84C76;--brand-edu:#14B784;--brand-ink:#103B3B;--splash-halo:var(--color-primary-soft);--splash-wave:#FFE1DE}
[data-theme="turquoise"]{--skin-primary:#006b78;--color-primary:var(--skin-primary);--color-primary-soft:color-mix(in srgb,#49E0D7 12%,white);--color-accent:var(--color-primary);--color-surface-tint:color-mix(in srgb,#49E0D7 3%,white);--color-border-accent:#49E0D7;--brand-body-start:#006E8C;--brand-body-mid:#00B6BC;--brand-body-soft:#49E0D7;--brand-body-light:#B7FAEA;--brand-bubble-light:#ABF8F5;--brand-bubble-mid:#38CECB;--brand-bubble-dark:#008C99;--brand-outer-light:#FFE8D9;--brand-outer-mid:#FF9B99;--brand-outer-dark:#F25481;--brand-edu:#13C3BF;--brand-ink:#113747;--splash-halo:var(--color-primary-soft);--splash-wave:#FFE8D9}
[data-theme="rose"]{--skin-primary:#ab075b;--color-primary:var(--skin-primary);--color-primary-soft:color-mix(in srgb,#F55DB2 12%,white);--color-accent:var(--color-primary);--color-surface-tint:color-mix(in srgb,#F55DB2 3%,white);--color-border-accent:#F55DB2;--brand-body-start:#AB075B;--brand-body-mid:#DE267F;--brand-body-soft:#F55DB2;--brand-body-light:#FFC3DD;--brand-bubble-light:#FFD2E8;--brand-bubble-mid:#EF7FB5;--brand-bubble-dark:#A9166D;--brand-outer-light:#D3FFF0;--brand-outer-mid:#6EE0C2;--brand-outer-dark:#12B896;--brand-edu:#EB3F91;--brand-ink:#4B1838;--splash-halo:var(--color-primary-soft);--splash-wave:#D3FFF0}
[data-theme="yellow"]{--skin-primary:#855000;--color-primary:var(--skin-primary);--color-primary-soft:color-mix(in srgb,#FFD54D 12%,white);--color-accent:var(--color-primary);--color-surface-tint:color-mix(in srgb,#FFD54D 3%,white);--color-border-accent:#FFD54D;--brand-body-start:#D27A00;--brand-body-mid:#F5AA0B;--brand-body-soft:#FFD54D;--brand-body-light:#FFF3A9;--brand-bubble-light:#FFE9A0;--brand-bubble-mid:#FACC4D;--brand-bubble-dark:#C47B00;--brand-outer-light:#E9D9FF;--brand-outer-mid:#B37BF8;--brand-outer-dark:#7433DC;--brand-edu:#DE8B00;--brand-ink:#4B270F;--splash-halo:var(--color-primary-soft);--splash-wave:#E9D9FF}
[data-theme="coral"]{--skin-primary:#a92f38;--color-primary:var(--skin-primary);--color-primary-soft:color-mix(in srgb,#FF9A87 12%,white);--color-accent:var(--color-primary);--color-surface-tint:color-mix(in srgb,#FF9A87 3%,white);--color-border-accent:#FF9A87;--brand-body-start:#C83E46;--brand-body-mid:#EE665F;--brand-body-soft:#FF9A87;--brand-body-light:#FFD4A8;--brand-bubble-light:#FFD4CA;--brand-bubble-mid:#FA9387;--brand-bubble-dark:#CC4749;--brand-outer-light:#E0FFF7;--brand-outer-mid:#78DDCE;--brand-outer-dark:#22BDB3;--brand-edu:#E65354;--brand-ink:#512326;--splash-halo:var(--color-primary-soft);--splash-wave:#E0FFF7}

:root{--surface:#fff;--on-primary:#fff;--page-bg:var(--color-surface-tint);--native-bar:var(--skin-primary)}
html{background:var(--page-bg)}body{background:var(--page-bg)}.primary,.tabs button[aria-selected=true],.tabs button[aria-pressed=true]{background:var(--skin-primary);color:var(--on-primary)}
#appearance-form{padding:0}.appearance-selected{font-size:13px;font-weight:500}.theme-name{line-height:1.3}.theme-choices label{position:relative}.theme-choices label:has(input:checked)::after{content:'✓';position:absolute;top:2px;right:5px;font-weight:800;color:var(--color-primary)}
@media(max-width:600px){.appearance-child{padding:10px}.theme-choices{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.theme-choices label{display:flex;justify-content:center;align-items:center;min-height:48px;padding:8px 4px}.theme-choices input{position:absolute;opacity:0;width:1px;height:1px;min-height:0}.theme-choices .theme-swatch{width:27px;height:27px;flex:none}.theme-name{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden;white-space:nowrap}}
html[data-mode=dark]{--page-bg:#121722;--surface:#1c2432;--surface-subtle:#242f40;--text:#e6edf5;--text-muted:#b8c5d7;--border:#405069;--on-primary:#fff;--native-bar:#121722;--brand-ink:#f5f7ff;--brand-edu:var(--color-primary)}
html[data-mode=dark],html[data-mode=dark] [data-theme]{--color-primary:color-mix(in srgb,var(--skin-primary) 42%,white);--color-accent:var(--color-primary);--color-primary-soft:color-mix(in srgb,var(--skin-primary) 18%,var(--surface));--color-surface-tint:var(--page-bg);--color-border-accent:color-mix(in srgb,var(--skin-primary) 55%,white)}
html[data-mode=dark]{--text:#e6edf5;--text-muted:#b8c5d7;--border:#405069;--danger:#ff9eaa;--danger-soft:#452a33;--feeding-ink:#81d5b8;--feeding-tint:#203930;--diaper-ink:#f3cc80;--diaper-tint:#3b3324;--health-ink:#f6a5b8;--health-tint:#3b2835;--hygiene-ink:#b4c3ff;--hygiene-tint:#29324c}
html[data-mode=dark] :is(input,textarea,select,dialog){background:var(--surface);color:var(--text);border-color:var(--border)}
html[data-mode=dark] :is(.card:not(.dashboard-card),.dashboard-section,.dashboard-events,.family-dashboard-card[data-theme],.account-options,#child-options,.datetime-modal,.reference-dialog,.record-dialog){background:var(--surface);color:var(--text);border-color:var(--border)}
html[data-mode=dark] :is(.muted,small,.chart-axis-label){color:var(--text-muted);fill:var(--text-muted)}
html[data-mode=dark] :is(.family-metric-label,.family-metric-detail,.family-appointment span){color:var(--text-muted)}
html[data-mode=dark] .family-hygiene-item{border-color:var(--border)}
html[data-mode=dark] .appearance-child{background:color-mix(in srgb,var(--skin-primary) 8%,var(--surface))}
html[data-mode=dark] .startup{background:radial-gradient(ellipse at 10% 12%,color-mix(in srgb,var(--skin-primary) 12%,transparent),transparent 60%),var(--page-bg)}
html[data-mode=dark] .startup-waves{opacity:.18;mix-blend-mode:normal}
html[data-mode=dark] :is(#operation-feedback,.feedback-text){background:var(--surface);color:var(--text)}
html[data-mode=dark] .brand-horizontal{--brand-ink:#f5f7ff}
html[data-appearance-pending] .startup{--color-primary:#6d7688;--color-accent:#6d7688;--color-border-accent:#a1aaba;--splash-halo:#eef0f4;--splash-wave:#e6eaf0;--brand-body-start:#6d7688;--brand-body-mid:#8a93a5;--brand-body-soft:#b4bbca;--brand-body-light:#dce0e7;--brand-edu:#8a93a5;--brand-bubble-light:#eef0f4;--brand-bubble-mid:#b4bbca;--brand-bubble-dark:#6d7688;--brand-outer-light:#eef0f4;--brand-outer-mid:#b4bbca;--brand-outer-dark:#6d7688}
html[data-mode=dark][data-appearance-pending] .startup{--color-accent:#bbc5d6}
html[data-mode=dark] svg [stroke='#dce6de']{stroke:var(--border)}html[data-mode=dark] svg [stroke='white']{stroke:var(--surface)}html[data-mode=dark] .chart-selected-day{fill:var(--color-primary)}

html[data-mode=dark]{--sleep-area:#cfb5f5;--sleep-tint:#322a43;--series-night:#bda0ec;--series-nap:#d9c5f5}
html[data-mode=dark] :is(.chart-axis-titles,.chart-selection){color:var(--text-muted)}

html[data-mode=dark]{--success:#83d6b7;--warning-soft:#3d3323;--warning-ink:#f4d291}html[data-mode=dark] #primary-nav button{color:var(--text-muted)}html[data-mode=dark] #primary-nav button.active{color:var(--color-primary)}html[data-appearance-pending]{--native-bar:#eef0f4}html[data-mode=dark][data-appearance-pending]{--native-bar:#121722}

.theme-swatch[data-theme="ocean"]{--swatch-main:#007BF2;--swatch-secondary:#FFBA39}
.theme-swatch[data-theme="green"]{--swatch-main:#0BB27D;--swatch-secondary:#FF91A8}
.theme-swatch[data-theme="turquoise"]{--swatch-main:#00B6BC;--swatch-secondary:#FF9B99}
.theme-swatch[data-theme="rose"]{--swatch-main:#DE267F;--swatch-secondary:#6EE0C2}
.theme-swatch[data-theme="yellow"]{--swatch-main:#F5AA0B;--swatch-secondary:#B37BF8}
.theme-swatch[data-theme="coral"]{--swatch-main:#EE665F;--swatch-secondary:#78DDCE}
.theme-swatch{position:relative;--swatch-main:var(--skin-primary);--swatch-secondary:var(--color-border-accent);background:radial-gradient(circle at 30% 20%,#fffd,transparent 26%),linear-gradient(140deg,color-mix(in srgb,var(--swatch-main) 30%,white),var(--swatch-main));border:1px solid color-mix(in srgb,var(--swatch-main) 65%,white);box-shadow:inset 1px 1px 3px #fff8}.theme-swatch::after{content:"";position:absolute;right:-3px;top:-3px;width:9px;height:9px;border-radius:50%;background:radial-gradient(circle at 30% 20%,#fff,var(--swatch-secondary) 70%);border:1px solid #ffffff80}

/* Gradients in the shared SVG sprite resolve at the document root. */
html[data-appearance-pending]{--skin-primary:#6d7688;--brand-body-start:#6d7688;--brand-body-mid:#8a93a5;--brand-body-soft:#b4bbca;--brand-body-light:#dce0e7;--brand-bubble-light:#eef0f4;--brand-bubble-mid:#b4bbca;--brand-bubble-dark:#6d7688;--brand-bubble-edge:#dce0e7;--brand-rim-light:#f0f2f5;--brand-rim-mid:#c4cad5;--brand-rim-blue:#c4cad5;--brand-rim-pink:#dce0e7;--brand-outer-light:#eef0f4;--brand-outer-mid:#b4bbca;--brand-outer-dark:#6d7688;--brand-ink:#334155;--brand-edu:#7b8494;--splash-halo:#eef0f4;--splash-wave:#e6eaf0}html[data-mode=dark][data-appearance-pending]{--brand-ink:#e4e8ef}
html[data-mode=dark] .child-avatar[data-color=sage]{background:color-mix(in srgb,#dce9df 22%,var(--surface));color:var(--text)}
html[data-mode=dark] .child-avatar[data-color=blue]{background:color-mix(in srgb,#dce9f5 22%,var(--surface));color:var(--text)}
html[data-mode=dark] .child-avatar[data-color=pink]{background:color-mix(in srgb,#f4dfe7 22%,var(--surface));color:var(--text)}
html[data-mode=dark] .child-avatar[data-color=lavender]{background:color-mix(in srgb,#e7dff1 22%,var(--surface));color:var(--text)}
html[data-mode=dark] .child-avatar[data-color=peach]{background:color-mix(in srgb,#f5e1ce 22%,var(--surface));color:var(--text)}
html[data-mode=dark] .child-avatar[data-color=sand]{background:color-mix(in srgb,#eae5cd 22%,var(--surface));color:var(--text)}
html[data-mode=dark] .child-avatar[data-color=aqua]{background:color-mix(in srgb,#d4ebea 22%,var(--surface));color:var(--text)}
html[data-mode=dark] .child-avatar[data-color=rose]{background:color-mix(in srgb,#eecdd0 22%,var(--surface));color:var(--text)}

@media(max-width:600px){.theme-choices input{inset:0;width:100%;height:100%;min-height:0;z-index:1}.theme-choices .theme-swatch{pointer-events:none}}

html[data-mode=dark] :is(.dt-days,.dt-options) button[aria-pressed=true]{background:var(--skin-primary);color:var(--on-primary)}html[data-mode=dark]{--series-milk:#ddc49a;--series-solids:#f8ae75;--series-pee:#e6cd6f;--series-poo:#c5916a}

/* Keep module hues while ensuring small action labels meet text contrast. */
html[data-mode=light] #dashboard-cards .dashboard-buttons button{color:color-mix(in srgb,var(--area) 85%,#000)}

/* The fixed approved illustration is withheld until the session palette is resolved. */
html[data-appearance-pending] .startup-illustration{visibility:hidden}
