.compact-add-icon{display:none}
.compact-scope{align-self:center;margin-right:auto;font-size:14px;color:var(--muted)}
.compact-filters{position:relative;display:flex;justify-content:flex-end;margin:0 0 16px}
.compact-filters>summary{list-style:none;display:grid;place-items:center;width:44px;height:44px;cursor:pointer;color:var(--accent,#216eab);border-radius:50%;margin-left:auto}
.compact-filters>summary::-webkit-details-marker{display:none}
.compact-filters svg,.today-menu summary svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
.compact-filters.has-filter>summary{background:color-mix(in srgb,var(--accent,#216eab) 12%,transparent)}
.compact-filter-panel{position:absolute;right:0;top:48px;z-index:35;width:min(320px,calc(100vw - 48px));padding:16px;border:1px solid var(--line,#d9e3e0);border-radius:16px;background:var(--surface,#fff);box-shadow:0 8px 24px #0002;box-sizing:border-box}
.compact-filter-panel>div{display:grid!important;gap:12px;margin:0!important}
.compact-filter-panel label{display:grid;gap:6px;font-size:14px}
.compact-filter-panel select,.compact-filter-panel input{width:100%;min-height:44px;box-sizing:border-box}
.compact-filters:not([open])>.compact-filter-panel{display:none!important}
.compact-filter-panel *{min-width:0;max-width:100%;box-sizing:border-box}
#unifiedToday .family-tool-heading{padding-bottom:14px;border-bottom:1px solid var(--line,#d9e3e0);margin-bottom:4px}
#unifiedToday .today-menu select{max-width:100%;width:100%}
.compact-voice-dialog{width:min(520px,calc(100% - 24px));max-height:90dvh;overflow:auto;box-sizing:border-box;border:1px solid var(--line,#d9e3e0);border-radius:24px;padding:20px;background:var(--surface,#fff);color:var(--text,#182624)}
.compact-voice-dialog::backdrop{background:#001d2466}
.compact-voice-dialog .voice-form-assistant{background:none;border:0;padding:24px 0;margin:0;display:grid;justify-items:center;gap:20px;text-align:center}
.compact-voice-dialog h2{font-size:24px;margin:0}
.compact-voice-dialog .voice-record{width:88px;height:88px;border-radius:50%;background:var(--accent,#216eab);color:white;font-size:32px;border:0}
.compact-voice-dialog .voice-record.recording{background:#ac3535}
.compact-voice-dialog .voice-assist-status{text-align:center;font-size:16px}
.compact-voice-dialog .voice-transcript{font:inherit;border:1px solid var(--line,#d9e3e0);border-radius:14px;padding:14px}
.compact-voice-dialog .voice-draft-preview{width:100%;box-sizing:border-box;text-align:left}
.compact-voice-dialog [hidden]{display:none!important}
.voice-help{float:right;max-width:100%;font-size:14px}
.voice-help[open]{float:none}
.voice-entry{min-height:44px;margin:8px 0 16px}
.routine-run-summary{display:grid;gap:10px;padding-bottom:16px;border-bottom:1px solid var(--line,#d9e3e0)}
.routine-run-summary p{margin:0;font-size:14px;color:var(--muted)}
.routine-run-summary progress{width:100%;height:8px;accent-color:var(--accent,#216eab)}
.routine-run-details{margin:16px 0}
.routine-run-details summary{min-height:44px;cursor:pointer}
.routine-editor label[hidden]{display:none}
/* Width constraints must outrank the older, page-specific desktop rules. */
@media(max-width:700px){
 html .topbar #sidebarToggle{display:none!important}
 html .page .caregiver-banner>.compact-scope{flex-basis:100%;order:3;margin:0;font-size:14px}
 html #members-page>.eyebrow,html #members-page>p{display:none}
 html #members-page>h1{font-size:24px;margin:0 0 16px}
 html #members-page .member-list{margin-top:0;padding:16px}
 html .page .family-care-panel .eyebrow{font-size:12px;line-height:1.4}
 html .page .family-care-panel .card-header{display:flex;flex-flow:row wrap;align-items:center;gap:12px}
 html .page .family-care-panel .card-header>div{flex:1;min-width:0}
 html .page .family-care-panel .card-header button{width:auto;min-height:44px;padding:8px 12px}
 html .app-shell .page .compact-add{width:44px!important;max-width:44px!important;min-width:44px!important;height:44px!important;padding:0!important;border-radius:50%!important;flex:0 0 44px!important;justify-self:end;align-self:center}
 html .app-shell .page :is(.feature-heading,.health-heading,.settings-heading,.caregiver-banner){display:flex;flex-flow:row wrap!important;align-items:center!important;gap:8px!important;padding:0!important;margin:0 0 16px!important;border:0!important}
 html .app-shell .page :is(.feature-heading,.health-heading,.settings-heading,.caregiver-banner)>div:first-child{flex:1;min-width:0}
 html .app-shell .page :is(.feature-heading,.health-heading,.settings-heading,.caregiver-banner) h1{font-size:24px!important;line-height:1.25;margin:0}
 html .app-shell .page :is(.feature-heading,.health-heading,.settings-heading,.caregiver-banner)>div>p{display:none}
 html .app-shell .page :is(.feature-heading,.caregiver-banner)>.compact-filters{flex:0 0 auto;margin:0}
 html .app-shell .page>.compact-filters{margin:0 0 12px}
 html .app-shell .page .compact-filter-panel{background:var(--white,#fff);color:var(--ink);max-width:calc(100vw - 32px)}
 html #home-page .welcome-row{padding:0!important;margin:0 0 12px!important;border:0!important}
 html #home-page .welcome-row h1{font-size:24px!important}
 html #home-page .welcome-row>div>p:last-child{display:none}
 html #home-page .welcome-row .eyebrow{font-size:12px;margin:0 0 4px}
 html #home-page .home-shortcuts{display:flex;justify-content:flex-end;margin:0 0 12px!important}
 html .topbar{gap:6px;padding:8px 12px}
 html .topbar :is(.icon-button,.web-voice-entry>summary){width:40px;min-width:40px;height:44px;padding:0;display:grid;place-items:center}
 html .topbar .web-voice-menu{position:fixed;inset:72px 12px auto;box-sizing:border-box;width:auto;max-height:calc(100dvh - 96px);overflow-y:auto;padding:16px}
 html .topbar .web-voice-menu button{width:100%;font-size:16px}
 html .page .contact-card{grid-template-columns:40px minmax(0,1fr) 44px;gap:12px}
 html .page .contact-card>div{min-width:0;overflow-wrap:anywhere}
 html .page .contact-card :is(h3,p,a,small){font-family:inherit;font-size:14px;line-height:1.45}
 html .page .contact-card h3{font-size:18px}
 html .page .contact-card small{background:none;padding:0;margin-top:8px}
 html .page .record-overflow>summary{width:44px;height:44px;box-sizing:border-box;padding:0;display:grid;place-items:center;font-size:0}
 html .page .record-overflow>summary::after{content:'•••';font-size:20px;line-height:1}
 html .page .record-overflow>summary::marker{content:''}
 html .page .record-overflow>div{max-width:calc(100vw - 48px)}
 html .page .note-meta{flex-wrap:wrap;gap:8px}
 html .page .note-meta>span:last-child{font-size:14px}
 html .page .note-card>p{font:16px/1.5 'DM Sans',sans-serif;min-height:0;overflow-wrap:anywhere}
 html .page .note-footer{margin-top:12px;padding-top:8px;font-size:12px;gap:8px}
 html .page .content-translation{margin:8px 0;padding:0;border:0}
 html .page .content-translation button{font-size:14px;padding:8px 12px;min-height:44px}
 html .page .member-list>div{display:grid;grid-template-columns:40px minmax(0,1fr);gap:12px;padding:16px 0}
 html .page .member-list>div>div{min-width:0;overflow-wrap:anywhere}
 html .page .member-actions{grid-column:2;display:flex;flex-wrap:wrap;gap:8px}
 html .page .member-actions button{width:auto;white-space:normal}
 html .page .family-schedule-panel{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center}
 html .page .family-schedule-panel h2{font-size:20px;margin:0}
 html .page .family-schedule-panel>.compact-filters{margin:0}
 html .page #familyScheduleItems{grid-column:1/-1}
 html .page .family-care-panel h2{font-size:20px;line-height:1.3}
 html .page .family-list-item{grid-template-columns:32px minmax(0,1fr) 44px!important;gap:10px!important;padding:14px 0}
 html .page .family-list-item .list-check{width:32px;height:32px;min-height:32px;min-width:32px;align-self:start;margin-top:6px}
 html .page .family-list-item .list-item-details{min-width:0;gap:10px;padding:0}
 html .page .family-list-item .list-item-details img{width:36px;height:48px;object-fit:contain;flex:none}
 html .page .family-list-item .list-item-details strong{font-size:16px;line-height:1.4}
 html .page .family-list-item .list-item-details small{font-size:14px}
 html .page .family-list-item .claim-list-item{grid-column:3;grid-row:1;align-self:start;min-height:44px;padding:6px;font-size:14px}
 html .page .family-list-item .list-item-actions{grid-column:3;margin:0}
 html .page .family-list-card>header{padding:16px;gap:8px}
 html .page .family-list-card>header h2{font-size:20px}
 html .page .family-list-card>header .add-to-list{min-height:44px;padding:8px}
 .compact-add-icon{display:block;font-size:30px;font-weight:400;line-height:1}
 .compact-add-label{display:none}
 button.compact-add,#calendar-page #addEventBtn{width:44px;min-width:44px;height:44px;min-height:44px;padding:0;border-radius:50%;display:grid;place-items:center;flex:none}
 .feature-heading{margin-bottom:16px!important;gap:12px}
 .feature-heading h1{font-size:24px!important;line-height:1.2;margin:0!important}
 .feature-heading>div>.eyebrow,.feature-heading>div>p:not(.eyebrow){display:none}
 .feature-page{padding-top:12px!important}
 .health-card,.contact-card,.school-card,.document-card,.note-card,.expense-card,.family-care-panel,.coordination-card{padding:16px!important;border-radius:20px!important}
 .school-card h2,.contact-card h3,.note-card h3,.expense-card h3{font-size:18px;line-height:1.3}
 .school-card p{font-size:14px;margin:6px 0}
 .school-grid,.contacts-grid,.notes-grid,.health-grid,.documents-grid{gap:16px!important}
 .expense-summary{gap:12px;margin-bottom:16px}
 .expense-summary article{padding:14px!important}
 .family-tool-card{padding:16px;margin:16px 0;border-radius:20px}
 .family-tool-row{gap:12px;padding:16px 0;min-height:56px}
 .family-tool-row strong{font-size:16px}
 .home-shortcuts{margin:0 0 16px!important;min-height:44px}
 .routine-editor{padding:16px}
 .routine-editor h2{font-size:22px;margin:0 0 16px}
}
