.brand{padding:0 8px;gap:9px;font-size:23px;letter-spacing:-1px;line-height:1.05;white-space:nowrap}.brand svg{width:31px;height:37px}.brand-wordmark{display:flex;flex-direction:column;align-items:flex-start;gap:3px}.brand-wordmark small{font-family:'DM Sans',sans-serif;font-size:10px;font-weight:650;letter-spacing:2px;line-height:1;text-transform:lowercase;color:#819277}.brand-period{color:#96a984}.brand-sub{margin-top:12px;margin-left:8px;font-size:10px}.mobile-brand{padding:0;font-size:21px;letter-spacing:-.9px;gap:7px}.mobile-brand svg{width:27px;height:32px}.mobile-brand .brand-wordmark small{font-size:8px;letter-spacing:1.7px}@media(min-width:651px) and (max-width:900px){.sidebar .brand{padding:0;font-size:18px;gap:6px;letter-spacing:-.7px}.sidebar .brand svg{width:25px;height:32px}.sidebar .brand-sub{margin-left:0;font-size:9px}}@media(max-width:380px){.topbar-actions{gap:7px}.topbar-actions .date{font-size:9px;gap:4px}.account-button{padding:8px 10px}.mobile-brand{font-size:19px}}

/* Round selection controls, retaining native checkbox semantics. */
input[type="checkbox"]{appearance:none;-webkit-appearance:none;width:20px;height:20px;min-width:20px;flex:0 0 20px;border:1.5px solid #cbd8c1;border-radius:50%;background:#fff;vertical-align:middle;display:inline-grid;place-content:center;cursor:pointer;padding:0}
input[type="checkbox"]:checked{background:#eaf0e5;border-color:#9db38e}
input[type="checkbox"]:checked::after{content:"";width:5px;height:10px;border:solid #426b50;border-width:0 2px 2px 0;transform:translateY(-1px) rotate(45deg)}
input[type="checkbox"]:focus-visible{outline:3px solid #b5caa6;outline-offset:3px}
input[type="checkbox"]:disabled{cursor:default;opacity:.6}

.check{border-radius:50%}
.task.done .check{background:var(--soft);border-color:#cbd8c1;color:var(--green)}
.task-dialog-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;position:sticky;top:-28px;background:#fff;z-index:2;padding:12px 0;margin-top:-12px}
.task-dialog-heading h2{margin:0;flex:1}
.task-dialog-heading button{min-height:44px;flex-shrink:0}
#taskDialog{max-height:calc(100dvh - 32px);overflow-y:auto;padding-bottom:calc(28px + env(safe-area-inset-bottom,0px))}
@media(max-width:650px){.task-dialog-heading{top:-24px}.task-dialog-heading button{padding:10px 12px}}

.task-assignment-grid{grid-template-columns:1fr}

#recoveryDialog{width:min(620px,calc(100% - 32px));max-height:calc(100dvh - 32px);overflow-y:auto}#recoveryDialog h3{margin-top:24px}.recovery-row{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding:16px 0}.recovery-row small{display:block;color:var(--muted);line-height:1.6;margin-top:6px}.recovery-row b{overflow-wrap:anywhere}@media(max-width:420px){.recovery-row{align-items:flex-start;flex-direction:column;gap:10px}}

/* Home is a summary; all checklist actions remain in Tasks. */
#homeDashboard{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;width:100%;min-width:0}
.home-today,.home-start{border:1px solid var(--line);border-radius:13px;padding:24px}
.home-today{background:var(--soft)}.home-start{background:var(--white)}
.home-progress-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}
#homeDashboard h2{font-family:Manrope,sans-serif;font-size:17px;font-weight:750;letter-spacing:-.4px;margin:0}
#homeProgressPercent{color:var(--green);font-size:13px;font-weight:650}.home-progress-count{font-family:Manrope,sans-serif;font-size:23px;font-weight:700;letter-spacing:-.6px;margin:14px 0}
.home-progress-track{height:6px;border-radius:99px;background:#d9e3ce;overflow:hidden}.home-progress-track span{height:100%;display:block;background:var(--green);border-radius:inherit;transition:width .2s ease}
#homeDashboard p.home-progress-message{font-size:12px;color:#68796d;margin:12px 0 0;line-height:1.55}
.home-start p{color:var(--muted);font-size:13px;margin:10px 0 18px}.home-tasks-button{min-height:46px;padding:12px 20px;font-size:14px;gap:24px;transition:transform .15s,background .15s}.home-tasks-button:active{transform:scale(.98)}
.home-lifestyle{grid-column:1/-1;margin:0;border-radius:13px;overflow:hidden;height:190px;background:var(--soft)}.home-lifestyle img{width:100%;height:100%;object-fit:cover;display:block;object-position:center 52%}
.home-shortcuts{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:16px}.home-shortcut{display:flex;align-items:center;gap:14px;background:var(--white);border:1px solid var(--line);border-radius:12px;padding:20px;text-align:left;min-width:0}.home-shortcut:hover{background:var(--soft)}.home-shortcut>svg{width:22px;height:22px;color:var(--green)}.home-shortcut>span:last-child{margin-left:auto;color:var(--green)}.home-shortcut b{display:block;font-family:Manrope,sans-serif;font-size:14px;letter-spacing:-.2px}.home-shortcut small{display:block;margin-top:5px;color:var(--muted);font-size:12px;line-height:1.4}
.home-calendar{grid-column:1/-1}.home-calendar .aside-card{padding:18px 24px;margin:0}.home-calendar .week{max-width:none}.home-calendar .week-note{margin-bottom:0}
body[data-view="overview"] .heading{margin:28px 0 22px}body[data-view="overview"] .heading h1{font-size:30px}body[data-view="overview"] .heading p{max-width:520px}
@media(max-width:650px){#homeDashboard{grid-template-columns:1fr;gap:14px}.home-today,.home-start{padding:17px 18px}#homeDashboard h2{font-size:16px}.home-progress-count{font-size:21px;margin:11px 0}.home-start p{margin:7px 0 13px;font-size:12px}.home-tasks-button{width:100%;justify-content:space-between;min-height:46px}.home-lifestyle{height:115px;grid-row:3}.home-shortcuts{gap:10px}.home-shortcut{padding:14px 12px;gap:9px;flex-wrap:wrap}.home-shortcut b{font-size:13px}.home-shortcut small{font-size:11px}.home-shortcut>span:last-child{display:none}.home-calendar .aside-card{padding:17px 18px}body[data-view="overview"] .heading{margin:19px 0 16px}body[data-view="overview"] .heading h1{font-size:24px;letter-spacing:-.8px}body[data-view="overview"] .heading p{font-size:12px;line-height:1.5}body[data-view="overview"] .compact-profiles{max-width:150px}}
@media(max-width:350px){.home-shortcuts{grid-template-columns:1fr}.home-shortcut{flex-wrap:nowrap}.home-today,.home-start{padding:14px 16px}body[data-view="overview"] .heading h1{font-size:22px}}
@media(max-width:650px) and (max-height:650px){body[data-view="overview"] .heading{margin:12px 0}#homeDashboard{gap:10px}.home-today,.home-start{padding:14px 16px}.home-progress-count{margin:8px 0;font-size:20px}#homeDashboard p.home-progress-message{margin-top:8px}.home-start p{margin:5px 0 10px}}

/* Mock-up: preserve the existing DOM order, reading across then down. */
@media(min-width:1100px){
 #settingsView{max-width:1100px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:stretch}
 #settingsView>.aside-card{margin:0;min-width:0;padding:24px}
 #settingsView p{overflow-wrap:anywhere}
 #settingsView button{max-width:100%;white-space:normal}
 #settingsView .field select,#settingsView .field input{min-width:0;max-width:100%}
 #settingsView .storage-note{line-height:1.7}
}

/* Keep the header anchored and aligned as sections change. */
.topbar{min-height:69px}
@media(max-width:650px){.topbar{min-height:64px}}

/* A balanced calendar and activity summary, sharing the same weekly history. */
.home-calendar .weekly-care-card{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:28px;padding:24px;align-items:stretch}
.weekly-calendar{min-width:0;display:flex;flex-direction:column;justify-content:center}
.home-calendar .week{display:grid;grid-template-columns:repeat(7,64px);width:max-content;gap:8px;padding:14px 8px 20px}
.home-calendar #week .day{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:12px;min-width:0;min-height:44px;padding:4px 0}
.home-calendar .week-note{margin:16px 0 0}
.weekly-care-summary{position:relative;overflow:hidden;background:var(--soft);border-radius:14px;padding:24px 28px;min-width:0;min-height:178px;display:flex;flex-direction:column;justify-content:center}
.weekly-care-summary h3{font-family:'DM Sans',sans-serif;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:2px;color:#82966e;margin:0 0 12px}
.weekly-care-total{display:flex;align-items:baseline;gap:14px;position:relative;z-index:1}
.weekly-care-total strong{font-family:Manrope,sans-serif;font-size:64px;font-weight:750;line-height:1;letter-spacing:-2px}
.weekly-care-total span{font-family:Manrope,sans-serif;font-size:20px;font-weight:650;letter-spacing:-.5px}
.weekly-care-summary p{font-size:12px;color:#829075;margin:16px 0 0;position:relative;z-index:1}
.weekly-care-leaf{position:absolute;right:14px;bottom:12px;width:70px;height:70px;color:#b4c2a6;opacity:.65;stroke-width:1.5;pointer-events:none}
@media(max-width:900px){.home-calendar .weekly-care-card{gap:20px}.weekly-care-summary{padding:20px}.weekly-care-total{gap:10px;flex-wrap:wrap}.weekly-care-total strong{font-size:52px}.weekly-care-total span{font-size:17px}}
@media(max-width:650px){.home-calendar .weekly-care-card{grid-template-columns:minmax(0,1fr);gap:18px;padding:17px 18px}.weekly-care-summary{min-height:0;padding:16px 18px}.weekly-care-summary h3{margin-bottom:8px;font-size:9px}.weekly-care-total strong{font-size:36px;letter-spacing:-1px}.weekly-care-total span{font-size:16px}.weekly-care-summary p{font-size:11px;margin-top:8px}.weekly-care-leaf{width:52px;height:52px}}

/* Equal columns and centred dates keep both divider overhangs identical. */
.week-scroll{max-width:100%;min-width:0;overflow-x:auto;scrollbar-width:thin;padding:3px}
.home-calendar #week .day-name{display:block;font-size:10px;line-height:1.4;white-space:nowrap}
.home-calendar #week .day-date{position:relative;width:32px;height:32px;margin:0;flex-shrink:0;font-size:12px}
.home-calendar #week .day-completion{position:absolute;top:-3px;right:-5px;width:14px;height:14px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;background:var(--white);color:var(--green);font-size:10px;line-height:1}
@media(max-width:1100px){.home-calendar .weekly-care-card{grid-template-columns:minmax(0,1fr)}}

/* Match the calendar heading icon to the Your Rooms shortcut icon. */
.home-calendar .weekly-calendar h3>svg{width:22px;height:22px}

/* The Home overview reuses existing task actions and the official leaf asset. */
.brand .brand-leaf{width:34px;height:34px;flex-shrink:0}
.mobile-brand .brand-leaf{width:32px;height:32px}
body[data-view="overview"] .topbar-actions .date,body[data-view="overview"] .heading .eyebrow{display:none}
body[data-view="overview"] .heading{margin:24px 0 20px}
body[data-view="overview"] .heading h1{font-size:28px;letter-spacing:-1px;overflow-wrap:anywhere}
body[data-view="overview"] .heading p{font-size:16px;line-height:1.5}
body[data-view="overview"] .compact-profiles select{max-width:180px;font-size:14px}
#homeDashboard{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:20px;align-items:start}
#homeToday{grid-column:1;grid-row:1;padding:22px 24px;min-width:0}
#homeDashboard .home-progress-count{font-size:23px;line-height:1.3;margin:14px 0}
#homeDashboard p.home-progress-message{font-size:14px;margin:12px 0 0}
#homeDashboard h2{font-size:19px;line-height:1.35}
.home-panel{min-width:0;border:1px solid var(--line);border-radius:13px;background:var(--white);padding:20px}
.home-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.home-section-heading .text-button{font-size:12px;line-height:1.4;min-height:44px;flex-shrink:0;text-decoration:underline;text-underline-offset:3px}
.home-secondary{font-size:13px;color:#68796d;line-height:1.6}
.home-task-preview{grid-column:1;grid-row:2 / span 2}
.home-task-preview .home-section-heading{display:block}
.home-task-preview .home-secondary{display:block;margin-top:4px}
.home-task-list{border:1px solid var(--line);border-radius:12px;overflow:hidden}
.home-task-row{display:flex;align-items:center;gap:12px;padding:14px 12px;min-height:78px;border-bottom:1px solid var(--line)}
.home-task-row:last-child{border:0}
.home-task-copy{flex:1;min-width:0}
.home-task-copy b,.home-recent-row b{display:block;font-size:16px;font-weight:550;line-height:1.45;overflow-wrap:anywhere}
.home-task-copy small,.home-recent-row small{display:block;font-size:13px;line-height:1.6;color:#68796d;margin-top:4px;overflow-wrap:anywhere}
.home-task-row .check{width:44px;height:44px;min-width:44px}
.home-task-row .icon-btn{min-width:44px;min-height:44px}
.home-all-tasks{display:flex;width:100%;justify-content:center;gap:14px;min-height:48px;font-size:16px;margin-top:14px}
.home-room-preview{grid-column:2;grid-row:1 / span 2}
.home-room-shortcuts{display:grid;gap:10px}
.home-room-shortcut{display:flex;align-items:center;gap:14px;text-align:left;border:1px solid var(--line);border-radius:10px;background:var(--white);padding:14px;min-height:64px;color:var(--ink);font-size:16px;min-width:0}
.home-room-shortcut:hover{background:var(--soft)}
.home-room-shortcut>span:not(.home-room-icon){flex:1;min-width:0;overflow-wrap:anywhere}
.home-room-icon{display:grid;place-items:center;color:var(--green);flex-shrink:0}
.home-room-icon svg{width:24px;height:24px}
.home-room-shortcut>svg{width:14px;height:14px;color:#829075}
.home-recent-preview{grid-column:2;grid-row:3}
.home-recent-row{display:flex;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid var(--line)}
.home-recent-row:first-child{padding-top:0}
.home-recent-row:last-child{border:0;padding-bottom:0}
.home-recent-row>div{min-width:0}
.home-recent-check{display:grid;place-items:center;width:36px;height:36px;flex:0 0 36px;border-radius:50%;background:var(--soft);color:var(--green)}
.home-recent-check svg{width:20px;height:20px}
.home-recent-empty{margin:0}
.home-empty{padding:22px 16px;text-align:center}
.home-empty b{font-family:Manrope,sans-serif;font-size:17px}
.home-empty p{font-size:14px;color:#68796d;margin:8px 0 0;line-height:1.6}
.home-encouragement{grid-column:1/-1;display:flex;align-items:center;flex-direction:column;gap:8px;text-align:center;color:#68796d;font-size:14px;line-height:1.6;margin:0;padding:6px 12px}
.home-encouragement img{width:24px;height:24px}
.history-calendar{margin-bottom:24px}
@media(max-width:1100px){
 #homeDashboard{grid-template-columns:minmax(0,1fr)}
 #homeToday,.home-task-preview,.home-room-preview,.home-recent-preview{grid-column:1;grid-row:auto}
 .home-room-shortcuts{grid-template-columns:repeat(3,minmax(0,1fr))}
 .home-room-shortcut{flex-wrap:wrap;gap:8px;padding:12px;font-size:14px}
 .home-room-shortcut>span:not(.home-room-icon){flex-basis:calc(100% - 36px);font-size:14px}
 .home-room-shortcut>svg{display:none}
}
@media(max-width:650px){
 body[data-view="overview"] .topbar{flex-wrap:nowrap;gap:12px;min-height:64px}
 body[data-view="overview"] .topbar-actions{flex:0 1 auto;flex-wrap:nowrap}
 body[data-view="overview"] .compact-profiles{max-width:130px;min-width:0}
 body[data-view="overview"] .compact-profiles select{max-width:130px;width:100%;font-size:13px;padding:8px 10px}
 body[data-view="overview"] .heading{margin:18px 0 16px}
 body[data-view="overview"] .heading h1{font-size:23px;letter-spacing:-.8px;line-height:1.3;margin-bottom:6px}
 body[data-view="overview"] .heading p{font-size:14px;max-width:none;line-height:1.5}
 #homeDashboard{gap:16px}
 #homeToday{padding:18px}
 #homeDashboard h2{font-size:18px}
 #homeDashboard .home-progress-count{font-size:20px;margin:10px 0}
 #homeDashboard p.home-progress-message{font-size:13px;margin-top:10px}
 .home-panel{padding:0;border:0;background:none}
 .home-section-heading{gap:8px;margin-bottom:10px}
 .home-section-heading .text-button{font-size:11px}
 .home-task-row{padding:12px 10px;gap:10px;background:var(--white);min-height:76px}
 .home-task-copy b,.home-recent-row b{font-size:16px}
 .home-task-copy small,.home-recent-row small{font-size:12px}
 .home-task-row .check{width:44px;height:44px}
 .home-task-row .icon-btn{min-width:44px;width:44px;padding:6px}
 .home-all-tasks{margin-top:10px}
 .home-room-shortcuts{gap:8px}
 .home-room-shortcut{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:8px;padding:12px 10px;min-height:82px}
 .home-room-shortcut>span:not(.home-room-icon){flex:0 0 auto;width:100%;font-size:13px;line-height:1.4}
 #homeRecentList{border:1px solid var(--line);border-radius:12px;background:var(--white);padding:0 14px}
 .home-recent-row,.home-recent-row:first-child,.home-recent-row:last-child{padding:14px 0}
 .home-recent-empty{padding:14px 0}
 .home-encouragement{font-size:13px;padding:10px 8px 0}
 body[data-view="overview"] .content{padding-bottom:calc(100px + env(safe-area-inset-bottom,0px))}
}

/* Independent desktop columns avoid gaps when recent history is short. */
.home-main-column,.home-side-column{display:flex;flex-direction:column;gap:20px;min-width:0}
@media(max-width:1100px){.home-main-column,.home-side-column{display:contents}}
