*{box-sizing:border-box}:root{--bg:#f4f6f3;--panel:#fff;--panel2:#edf2ed;--text:#18211b;--muted:#6d776f;--line:#dce3dc;--accent:#66816c;--accent2:#dbe7dc;--danger:#b84b4b;--shadow:0 12px 40px rgba(25,38,29,.08);--r:12px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--text)}html,body{margin:0;min-height:100%;background:var(--bg)}body[data-theme=ocean]{--bg:#f1f6f8;--panel2:#e3eef2;--accent:#527d8c;--accent2:#d8e9ee}body[data-theme=rose]{--bg:#faf4f5;--panel2:#f5e7e9;--accent:#9a6871;--accent2:#efdadd}body[data-theme=lavender]{--bg:#f6f4fa;--panel2:#ebe7f3;--accent:#756b94;--accent2:#e2ddef}body[data-theme=sand]{--bg:#f8f5ef;--panel2:#efe8da;--accent:#8a7656;--accent2:#e9dfcd}body[data-theme=slate]{--bg:#f1f3f5;--panel2:#e2e7eb;--accent:#576776;--accent2:#d8e0e6}body[data-theme=mint]{--bg:#eff8f5;--panel2:#def0e9;--accent:#4e8270;--accent2:#d4ebe3}body[data-theme=sunset]{--bg:#faf3ef;--panel2:#f4e2d8;--accent:#a2654d;--accent2:#efd8cb}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh;display:grid;grid-template-columns:250px 1fr}.sidebar{position:sticky;top:0;height:100vh;padding:22px 16px;border-right:1px solid var(--line);background:rgba(255,255,255,.78);backdrop-filter:blur(18px);display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px}.app-logo{width:54px;height:54px;object-fit:contain}.brand .app-logo{width:44px;height:44px}.brand small{display:block;color:var(--muted)}.nav{display:grid;gap:6px;margin-top:28px}.nav button,.ghost{border:0;background:transparent;color:var(--muted);padding:12px;border-radius:10px;text-align:left}.nav button{display:flex;gap:12px;align-items:center}.nav button i{font-style:normal;width:22px;text-align:center}.nav button.active,.nav button:hover,.ghost:hover{background:var(--panel2);color:var(--text)}.logout{margin-top:auto}.content{padding:26px 30px 110px;max-width:1500px;width:100%;margin:auto}.mobile-header,.mobile-nav,.mobile-drawer{display:none}.topbar,.section-head{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:20px}.actions,.date-strip{display:flex;gap:8px;align-items:center}.date-strip{justify-content:space-between;background:var(--panel);border:1px solid var(--line);padding:8px;border-radius:12px;margin-bottom:18px}.icon-btn,.secondary,.primary,.danger{border:1px solid var(--line);background:var(--panel);border-radius:10px;padding:10px 13px;color:var(--text)}.primary{background:var(--text);color:#fff;border-color:var(--text)}.danger{color:var(--danger)}h1,h2,h3,p{margin-top:0}.muted{color:var(--muted)}.tiny{font-size:12px}.grid{display:grid;gap:14px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:18px;box-shadow:var(--shadow)}.metrics{margin-bottom:18px}.metric strong{font-size:28px;display:block;margin-top:8px}.metric span{color:var(--muted);font-size:13px}.quick-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}.quick{border:1px solid var(--line);background:var(--panel);border-radius:12px;padding:16px 10px;text-align:center}.quick i{font-style:normal;font-size:24px;display:block;margin-bottom:8px}.visit-quick{border-color:#7d73a7;background:#f1eef9}.main-grid{margin-top:18px}.timeline{display:grid;gap:9px}.event{display:grid;grid-template-columns:64px 38px 1fr auto;align-items:center;gap:12px;padding:12px;border:1px solid var(--line);border-radius:10px}.event-icon{width:36px;height:36px;border-radius:9px;background:var(--panel2);display:grid;place-items:center}.event small{display:block;color:var(--muted)}.calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:7px;margin-bottom:18px}.weekday{text-align:center}.daycell{min-height:112px;border:1px solid var(--line);background:var(--panel);border-radius:10px;padding:10px;cursor:pointer}.daycell.other{opacity:.45}.daycell.today{outline:2px solid var(--accent)}.dots{display:flex;gap:4px;flex-wrap:wrap;margin-top:12px}.dot,.visit-dot{width:7px;height:7px;border-radius:50%;background:var(--accent)}.visit-dot{width:10px;height:10px;border-radius:2px;background:#7d73a7}.visit-section{margin:18px 0}.visit-section .section-head{margin-bottom:10px}.visit-card{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:start;border:1px solid #cfc8e5;background:#faf8ff;border-left:6px solid #7d73a7;border-radius:12px;padding:16px;margin-bottom:10px}.visit-card h3{margin:4px 0}.visit-card p{margin-bottom:6px;color:var(--muted)}.visit-badge{text-transform:capitalize;font-size:12px;font-weight:700;padding:6px 8px;border-radius:999px;background:#e8e3f7}.status-cancelled{opacity:.65;border-left-color:#9b6a6a}.status-postponed{border-left-color:#b28a51}.status-active{border-left-color:#4e8270}.modal-backdrop{position:fixed;inset:0;background:rgba(12,18,14,.5);display:grid;place-items:center;padding:18px;z-index:30}.modal{width:min(600px,100%);max-height:92vh;overflow:auto;background:var(--panel);border-radius:14px;border:1px solid var(--line);box-shadow:0 30px 90px rgba(0,0,0,.24);padding:20px}.modal-head{display:flex;justify-content:space-between;align-items:center}.stack{display:grid;gap:14px}label{display:grid;gap:6px;font-size:13px;color:var(--muted)}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:10px;padding:11px 12px;background:var(--panel);color:var(--text)}textarea{min-height:100px;resize:vertical}.radio-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.radio-card{border:1px solid var(--line);border-radius:10px;padding:12px}.radio-card.selected{background:var(--panel2);border-color:var(--accent)}.login-page{min-height:100vh;display:grid;place-items:center;padding:20px}.login-card{width:min(430px,100%);background:var(--panel);border:1px solid var(--line);padding:34px;border-radius:16px;box-shadow:var(--shadow);text-align:center}.login-card .app-logo{width:110px;height:110px;margin-bottom:10px}.login-card form{text-align:left;margin-top:24px}.theme-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.theme-swatch{height:62px;border-radius:10px;border:2px solid transparent;background:var(--panel2)}.theme-swatch.active{border-color:var(--accent)}.notes-box textarea{min-height:150px}.notes-box .primary{margin-top:10px}.alert,.toast{padding:11px;border-radius:9px;background:var(--panel2)}.alert.error{background:#f9e9e9;color:#8a3434}.toast{position:fixed;right:18px;top:18px;z-index:50;box-shadow:var(--shadow)}.empty{text-align:center;padding:32px;color:var(--muted)}.fatal{margin:30px}
@media(max-width:920px){.app-shell{display:block}.sidebar{display:none}.mobile-header{position:sticky;top:0;z-index:15;display:grid;grid-template-columns:44px 40px 1fr 44px;align-items:center;gap:8px;padding:10px 12px;background:rgba(255,255,255,.9);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.mobile-header .app-logo{width:38px;height:38px}.content{padding:16px 12px 110px}.mobile-nav{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;bottom:0;left:0;right:0;z-index:20;background:rgba(255,255,255,.94);backdrop-filter:blur(18px);border-top:1px solid var(--line);padding:7px 5px calc(7px + env(safe-area-inset-bottom))}.mobile-nav button{border:0;background:transparent;color:var(--muted);padding:5px 2px;font-size:11px}.mobile-nav i{font-style:normal;display:block;font-size:20px}.mobile-nav button.active{color:var(--text);font-weight:700}.mobile-drawer{display:block;position:fixed;inset:0;background:rgba(0,0,0,.35);z-index:40;opacity:0;pointer-events:none;transition:.2s}.mobile-drawer.open{opacity:1;pointer-events:auto}.drawer-panel{width:min(320px,86vw);height:100%;background:var(--panel);padding:20px;transform:translateX(-100%);transition:.2s;display:grid;align-content:start;gap:8px}.mobile-drawer.open .drawer-panel{transform:translateX(0)}.drawer-panel button{border:0;background:var(--panel2);padding:13px;text-align:left;border-radius:10px}.topbar{align-items:flex-start;flex-direction:column}.actions{width:100%}.actions select{flex:1}.quick-grid{grid-template-columns:repeat(3,1fr)}.grid.four{grid-template-columns:repeat(2,1fr)}.grid.two{grid-template-columns:1fr}.event{grid-template-columns:52px 36px 1fr}.event>button{display:none}.calendar{gap:3px}.daycell{min-height:82px;padding:7px}.visit-card{grid-template-columns:1fr}.visit-card .ghost{display:block}.section-head{align-items:flex-start}}
@media(max-width:520px){.quick-grid{grid-template-columns:repeat(2,1fr)}.metric strong{font-size:22px}.theme-grid{grid-template-columns:repeat(2,1fr)}.daycell small{font-size:9px}.login-card{padding:26px 20px}}
/* BinkStat v4 brand, appointments, and analytics */
:root{--logo-filter:sepia(.22) saturate(1.8) hue-rotate(82deg) brightness(.78);--visit:#7768a3}
body[data-theme=ocean]{--logo-filter:sepia(.35) saturate(2.1) hue-rotate(145deg) brightness(.74)}
body[data-theme=rose]{--logo-filter:sepia(.42) saturate(1.8) hue-rotate(292deg) brightness(.78)}
body[data-theme=lavender]{--logo-filter:sepia(.4) saturate(1.7) hue-rotate(205deg) brightness(.75)}
body[data-theme=sand]{--logo-filter:sepia(.5) saturate(1.6) hue-rotate(355deg) brightness(.72)}
body[data-theme=slate]{--logo-filter:sepia(.12) saturate(1.25) hue-rotate(165deg) brightness(.68)}
body[data-theme=mint]{--logo-filter:sepia(.38) saturate(1.9) hue-rotate(105deg) brightness(.73)}
body[data-theme=sunset]{--logo-filter:sepia(.5) saturate(2.2) hue-rotate(325deg) brightness(.78)}
.brand-logo{display:block;object-fit:contain;filter:var(--logo-filter);transition:filter .2s ease}.brand-logo-wordmark{width:178px;height:auto;max-height:64px}.brand-logo-icon{width:44px;height:44px}.sidebar .brand{display:grid;justify-items:start;gap:5px}.sidebar .brand small{padding-left:8px}.login-card .brand-logo-wordmark{width:min(310px,90%);margin:0 auto 18px}.mobile-header .brand-logo-icon{width:38px;height:38px}.drawer-panel .brand{display:grid;gap:5px;margin-bottom:16px}.drawer-panel .brand-logo-wordmark{width:190px}
.calendar{display:block}.cal-head,.cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.cal-head{margin-bottom:6px}.cal-head b{text-align:center;color:var(--muted);font-size:12px;padding:6px}.cal-cell{min-height:112px;border:1px solid var(--line);background:var(--panel);border-radius:10px;padding:10px;text-align:left;color:var(--text);position:relative}.cal-cell.blank{visibility:hidden}.cal-cell.today{outline:2px solid var(--accent)}.cal-cell>span{font-weight:700}.cal-cell small{display:block;color:var(--muted);margin-top:8px}.cal-dots{display:flex;gap:4px;flex-wrap:wrap;margin-top:12px;align-items:center}.dot{width:7px;height:7px;border-radius:50%;background:var(--accent)}.dot-diaper{background:#6f8ba0}.dot-mood{background:#c28b4e}.dot-spitup{background:#a36f75}.dot-sleep{background:#7d73a7}.visit-marker{width:15px;height:15px;display:grid;place-items:center;border-radius:3px;background:var(--visit);color:white;font-style:normal;font-size:11px;font-weight:800}
.visit-actions{display:flex;gap:6px;align-items:center}.visit-measures{display:flex;gap:10px;flex-wrap:wrap;color:var(--muted)}.visit-main{min-width:0}.visit-badge.status-cancelled{background:#f0dddd}.visit-badge.status-postponed{background:#f3e6ce}.visit-badge.status-active{background:#d9ece5}.modal-wide{width:min(820px,100%)}.visit-detail-hero{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px;background:var(--panel2);border-radius:12px;margin:12px 0 18px}.visit-detail-hero small,.visit-detail-hero strong{display:block}.visit-detail-hero strong{margin-top:5px}.detail-grid{display:grid;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:12px;overflow:hidden}.detail-row{display:grid;grid-template-columns:180px 1fr;gap:18px;background:var(--panel);padding:16px}.detail-row span{color:var(--muted);font-size:13px}.detail-row div{white-space:pre-wrap;line-height:1.55}.measure-field{border:1px solid var(--line);border-radius:10px;padding:10px 12px;margin:0}.measure-field legend{font-size:13px;color:var(--muted);padding:0 5px}.measure-field small{color:var(--muted)}.weight-pair{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.reports-layout{display:grid;grid-template-columns:minmax(280px,350px) minmax(0,1fr);gap:18px;align-items:start}.report-builder{position:sticky;top:20px;display:grid;gap:13px}.preset-row{display:flex;gap:7px;flex-wrap:wrap}.chip{border:1px solid var(--line);background:var(--panel2);border-radius:999px;padding:7px 10px;color:var(--text)}.report-output{min-height:460px}.report-title{display:flex;justify-content:space-between;gap:12px}.report-title p{color:var(--muted)}.report-canvas{display:block;width:100%;height:380px}.saved-section{margin-top:20px}.saved-report{display:flex;justify-content:space-between;align-items:center;gap:12px;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:14px;margin-bottom:8px}.saved-report small{display:block;color:var(--muted);margin-top:4px}.saved-report>div:last-child{display:flex;gap:6px}.matrix-wrap{overflow-x:auto;padding-top:12px}.matrix-hours{display:grid;grid-template-columns:52px repeat(24,20px);gap:3px;margin-bottom:4px}.matrix-hours:before{content:""}.matrix-hours span{text-align:center;font-size:9px;color:var(--muted)}.matrix-row{display:grid;grid-template-columns:52px repeat(24,20px);gap:3px;margin-bottom:3px;align-items:center}.matrix-row b{font-size:11px;color:var(--muted)}.matrix-row i{height:20px;background:color-mix(in srgb,var(--accent) calc(var(--heat)*100%),var(--panel2));border-radius:3px;border:1px solid color-mix(in srgb,var(--accent) calc(var(--heat)*35%),var(--line))}
@media(max-width:920px){.brand-logo-wordmark{width:165px}.reports-layout{grid-template-columns:1fr}.report-builder{position:static}.report-output{min-height:380px}.report-canvas{height:320px}.visit-actions{justify-content:flex-start}.cal-cell{min-height:86px;padding:7px}.cal-head,.cal-grid{gap:3px}}
@media(max-width:620px){.login-card .brand-logo-wordmark{width:250px}.detail-row{grid-template-columns:1fr;gap:5px}.visit-detail-hero{align-items:flex-start;flex-direction:column}.saved-report{align-items:flex-start;flex-direction:column}.cal-cell small{display:none}.cal-cell{min-height:68px}.cal-dots{margin-top:8px}.dot{width:5px;height:5px}.report-canvas{height:280px}.matrix-hours,.matrix-row{grid-template-columns:40px repeat(24,16px)}.matrix-row i{height:16px}.visit-card{padding:14px}.visit-actions{width:100%}.visit-actions button{flex:1}}
/* BinkStat v4.1 interface polish */
.ui-icon{width:22px;height:22px;display:inline-block;vertical-align:middle;flex:0 0 auto;color:var(--accent)}
.nav button .ui-icon,.mobile-nav .ui-icon,.drawer-panel button .ui-icon{width:23px;height:23px}
.nav button{min-height:48px;padding:12px 14px;gap:14px;font-weight:600}
.nav button.active{background:var(--accent2);color:var(--text);box-shadow:inset 3px 0 0 var(--accent)}
.nav button.active .ui-icon{color:var(--accent)}
.brand-block{display:grid!important;gap:16px!important}
.sidebar .brand-logo-wordmark{width:190px}
.account-card{width:100%;display:flex;align-items:center;gap:10px;padding:10px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}
.account-avatar,.mobile-avatar{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:var(--accent2);color:var(--accent);font-size:12px;font-weight:800;letter-spacing:.04em;flex:0 0 auto}
.account-copy{display:grid;min-width:0}.account-copy small{padding:0!important;font-size:10px;text-transform:uppercase;letter-spacing:.08em}.account-copy strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:14px}
.logout{display:flex;align-items:center;gap:12px;width:100%;min-height:46px;border:1px solid transparent!important;font-weight:600}.logout:hover{border-color:var(--line)!important}.logout .ui-icon{color:var(--muted)}
.quick{display:grid;justify-items:center;align-content:center;gap:9px;min-height:78px;font-weight:600;color:var(--text)}.quick .ui-icon{width:27px;height:27px}.quick:hover{border-color:var(--accent);background:var(--accent2)}
.event-icon .ui-icon{width:21px;height:21px}.event-icon{color:var(--accent)}
.icon-btn{display:inline-grid;place-items:center;min-width:42px;min-height:42px}.icon-btn .ui-icon{width:21px;height:21px}
.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;gap:7px}.primary .ui-icon{color:currentColor}.secondary .ui-icon{color:var(--accent)}
.modal-head h2{display:flex;align-items:center;gap:9px;margin-bottom:0}.modal-head h2 .ui-icon{width:25px;height:25px}
.duration-field{border:1px solid var(--line);border-radius:11px;padding:12px;margin:0}.duration-field legend{padding:0 6px;color:var(--muted);font-size:13px}.duration-field>small{display:block;margin-top:8px;color:var(--muted)}.duration-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.drawer-panel button{display:flex;align-items:center;gap:12px;font-weight:600}.drawer-panel #drawerLogout{margin-top:10px;background:transparent;border:1px solid var(--line)}
.mobile-nav button{display:grid;justify-items:center;gap:3px}.mobile-nav .ui-icon{color:currentColor}
.mobile-header .ui-icon{color:var(--accent)}
@media(max-width:920px){.mobile-header{grid-template-columns:44px 40px 1fr 38px}.mobile-avatar{width:34px;height:34px}.drawer-panel .account-card{margin-bottom:8px}.quick{min-height:82px}.event-time{font-size:13px}}
@media(max-width:520px){.quick .ui-icon{width:25px;height:25px}.duration-grid{grid-template-columns:1fr 1fr}}
/* BinkStat v4.2 daily workspace and interaction refinements */
.sidebar{display:flex;flex-direction:column}.sidebar-bottom{margin-top:auto;display:grid;gap:10px}.app-footer{border-top:1px solid var(--line);padding:12px 4px 2px;display:grid;gap:3px;color:var(--muted);font-size:10px;line-height:1.35}.app-footer b{font-weight:700;color:var(--text)}.mobile-footer,.drawer-footer{display:none}
.baby-heading{margin:12px 0 8px;padding:0 2px}.baby-heading span{display:block;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:700}.baby-heading h2{font-size:25px;line-height:1.1;margin:4px 0 0;color:var(--text)}
.daily-workspace{padding:0;overflow:hidden}.workspace-tabs{display:flex;border-bottom:1px solid var(--line);background:var(--panel2);padding:6px 6px 0;gap:4px}.workspace-tabs button{display:flex;align-items:center;gap:8px;border:0;background:transparent;color:var(--muted);font-weight:700;padding:12px 18px;border-radius:9px 9px 0 0;border-bottom:3px solid transparent}.workspace-tabs button.active{background:var(--panel);color:var(--text);border-bottom-color:var(--accent)}.workspace-tabs .ui-icon{width:19px;height:19px}.workspace-panel{display:none;padding:18px}.workspace-panel.active{display:block}.panel-heading{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:14px}.panel-heading h2,.itemized-head h3,.journal-compose h3{margin:0}.panel-heading p{margin:4px 0 0;color:var(--muted);font-size:13px}
.day-track{display:flex;gap:0;overflow-x:auto;padding:8px 4px 18px;scroll-snap-type:x proximity;position:relative}.day-track:before{content:"";position:absolute;left:20px;right:20px;top:57px;height:2px;background:var(--line)}.track-item{position:relative;min-width:148px;max-width:180px;padding:0 12px;text-align:center;scroll-snap-align:start}.track-item>span{display:block;font-size:11px;color:var(--muted);font-weight:700;margin-bottom:8px}.track-item i{position:relative;z-index:1;width:38px;height:38px;margin:0 auto 8px;border-radius:50%;display:grid;place-items:center;background:var(--accent2);border:2px solid var(--panel);box-shadow:0 0 0 1px var(--line);font-style:normal}.track-item i .ui-icon{width:19px;height:19px}.track-item b{display:block;font-size:12px}.track-item small{display:block;color:var(--muted);font-size:10px;line-height:1.25;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.compact-empty{margin-bottom:15px}
.itemized-head{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:16px;margin:0 0 10px}.itemized-head span{color:var(--muted);font-size:12px}.itemized-timeline{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.itemized-timeline .event{margin:0;min-width:0}.icon-delete{width:38px;height:38px;border:0;background:transparent;border-radius:9px;display:grid;place-items:center;color:var(--muted);cursor:pointer;align-self:center}.icon-delete .ui-icon{width:19px;height:19px;color:currentColor}.icon-delete:hover{background:#f5e6e6;color:#9a3f3f}.icon-delete:disabled{opacity:.45;cursor:wait}
.journal-compose{display:grid;gap:10px;margin-bottom:18px}.journal-compose textarea{min-height:130px}.journal-list{display:grid;gap:10px}.journal-entry{border:1px solid var(--line);border-radius:11px;padding:14px;background:var(--panel2)}.journal-entry header{display:flex;align-items:center;gap:10px;margin-bottom:7px}.journal-entry header span{font-size:11px;color:var(--muted);font-weight:700}.journal-entry p{margin:0;white-space:pre-wrap;line-height:1.5;color:var(--text)}
@media(max-width:1100px){.itemized-timeline{grid-template-columns:1fr}}
@media(max-width:920px){.app-footer{display:none}.mobile-footer{display:block;text-align:center;color:var(--muted);font-size:10px;padding:22px 10px 92px}.drawer-footer{display:block;border-top:1px solid var(--line);padding:14px 4px 0;margin-top:10px;color:var(--muted);font-size:10px;line-height:1.5}.baby-heading{margin-top:10px}.baby-heading h2{font-size:23px}.workspace-panel{padding:14px}.day-track{margin-left:-8px;margin-right:-8px}.track-item{min-width:132px}.itemized-timeline .event{grid-template-columns:48px 36px minmax(0,1fr) 38px}.event>button.icon-delete{display:grid}}
@media(max-width:560px){.workspace-tabs button{flex:1;justify-content:center;padding:11px 8px}.panel-heading h2{font-size:19px}.day-track:before{top:55px}.track-item{min-width:120px;padding:0 8px}.track-item small{max-width:105px;margin-left:auto;margin-right:auto}.itemized-timeline .event{grid-template-columns:44px 34px minmax(0,1fr) 34px;padding:10px 7px}.icon-delete{width:34px;height:34px}.baby-heading h2{font-size:21px}}

/* BinkStat v4.3 responsive app-shell stabilization */
body.drawer-open{overflow:hidden;touch-action:none}
.drawer-head{display:none}

@media(max-width:1024px){
  .app-shell{display:block;min-height:100dvh}
  .sidebar{display:none!important}
  .content{max-width:none;margin:0;padding:18px 16px calc(104px + env(safe-area-inset-bottom))}
  .mobile-header{display:grid;position:sticky;top:0;z-index:25;grid-template-columns:44px 40px minmax(0,1fr) 38px;align-items:center;gap:9px;min-height:64px;padding:calc(8px + env(safe-area-inset-top)) 12px 8px;background:color-mix(in srgb,var(--panel) 94%,transparent);border-bottom:1px solid var(--line);box-shadow:0 4px 18px rgba(25,38,29,.06)}
  .mobile-header>strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:17px}
  .mobile-header .icon-btn{padding:0;min-width:40px;min-height:40px;background:transparent}
  .mobile-header .brand-logo-icon{width:36px;height:36px}
  .mobile-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));position:fixed;inset:auto 0 0 0;z-index:30;min-height:66px;padding:6px 6px calc(6px + env(safe-area-inset-bottom));background:color-mix(in srgb,var(--panel) 96%,transparent);border-top:1px solid var(--line);box-shadow:0 -8px 26px rgba(25,38,29,.08)}
  .mobile-nav button{min-width:0;min-height:52px;border:0;border-radius:10px;background:transparent;color:var(--muted);padding:5px 2px;font-size:10px;line-height:1.05}
  .mobile-nav button span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .mobile-nav button.active{background:var(--accent2);color:var(--accent)}
  .mobile-nav .ui-icon{width:22px;height:22px}

  .mobile-drawer{display:block;position:fixed;inset:0;z-index:80;background:rgba(12,18,14,.46);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .22s ease,visibility .22s ease;overscroll-behavior:contain}
  .mobile-drawer.open{opacity:1;visibility:visible;pointer-events:auto}
  .drawer-panel{position:absolute;inset:0 auto 0 0;width:min(360px,88vw);height:100dvh;max-height:100dvh;padding:calc(12px + env(safe-area-inset-top)) 14px calc(16px + env(safe-area-inset-bottom));background:var(--panel);border-right:1px solid var(--line);box-shadow:22px 0 60px rgba(0,0,0,.2);transform:translate3d(-102%,0,0);transition:transform .25s cubic-bezier(.2,.8,.2,1);display:flex;flex-direction:column;gap:7px;overflow-y:auto;-webkit-overflow-scrolling:touch}
  .mobile-drawer.open .drawer-panel{transform:translate3d(0,0,0)}
  .drawer-head{display:flex;align-items:center;justify-content:space-between;min-height:42px;margin-bottom:2px}
  .drawer-title{font-size:12px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}
  .drawer-close{border:0;background:var(--panel2)}
  .drawer-panel .brand{display:grid;gap:10px;margin:0 0 8px;padding:2px 2px 12px;border-bottom:1px solid var(--line)}
  .drawer-panel .brand-logo-wordmark{width:min(205px,78%);max-height:62px}
  .drawer-panel .account-card{width:100%;margin:0}
  .drawer-panel>button[data-view],.drawer-panel #drawerLogout{flex:0 0 auto;width:100%;min-height:48px;padding:11px 12px;border-radius:11px;text-align:left}
  .drawer-panel>button[data-view]{background:transparent;border:1px solid transparent;color:var(--muted)}
  .drawer-panel>button[data-view]:hover,.drawer-panel>button[data-view].active{background:var(--panel2);border-color:var(--line);color:var(--text)}
  .drawer-panel #drawerLogout{margin-top:auto!important;background:transparent}
  .drawer-footer{display:block;flex:0 0 auto;margin-top:4px;padding:13px 3px 2px}

  .topbar{margin-bottom:14px}
  .quick-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}
  .calendar{overflow-x:auto}
  .daily-workspace{border-radius:12px}
}

@media(min-width:1025px){
  .mobile-header,.mobile-nav,.mobile-drawer{display:none!important}
  .sidebar{display:flex!important}
}

@media(max-width:700px){
  .content{padding-left:10px;padding-right:10px}
  .topbar{gap:12px}
  .topbar h1{font-size:27px}
  .actions{display:grid;grid-template-columns:minmax(0,1fr) auto;width:100%}
  .quick-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .quick{min-height:74px;padding:12px 7px}
  .grid.four{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .card{padding:14px}
  .metric strong{font-size:23px}
  .date-strip{position:relative;gap:4px;padding:6px}
  .date-strip strong{text-align:center;font-size:13px}
  .workspace-tabs{overflow-x:auto;scrollbar-width:none}
  .workspace-tabs::-webkit-scrollbar{display:none}
  .workspace-tabs button{min-width:max-content}
}

@media(max-width:420px){
  .mobile-header{grid-template-columns:40px 34px minmax(0,1fr) 34px;padding-left:9px;padding-right:9px}
  .mobile-header .brand-logo-icon{width:32px;height:32px}
  .mobile-avatar{width:32px;height:32px}
  .content{padding-top:12px}
  .quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .grid.four{grid-template-columns:1fr 1fr}
  .event{gap:7px}
  .itemized-timeline .event{grid-template-columns:42px 32px minmax(0,1fr) 32px}
  .drawer-panel{width:min(330px,92vw);padding-left:11px;padding-right:11px}
}

/* BinkStat v4.4 desktop containment and adaptive timeline */
html,body{max-width:100%;overflow-x:hidden}
.app-shell{grid-template-columns:250px minmax(0,1fr);width:100%;max-width:100%}
.content{min-width:0;max-width:1500px;width:100%}
.content>*{min-width:0}
.topbar,.date-strip,.metrics,.quick-grid,.daily-workspace,.workspace-panel,.itemized-timeline,.event,.event>div{min-width:0}
.event small,.event b{overflow-wrap:anywhere}

.baby-heading{margin:14px 0 12px;padding:2px 4px}
.baby-heading span{font-size:11px;letter-spacing:.11em}
.baby-heading h2{font-size:clamp(32px,3vw,46px);line-height:1;margin-top:6px;letter-spacing:-.035em}

.itemized-timeline{grid-template-columns:repeat(auto-fit,minmax(min(100%,480px),1fr))}
.itemized-timeline .event{width:100%;overflow:hidden}
.itemized-timeline .event>div{overflow:hidden}
.itemized-timeline .event small{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

@media(min-width:1025px){
  .day-track{width:100%;max-width:100%;overflow-x:hidden;display:flex;padding-left:0;padding-right:0}
  .track-item{flex:1 1 0;min-width:0;max-width:none;padding:0 6px}
  .track-item>span{font-size:10px}
  .track-item b{font-size:11px}
  .track-item small{font-size:9px;max-width:100%}
}

@media(min-width:1025px) and (max-width:1280px){
  .content{padding-left:20px;padding-right:20px}
  .quick-grid{gap:8px}
  .quick{padding-left:7px;padding-right:7px}
  .itemized-timeline{grid-template-columns:1fr}
}

@media(max-width:1024px){
  .baby-heading h2{font-size:clamp(29px,7vw,38px)}
  .day-track{max-width:100%;overscroll-behavior-x:contain}
}
