/* Shared visual system: warm editorial public pages, calm planning workspace. */
:root{--canvas:#f8f7f4;--ink:#1f2b3a;--muted:#536174;--line:#e0e4e9;--coral:#ae4d35;--app-line:#e0e4e9;--app-shadow:none;--app-muted:#536174;background:var(--canvas);color:var(--ink);font-synthesis:none}
body{background:var(--canvas)}
[hidden]{display:none!important}
html{scroll-behavior:smooth;scroll-padding-top:24px}
button,.button-link{min-height:44px;border-radius:9px;font-size:13px;letter-spacing:0;transition:background .16s,border-color .16s,box-shadow .16s}
button:hover,.button-link:hover{background:#edf1f6;border-color:#a8b5c5}
button.primary:hover{background:#2c4569;box-shadow:0 4px 12px #1f2b3a14}
button:disabled{cursor:wait}
a,button,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #a9502b;outline-offset:3px}
.skip-link{position:fixed;left:16px;top:-80px;z-index:100;background:white;color:var(--ink);padding:12px 20px;border:2px solid var(--primary);border-radius:8px}.skip-link:focus{top:10px}
.site-header{max-width:1328px;padding:24px 40px;min-height:90px}.site-header .brand{font-size:24px;letter-spacing:-.9px}.site-header .brand img{width:34px;height:34px}
.site-header nav{gap:20px}#header-auth{gap:18px}.landing-mode #header-auth .primary{background:var(--coral);border-color:var(--coral)}
#landing{max-width:1328px;padding:0 40px;border:0;background:none;border-radius:0;margin:0 auto}
#landing .landing-hero{position:relative;grid-template-columns:.9fr 1.1fr;gap:0;min-height:620px;padding:28px 0 70px;align-items:center}
.hero-copy{position:relative;z-index:2;padding:12px 0 40px;pointer-events:none}.hero-copy>*{pointer-events:auto}
.hero-copy h1{font-size:clamp(44px,4.7vw,68px);line-height:1.08;letter-spacing:-2.9px;max-width:510px;font-weight:800;margin:0 0 28px;color:var(--ink)}
.hero-description{font-size:18px;line-height:1.65;max-width:390px;margin:0 0 30px;color:var(--muted)}
.hero-actions{gap:12px}.hero-actions button,.hero-actions .button-link{padding:14px 20px;min-height:52px}.hero-actions .primary{background:var(--coral);border-color:var(--coral)}.hero-actions span{margin-left:14px;font-size:19px;line-height:1}
.hero-visual{position:relative;margin-left:-100px;min-width:0;height:530px;align-self:center}
.hero-photo{width:calc(100% + 40px);height:100%;object-fit:cover;object-position:67% center;display:block;border-radius:0 24px 24px 0;mask-image:linear-gradient(to right,transparent,black 24%);-webkit-mask-image:linear-gradient(to right,transparent,black 24%)}
.week-preview{position:absolute;left:22%;right:0;bottom:27px;padding:19px;border:1px solid #e0e4e9;border-radius:14px;background:#fffffffa;box-shadow:0 14px 40px #19283b18;transform:none}
.week-heading{margin-bottom:14px;align-items:center}.week-heading h2{font-size:13px;font-weight:800}.example-caption{position:static;font-size:10px;color:#5a687b;white-space:nowrap}
.preview-days{gap:5px;margin:0}.preview-day{background:#f1f4fa;border-radius:7px;font-size:11px;min-height:65px;gap:10px;color:#304c74;font-weight:700}.preview-day small{font-size:9px;font-weight:600}.preview-day.household-b{background:#fbe9e3;border:0;color:#883e2b}
#landing .everyday-section{display:grid;grid-template-columns:1.12fr 1fr;gap:92px;align-items:center;max-width:none;margin:40px 0 96px;padding:0;border:0;background:none;border-radius:0;scroll-margin-top:42px}
.everyday-copy h2{font-size:46px;font-weight:800;line-height:1.14;letter-spacing:-1.8px;margin:0 0 28px}
.explore-rows article{display:flex;gap:22px;padding:24px 0;border-top:1px solid var(--line)}.step-number{width:38px;flex-shrink:0;color:#a04831;font-weight:700;font-size:13px;padding-top:6px}.explore-rows h3{font-size:19px;letter-spacing:-.5px;margin:0 0 8px}.explore-rows p{font-size:14px;color:var(--muted);line-height:1.8;margin:0;max-width:400px}
.everyday-visual{margin:0;position:relative}.everyday-visual img{display:block;width:100%;height:540px;object-fit:cover;border-radius:20px}.everyday-visual figcaption{font-size:12px;color:var(--muted);margin-top:14px}
#landing .landing-invite{max-width:none;margin:0;padding:50px 56px;display:flex;align-items:center;justify-content:space-between;gap:32px;background:#24374f;color:#fff;border:0;border-radius:20px}
.landing-invite h2{font-size:42px;letter-spacing:-1.5px;line-height:1.16;margin:0 0 14px}.landing-invite p{color:#e0e7f0;margin:0;font-size:14px}.landing-invite .primary{background:var(--coral);border-color:var(--coral);min-width:200px;padding:16px 22px}.landing-invite button span{margin-left:24px}
.landing-disclaimer{font-size:11px;line-height:1.8;margin:22px 0 0;max-width:900px;color:var(--muted)}
footer{max-width:1248px;margin:42px auto 0;padding:30px 0;color:var(--muted);font-size:11px;border-color:var(--line)}footer .brand{font-size:19px}footer .brand small{font-size:11px}footer p{margin:5px 0}footer #install-app{float:right;font-size:12px}
/* The app shell retains every feature's original DOM ids and event handlers. */
.calendar-mode .site-header{position:fixed;top:0;left:0;width:232px;height:90px;max-width:none;padding:24px 22px;z-index:20;background:white;border:0;border-right:1px solid var(--line)}
.calendar-mode .site-header .brand{font-size:21px;gap:9px}.calendar-mode .site-header .brand img{width:31px;height:31px}.calendar-mode .site-header nav{display:none}
.calendar-mode .planner{max-width:1680px;margin-left:232px;padding:32px 32px 20px;min-height:calc(100vh - 170px)}
.workspace-switch{display:flex;flex-direction:column;justify-content:space-between;position:fixed;left:0;top:90px;bottom:0;width:232px;padding:20px 14px 18px;margin:0;border:0;border-right:1px solid var(--line);border-radius:0;background:#fff;z-index:20;overflow-y:auto;align-items:stretch;gap:24px}
.workspace-primary,.workspace-secondary{display:flex;flex-direction:column;gap:5px}.workspace-switch button{display:flex;align-items:center;gap:13px;border:0;background:transparent;min-height:47px;padding:11px 12px;border-radius:8px;color:#374960;font-size:13px;font-weight:600;text-align:left;white-space:nowrap;line-height:1.4;box-shadow:none}
.workspace-switch button img{width:19px;height:19px;opacity:.8;flex-shrink:0}.workspace-switch button[aria-pressed=true]{background:#edf2fa;color:var(--primary);font-weight:800}.workspace-switch button:hover{background:#f1f4f8}.workspace-switch button[aria-pressed=true] img{opacity:1}.nav-divider{height:1px;background:var(--line);margin:14px 12px}.workspace-secondary p{font-size:11px;line-height:1.8;margin:14px 12px 0;color:#667184}
.planner-intro{margin-bottom:24px;align-items:center}.planner-intro h1{font-size:34px;line-height:1.2;letter-spacing:-1.1px;font-weight:800}.planner-intro p{font-size:14px;color:var(--muted);margin:9px 0 0}.planner-intro #add-event{padding:12px 18px;min-height:46px;flex-shrink:0}
.welcome-banner{display:flex;justify-content:space-between;align-items:center;overflow:hidden;position:relative;background:#f2e9dc;border-radius:12px;min-height:115px;margin-bottom:18px}.welcome-banner>div{padding:24px 28px;z-index:1;max-width:64%}.welcome-banner h2{font-size:23px;letter-spacing:-.7px;margin:0 0 6px}.welcome-banner p{font-size:13px;margin:0;color:#49576a}.welcome-banner img{position:absolute;right:0;top:0;width:48%;height:100%;object-fit:cover;object-position:75% 44%;mask-image:linear-gradient(to right,transparent,black 40%);-webkit-mask-image:linear-gradient(to right,transparent,black 40%)}
.weekend-upcoming{margin:0 0 22px;padding:16px 20px;background:#fff;border:1px solid var(--line);border-radius:12px;display:flex;gap:22px;align-items:center;flex-wrap:wrap}
.weekend-upcoming-heading{display:contents}.weekend-upcoming-heading>div{min-width:160px}.weekend-upcoming h3{font-size:14px;letter-spacing:-.2px;margin:0 0 4px}.weekend-upcoming p{font-size:10px;margin:0;color:var(--muted)}
#weekend-upcoming-show{order:3;margin-left:auto;background:transparent;border:0;font-size:11px;padding:8px;min-height:44px;color:var(--primary)}
#weekend-upcoming-children{display:flex;gap:20px;flex:1;flex-wrap:wrap;padding:0;margin:0;list-style:none}#weekend-upcoming-children li{display:flex;flex-direction:column;align-items:flex-start;gap:3px;border:0;border-left:1px solid var(--line);padding:0 0 0 18px;min-width:100px}#weekend-upcoming-children strong{font-size:12px}.weekend-upcoming .weekend-assignment{font-size:11px;padding:0;background:transparent;color:#526174}
.calendar-controls{border:0;padding:0;background:none;box-shadow:none;border-radius:0;margin:0 0 14px}.calendar-toolbar{margin:0;gap:12px;justify-content:space-between}.month-controls{gap:6px;flex-wrap:nowrap}.month-controls h2{min-width:0;margin:0 12px;font-size:20px;letter-spacing:-.6px;white-space:nowrap}.month-controls button{padding:8px 12px;border:1px solid var(--line);background:white;min-height:42px}.month-controls #today{font-size:12px;margin-left:4px}
.view-switch{margin:0;padding:3px;border:1px solid var(--line);background:#fff;border-radius:9px;display:flex;gap:0}.view-switch button{font-size:11px;font-weight:700;padding:8px 12px;min-height:36px;border-radius:6px;white-space:nowrap}
#calendar-options-toggle{font-size:12px;background:#fff;border-color:var(--line);padding:10px 14px;white-space:nowrap}#calendar-options-toggle span{margin-left:12px}#calendar-options{margin:16px 0;padding:20px;background:#fff;border:1px solid var(--line);border-radius:12px}.calendar-export-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.calendar-export-actions button{font-size:12px}.search-label,.view-tools label{font-size:12px}#view-hint:empty{display:none}#view-hint{margin:8px 0 0;font-size:11px}#active-filter-note{margin:4px 0 0;font-size:12px}#active-filter-note button{font-size:12px;padding:2px 8px;min-height:32px}
.planner-grid{grid-template-columns:minmax(0,1.8fr) minmax(270px,1fr);gap:16px}.planner-grid section{border-radius:12px;box-shadow:none;border-color:var(--line)}.calendar-panel{padding:0;overflow:hidden}.weekdays{gap:0;background:#fff;border-bottom:1px solid var(--line)}.weekdays span{padding:14px 0;font-size:11px}.weekdays span:nth-last-child(-n+2){color:#a34a36}
.calendar-days{gap:0}.planner .day{align-items:flex-start;gap:6px;min-height:91px;padding:10px 8px;font-size:12px;font-weight:600;border:0;border-right:1px solid #edf0f3;border-bottom:1px solid #edf0f3;border-radius:0;background:#fff;color:#2d415e}.planner .day:nth-child(7n){border-right:0}.planner .day.outside{background:#fafbfc;color:#627085}.planner .day.selected{background:#e7effa;color:#173d6b;box-shadow:inset 0 0 0 2px var(--primary);border-radius:0}.planner .day.is-today{box-shadow:inset 0 3px var(--primary);border-radius:0}.planner .day.selected.is-today{box-shadow:inset 0 0 0 2px var(--primary)}.planner .day.selected:hover{background:#dce7f7}.planner .day small{font-size:9px;line-height:1.4;max-width:100%}.planner .day .day-weekend-label{background:#fae9e3;color:#823d2c;padding:3px 5px;width:100%;font-size:9px;border-radius:4px}.planner .day.selected .day-weekend-label{background:#f4ded3;color:#6f3628}.planner .day .day-training-label{background:#e8f0fc;color:#284b79;border-radius:4px;padding:3px 5px}.planner .day .day-school-label{font-size:9px}
.agenda{padding:22px}.agenda .eyebrow{display:none}.agenda h2{font-size:18px;letter-spacing:-.4px;margin:0 0 20px}.weekend-day-summary{background:#fcf0e9;border:0;border-radius:8px;padding:14px;margin:0 0 20px}.weekend-day-summary h3{font-size:12px}.weekend-day-row p{font-size:12px;color:#6c3a2e}.weekend-day-row{border-color:#edd9cd}.event-card{padding:18px 0;border-color:var(--line)}.event-card h3{font-size:15px}.event-card p{font-size:12px}.event-card .event-time{font-size:12px;font-weight:700}.event-actions{gap:6px}.event-actions button{font-size:11px;padding:6px 9px;border-radius:6px}.agenda #add-selected{width:100%;margin-top:18px;background:#f5f7fa;font-size:12px;border:0;min-height:44px}
#sync-status:empty,#family-status:empty,#training-status:empty{display:none}#sync-status{font-size:11px;margin:0 0 12px;color:var(--muted)}.working-name-note{font-size:10px!important;margin:24px 0 0!important;color:#627085}
.calendar-mode footer{margin-left:264px;margin-right:32px;font-size:10px;padding:24px 0}.calendar-mode footer .brand{font-size:16px}.calendar-mode footer .brand small{font-size:10px}.calendar-mode footer p{font-size:10px}
.weekend-panel{margin:0;max-width:none;background:#fff;padding:26px;border:1px solid var(--line);border-radius:12px;box-shadow:none}.weekend-panel .eyebrow{display:none}.weekend-panel .note{font-size:12px}.weekend-card{background:#faf9f6;border-color:var(--line);border-radius:10px}.weekend-card h3{font-size:17px}.weekend-current{background:#fae9e3;color:#783d2e}.weekend-controls button{font-size:12px}.weekend-controls input{font-size:13px}.weekend-panel .task-heading h2{font-size:22px}.weekend-child strong{font-size:14px}
.settings-panel{max-width:none;margin:0;padding:0;background:none;border:0}.settings-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:22px;align-items:start}.settings-group{background:white;border:1px solid var(--line);border-radius:12px;padding:26px;min-width:0}.settings-group h2{font-size:20px;letter-spacing:-.6px;margin:0 0 10px}.settings-group p{font-size:13px;line-height:1.8}.settings-group .account-bar{margin:20px 0}.settings-group #account-tools{padding:0;border:0;box-shadow:none;display:block}.settings-group .account-identity{margin-bottom:22px}.settings-group .account-identity .eyebrow{font-size:10px}.settings-group .account-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.settings-group .storage-note{padding:12px;font-size:11px!important;line-height:1.8;margin-bottom:0}.settings-group .invite-role-label{font-size:11px}.settings-group .invite-role-label select{font-size:12px}.settings-actions{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}.settings-group .backup-tools{margin:20px 0 0;border-radius:8px;padding:14px;background:#f8f9fb}.backup-tools summary{font-size:12px;cursor:pointer}.backup-actions{flex-wrap:wrap}.settings-group button{font-size:12px}
.task-panel{max-width:none}.collection-layout{grid-template-columns:minmax(260px,.85fr) minmax(0,1.5fr);gap:22px}.task-panel .collection-entry form,.collection-results{border-radius:12px;padding:26px;box-shadow:none}.task-panel .collection-entry .note,.collection-results>.note{font-size:12px;line-height:1.8}.task-panel label{font-size:13px}.task-panel .task-heading h2{font-size:22px}.task-panel>.note{font-size:12px}.task-row{padding:24px 0}.task-content h3{font-size:19px}.task-content p{font-size:13px}.task-panel .event-actions button{font-size:12px;min-height:40px}.task-panel .collection-entry input,.task-panel .collection-entry textarea,.task-panel .collection-entry select{font-size:14px;border-color:#bec8d4}.task-heading>button{font-size:12px}.task-state{font-size:11px}
dialog{background:#fff;border-radius:16px;border-color:var(--line);padding:30px;box-shadow:0 24px 90px #1f2b3a38}dialog .dialog-heading h2{font-size:25px;letter-spacing:-.8px}dialog p,dialog li{font-size:13px;line-height:1.8}dialog label{font-size:13px;color:#3e526c}dialog .note{font-size:12px}dialog input,dialog select,dialog textarea{font-size:14px;min-height:44px;border-color:#bec8d4}dialog button{font-size:13px}dialog h3{font-size:18px}.form-columns{gap:16px}dialog input[type=checkbox]{min-height:20px}#auth-dialog>form>p:first-of-type{font-size:13px}#auth-dialog #auth-invite{background:#fafbfc}
.workspace-switch button{justify-content:flex-start;font-size:14px}.workspace-switch button[aria-pressed=true] img{filter:none}.workspace-switch button[aria-pressed=true]:hover{background:#e4edf9!important;color:var(--primary)}
.planner .day{min-height:85px;font-size:13px}.weekend-upcoming .weekend-assignment{text-align:left}.weekend-upcoming h3{font-size:15px}.weekend-upcoming p{font-size:11px}#weekend-upcoming-children strong{font-size:13px}.weekend-upcoming .weekend-assignment{font-size:12px}
.calendar-mode .planner>.welcome-banner+div+#sync-status{margin-bottom:8px}
@media(min-width:1700px){.calendar-mode .planner{margin-right:auto}.hero-copy h1{font-size:68px}}
@media(max-width:1200px){.calendar-mode .site-header,.workspace-switch{width:210px}.calendar-mode .site-header{padding-left:17px}.calendar-mode .site-header .brand{font-size:19px}.workspace-switch{padding-left:10px;padding-right:10px}.workspace-switch button{font-size:12px;gap:10px}.calendar-mode .planner{margin-left:210px;padding:28px 24px}.calendar-mode footer{margin-left:234px;margin-right:24px}.calendar-toolbar{justify-content:flex-start}.calendar-toolbar .view-switch{margin-left:auto}#calendar-options-toggle{margin-left:auto}.planner-grid{grid-template-columns:minmax(0,1.6fr) minmax(240px,1fr)}.planner .day{min-height:86px;padding:9px 5px}.planner-intro h1{font-size:31px}.hero-copy h1{font-size:58px}.hero-visual{height:500px}.everyday-copy h2{font-size:40px}#landing .everyday-section{gap:60px}.weekend-upcoming{gap:12px}#weekend-upcoming-show{font-size:10px}.settings-grid{grid-template-columns:1fr 1fr}}
@media(max-width:960px){.site-header{padding:20px 28px}#landing{padding:0 28px}#landing .landing-hero{min-height:580px;padding-bottom:50px}.hero-copy h1{font-size:48px;letter-spacing:-2px}.hero-description{font-size:16px;max-width:315px}.hero-actions{gap:8px}.hero-actions button,.hero-actions .button-link{padding:12px 14px;font-size:11px}.hero-visual{height:470px;margin-left:-65px}.week-preview{left:12%;padding:12px;bottom:26px}.week-heading h2{font-size:11px}.example-caption{font-size:9px}.preview-day{font-size:10px}.preview-day small{font-size:8px}.everyday-visual img{height:500px}#landing .everyday-section{gap:36px;margin-top:20px}.everyday-copy h2{font-size:35px}.explore-rows article{gap:12px}.explore-rows h3{font-size:17px}.explore-rows p{font-size:13px}.landing-invite h2{font-size:34px}footer{margin-left:28px;margin-right:28px}.planner-grid{grid-template-columns:1fr}.agenda{padding:22px}.planner .day{min-height:92px}.collection-layout{grid-template-columns:1fr}.settings-grid{grid-template-columns:1fr}.welcome-banner>div{max-width:75%;padding:24px}.welcome-banner h2{font-size:21px}.weekend-list{grid-template-columns:1fr}}
@media(max-width:760px){.site-header{padding:18px 22px;min-height:78px}.site-header .brand{font-size:21px}.site-header .brand img{width:30px;height:30px}.site-header nav,#header-auth{gap:6px}.site-header button{font-size:11px;padding:9px 12px}#landing{padding:0 22px}#landing .landing-hero{grid-template-columns:1fr;padding:30px 0 34px;min-height:0}.hero-copy{padding:0 0 26px;max-width:520px}.hero-copy h1{font-size:48px;letter-spacing:-2.2px;max-width:440px;margin-bottom:20px}.hero-description{font-size:16px;max-width:400px;margin-bottom:24px}.hero-actions button,.hero-actions .button-link{font-size:12px;padding:12px 17px;min-height:48px}.hero-visual{height:365px;margin:0}.hero-photo{width:100%;mask-image:none;-webkit-mask-image:none;border-radius:16px;object-position:70% center}.week-preview{left:12px;right:12px;bottom:14px;padding:14px}.week-heading h2{font-size:12px}.example-caption{font-size:10px}.preview-day{min-height:58px;font-size:11px}.preview-day small{font-size:9px}#landing .everyday-section{grid-template-columns:1fr;gap:30px;margin:26px 0 50px}.everyday-copy h2{font-size:38px}.explore-rows article{padding:22px 0;gap:16px}.step-number{width:28px}.explore-rows h3{font-size:18px}.explore-rows p{font-size:14px;max-width:none}.everyday-visual img{height:420px;object-position:center 55%}.everyday-visual figcaption{font-size:11px}#landing .landing-invite{flex-direction:column;align-items:flex-start;padding:32px;border-radius:16px;gap:28px}.landing-invite h2{font-size:35px}.landing-invite .primary{min-width:0;width:100%}.landing-disclaimer{font-size:10px;line-height:1.8}footer{margin:32px 22px 0;padding:24px 0}footer #install-app{float:none;margin-bottom:20px;display:block}
 .calendar-mode .site-header{position:relative;top:auto;left:auto;width:auto;max-width:none;min-height:72px;height:72px;padding:16px 20px;background:#fff;border-bottom:1px solid var(--line);border-right:0;gap:8px;flex-wrap:nowrap}.calendar-mode .site-header .brand{font-size:20px}.calendar-mode .site-header nav{display:flex}.calendar-mode .site-header [data-open-planner],.calendar-mode #header-auth{display:none}.calendar-mode #header-account{font-size:11px;min-height:40px;padding:8px 12px;background:#f3f5f8;border:0}
 .calendar-mode .planner{margin:0;padding:0 18px 20px;max-width:none;min-height:0}.workspace-switch{position:relative;top:auto;left:auto;bottom:auto;width:auto;margin:0 -18px 24px;padding:10px 18px;display:flex;flex-direction:row;justify-content:flex-start;gap:7px;border-right:0;border-bottom:1px solid var(--line);border-radius:0;overflow-x:auto;overflow-y:visible;background:white;scrollbar-width:thin;align-items:center}.workspace-primary,.workspace-secondary{display:contents}.workspace-switch button{flex-direction:column;gap:6px;padding:9px 12px;font-size:10px;min-height:64px;justify-content:center;flex-shrink:0;min-width:70px;border-radius:8px}.workspace-switch button img{width:19px;height:19px}.workspace-switch .nav-divider,.workspace-secondary p{display:none}
 .planner-intro{margin-bottom:18px;display:flex;gap:12px;align-items:center;flex-wrap:wrap}.planner-intro h1{font-size:29px;letter-spacing:-1px}.planner-intro p{font-size:12px;max-width:280px;margin-top:8px}.planner-intro #add-event{margin:0;font-size:11px;min-height:42px;padding:9px 13px}.welcome-banner{min-height:110px;margin-bottom:14px}.welcome-banner>div{padding:20px;max-width:75%}.welcome-banner h2{font-size:20px;max-width:190px;line-height:1.3}.welcome-banner p{font-size:11px;max-width:185px}.welcome-banner img{width:50%;object-position:70% center}.weekend-upcoming{padding:16px;margin-bottom:18px;gap:14px}.weekend-upcoming-heading>div{min-width:0;flex:1}.weekend-upcoming h3{font-size:13px}.weekend-upcoming p{font-size:10px}.weekend-upcoming ul{flex-basis:100%;order:3;gap:14px!important}#weekend-upcoming-show{order:2;font-size:10px;max-width:115px;padding:4px;text-align:right;white-space:normal;line-height:1.6}#weekend-upcoming-children li{padding-left:12px;min-width:110px;flex:1}#weekend-upcoming-children strong{font-size:12px}
 .calendar-toolbar{display:flex;gap:12px;flex-wrap:wrap}.month-controls{width:100%;gap:5px}.month-controls h2{order:-1;flex:1;margin:0 8px 0 0;font-size:21px}.month-controls #previous-month{order:1}.month-controls #next-month{order:2}.month-controls #today{order:3;font-size:11px}.month-controls button{min-width:38px;min-height:40px;padding:7px 11px}.calendar-toolbar .view-switch{margin-left:0;flex:1;justify-content:stretch}.view-switch button{font-size:10px;padding:8px 10px;flex:1}.view-switch{padding:3px}.calendar-toolbar #calendar-options-toggle{font-size:10px;min-height:42px;padding:9px 11px}.calendar-toolbar #calendar-options-toggle span{margin-left:3px}#calendar-options{padding:16px}.view-tools{display:flex;flex-wrap:wrap}.view-tools label{min-width:130px;flex:1}.calendar-export-actions{display:grid;grid-template-columns:1fr}.calendar-controls{margin-bottom:14px}.planner-grid{gap:18px;grid-template-columns:1fr}.planner-grid .calendar-panel{padding:0!important}.weekdays span{font-size:10px;padding:12px 0}.planner .day{min-height:76px;padding:9px 3px;gap:6px;font-size:11px}.planner .day small{font-size:8px!important}.planner .day .day-weekend-label{font-size:8px!important;padding:2px 1px}.calendar-days{gap:0}.agenda{padding:20px!important}.agenda h2{font-size:19px}.event-card h3{font-size:16px}.event-card p{font-size:13px}.event-actions button{min-height:40px}.calendar-mode footer{margin:24px 18px 0;padding:20px 0}.calendar-mode footer #install-app{display:none}
 .weekend-panel{padding:18px}.weekend-panel .task-heading{display:block}.weekend-panel h2{font-size:21px}.weekend-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.weekend-actions button{font-size:11px;width:auto;flex:1}.weekend-controls{gap:8px}.weekend-controls button{font-size:11px}.weekend-controls #weekend-today,.weekend-controls #weekend-export-open,.weekend-controls #weekend-history-open,.weekend-controls #weekend-proposals-open{width:auto;flex:1;min-width:120px}.weekend-card{padding:16px}.weekend-list{grid-template-columns:1fr}.weekend-child strong{font-size:14px}
 .settings-grid{grid-template-columns:1fr;gap:18px}.settings-group{padding:22px}.settings-group .account-actions{display:flex}.settings-group .account-actions button{flex:1;white-space:normal}.settings-group .account-actions .invite-role-label{width:100%;flex-basis:100%}.settings-group h2{font-size:20px}.collection-layout{grid-template-columns:1fr}.task-panel .collection-entry form,.collection-results{padding:22px;border-radius:12px}.task-panel .task-heading{gap:12px;align-items:center;flex-wrap:wrap}.task-panel .task-heading h2{font-size:21px}.task-panel .task-heading button{font-size:11px}.task-panel .event-actions{display:flex;flex-wrap:wrap}.task-panel .event-actions button{width:auto;flex:auto;font-size:11px}.task-content h3{font-size:19px}.collection-results>.note{font-size:12px}.task-panel .collection-entry .note{font-size:12px}.task-panel label{font-size:13px}.task-filters{display:block}.task-filters label{display:block;margin:0 0 14px}.task-form-actions button{font-size:12px}.settings-group .backup-actions button{width:100%}
 dialog{padding:24px;width:calc(100% - 24px);max-height:calc(100dvh - 24px);border-radius:14px}dialog .dialog-heading h2{font-size:23px}dialog label{font-size:13px}dialog input,dialog select,dialog textarea{font-size:16px}dialog p,dialog li{font-size:13px}dialog .note{font-size:12px}.dialog-actions button{font-size:12px}.form-columns{grid-template-columns:1fr}#auth-dialog .dialog-actions{display:grid;grid-template-columns:1fr 1fr}
}
.workspace-tools{display:flex;flex-direction:column;flex:1;gap:5px}.workspace-secondary{margin-top:auto;padding-top:30px}.workspace-switch{justify-content:flex-start;gap:0}.workspace-primary{gap:5px}.workspace-switch #workspace-more,.nav-label-mobile{display:none}#welcome-add-child{margin-top:12px;border:0;background:white;color:var(--primary);font-size:12px;padding:8px 12px;min-height:38px}
@media(max-width:760px){.workspace-switch{display:block;overflow:visible;margin-bottom:24px;padding:8px 12px}.workspace-primary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:3px}.workspace-switch button{justify-content:center;min-width:0;font-size:10px;line-height:1.4;white-space:normal;padding:8px 2px;min-height:64px;text-align:center}.workspace-switch button span{white-space:nowrap;font-size:9px}.workspace-switch #workspace-more{display:flex}.workspace-switch .nav-label-mobile{display:inline}.workspace-switch #workspace-weekends .nav-label-wide{display:none}.workspace-tools{display:none}.workspace-switch.is-expanded .workspace-tools{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:10px 4px 4px;border-top:1px solid var(--line);margin-top:8px}.workspace-tools .workspace-secondary{display:contents;padding:0;margin:0}.workspace-tools button{flex-direction:row;justify-content:flex-start;text-align:left;gap:10px;padding:10px 12px;min-height:48px}.workspace-tools button span{font-size:11px;white-space:normal}.workspace-tools .nav-divider,.workspace-secondary p{display:none}#weekend-upcoming-children{flex-basis:100%;order:3;gap:12px!important}#weekend-upcoming-children li{flex:1;min-width:100px}#weekend-upcoming-show{max-width:110px}#weekend-upcoming-dates{max-width:190px;font-size:10px}.weekend-upcoming .weekend-upcoming-heading>div{min-width:170px}.weekend-upcoming h3{font-size:14px}.weekend-upcoming .weekend-assignment{text-align:left}.welcome-banner>div{max-width:70%}#welcome-add-child{font-size:11px;padding:7px 10px}}
@media(max-width:360px){.site-header{padding:16px}.site-header .brand{font-size:18px;gap:7px}.site-header .brand img{width:27px;height:27px}#header-auth{gap:0}.site-header button{font-size:10px;padding:8px}.hero-copy h1{font-size:43px}.hero-actions{flex-wrap:wrap}.hero-actions button,.hero-actions .button-link{font-size:11px;padding:12px}.preview-day small{font-size:8px}.week-heading h2{font-size:10px}.example-caption{font-size:9px}.calendar-toolbar #calendar-options-toggle{padding:8px;font-size:9px}.view-switch button{padding:8px;font-size:9px}.planner-intro h1{font-size:27px}.workspace-switch button span{font-size:8px}.workspace-switch{padding-left:8px;padding-right:8px}.weekend-upcoming .weekend-upcoming-heading>div{min-width:0;flex-basis:100%}#weekend-upcoming-show{max-width:none;margin-left:0;order:4;text-align:left}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
@media print{.calendar-mode .site-header,.workspace-switch,.welcome-banner,#weekend-overview-slot,.calendar-controls,.settings-panel,footer{display:none!important}.calendar-mode .planner{margin:0;padding:0;max-width:none}.planner-grid{display:block}.planner .day.selected{background:#fff;color:var(--ink);box-shadow:inset 0 0 0 2px var(--primary)}.agenda{margin-top:20px!important}.planner .day{min-height:70px}}

.nav-updates{font-size:9px!important;font-weight:800;line-height:1.5;padding:2px 6px;margin-left:auto;border-radius:5px;background:#f8e5dc;color:#853a27}.workspace-switch button{position:relative}@media(max-width:760px){.workspace-switch{max-width:none}.nav-updates{position:absolute;top:1px;right:1px;font-size:8px!important;padding:1px 3px;margin:0}}
@media(max-width:600px){.landing-mode .site-header #header-auth .primary{display:none}.landing-mode .site-header{gap:12px}.landing-mode .site-header .text-button{white-space:nowrap}}
.weekend-handoffs{display:grid;gap:16px;margin:20px 0}.weekend-handoff{min-width:0;border:1px solid var(--line);border-radius:12px;padding:16px 18px 20px;background:#fafbfdf0}.weekend-handoff legend{font-size:14px;font-weight:800;padding:0 6px;overflow-wrap:anywhere;max-width:100%}.weekend-handoff .weekend-time-check{display:flex;gap:10px;align-items:center;margin:10px 0 0;font-size:13px}.weekend-time-check input[type=checkbox]{appearance:auto;display:inline-block;width:20px;height:20px;min-height:20px;flex-shrink:0;accent-color:var(--primary);padding:0;margin:0}.weekend-time-summary{display:block;font-size:11px!important;line-height:1.7;color:#536174;white-space:normal;overflow-wrap:anywhere;max-width:100%}.weekend-day-row>div{min-width:0}.weekend-upcoming .weekend-time-summary{max-width:260px;font-size:10px!important}#weekend-dialog h3{margin-top:26px}@media(max-width:600px){.weekend-handoff{padding:14px}.weekend-handoff .form-columns{grid-template-columns:1fr}.weekend-upcoming .weekend-time-summary{font-size:10px!important}.weekend-time-check{line-height:1.7}}
#weekend-dialog{width:min(800px,calc(100% - 32px))}.weekend-handoffs{grid-template-columns:1fr 1fr}.weekend-handoff .form-columns{grid-template-columns:1fr 1fr;gap:12px}@media(max-width:600px){.weekend-handoffs{grid-template-columns:1fr}.weekend-handoff .form-columns{grid-template-columns:1fr 1fr;gap:10px}}
#care-dialog{width:min(860px,calc(100% - 32px))}#care-form{border:1px solid var(--line);padding:24px;border-radius:12px;margin-top:24px;background:#fafbfc}#care-form h3{margin-top:0}#care-dialog .weekend-time-check{display:flex;gap:10px;align-items:center;margin-top:20px}.care-rule-preview{padding:14px;background:#edf2fa;border-radius:8px;font-weight:600}.care-exceptions{margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}.care-exceptions summary{cursor:pointer;font-size:13px}.care-exceptions button{margin-top:12px}#care-items li{margin:14px 0}#care-items li button{display:block;margin-top:8px;font-size:11px}#care-items h4{font-size:13px}.workspace-switch #care-open span{white-space:normal}#care-feedback:empty,#care-error:empty{display:none}#care-error{color:#8b3526}#care-feedback{padding:12px;border-radius:8px;background:#edf2fa;font-size:13px}#care-dialog input[type=checkbox]{width:20px;min-height:20px;flex-shrink:0}@media(max-width:600px){#care-form{padding:18px}#care-form .form-columns{grid-template-columns:1fr 1fr;gap:10px}#care-form .form-columns label{min-height:44px;display:flex;align-items:flex-end}#care-dialog .dialog-actions{justify-content:flex-start}#care-dialog .dialog-actions button{flex:1;font-size:11px}.workspace-tools #care-open span{font-size:11px}}
.view-switch button,.workspace-switch button{transition:none}
