:root{--blue:#244bd7;--ink:#192947;--muted:#58647a;--yellow:#ffdf71;--paper:#fffefa;--line:#e2e6ef;--pale:#edf3ff;--radius:14px;color-scheme:light;font-family:Arial,Helvetica,sans-serif;font-size:16px;color:var(--ink);background:var(--paper)}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,summary,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.04em}p{line-height:1.65}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #af7900;outline-offset:4px}button:disabled{opacity:.65;cursor:wait}[hidden]{display:none!important}.wrap{max-width:1220px;margin:0 auto;padding-left:40px;padding-right:40px}.site-header{max-width:1340px;min-height:106px;margin:auto;padding:26px 48px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:inline-flex;align-items:center;gap:9px;font:800 29px/1 'Trebuchet MS',Arial,sans-serif;letter-spacing:-1.5px}.brand-mark{display:inline-flex;align-items:center;justify-content:center;color:var(--yellow);background:var(--blue);width:34px;height:36px;border-radius:9px;font:800 29px/1 Arial;transform:rotate(-8deg)}.brand-dot{color:var(--blue);margin-left:-9px}.site-header nav{display:flex;align-items:center;gap:28px;font-size:.9rem}.text-button{border:0;background:none;padding:10px 0;font-weight:600}.text-button:hover,.demo-link:hover{text-decoration:underline;text-underline-offset:5px}.button{border:1px solid transparent;border-radius:9px;background:var(--blue);color:white;display:inline-flex;align-items:center;justify-content:center;gap:28px;font-weight:700;padding:17px 23px;line-height:1.3;min-height:52px;box-shadow:0 3px 0 #123199;transition:background .18s,transform .18s}.button:hover{background:#173fbf;transform:translateY(-1px)}.button.small{font-size:.875rem;padding:13px 18px;min-height:44px;gap:16px}.hero{display:grid;grid-template-columns:1.08fr 1fr;gap:74px;align-items:center;padding-top:69px;padding-bottom:78px}.eyebrow{font-size:.73rem;letter-spacing:.12em;font-weight:800;line-height:1.6;color:var(--blue);margin-bottom:23px}.hero .eyebrow{display:flex;align-items:center;gap:8px}.tiny-check{font-size:16px}.hero h1{font-size:clamp(2.8rem,4.6vw,4.15rem);line-height:1.06;margin-bottom:24px;font-weight:800;letter-spacing:-.055em}.hero h1 span{color:var(--blue)}.hero-description{font-size:1.1rem;max-width:455px;color:var(--muted);line-height:1.65;margin-bottom:30px}.hero-actions{display:flex;align-items:center;gap:27px}.demo-link{font-size:.94rem;font-weight:700}.demo-link span{margin-left:7px}.reassurance{font-size:.8rem;color:var(--muted);margin:18px 0 0}.hero-chart{position:relative;padding:31px 22px 19px;background:#dbeaff;border-radius:23px;transform:rotate(1.5deg)}.chart-label{text-align:center;font-size:.68rem;letter-spacing:.1em;font-weight:800;margin-bottom:20px;color:#244a92}.live-icon{font-size:17px;margin-right:7px;vertical-align:middle}.paper-chart{position:relative;background:white;padding:27px 26px 14px;box-shadow:0 7px 15px #2d456116;border:1px solid #d8dee7;border-radius:3px;transform:rotate(-3deg)}.chart-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.chart-top .eyebrow{font-size:.625rem;letter-spacing:.1em;margin-bottom:6px;color:var(--muted)}.chart-top h2{font-size:1.38rem;letter-spacing:-.04em;margin-bottom:19px}.week-tag{font-size:.7rem;border:1px solid #ddd;padding:6px 10px;border-radius:5px;margin-top:6px;align-self:flex-start;color:var(--muted)}.demo-progress{display:flex;justify-content:space-between;font-size:.68rem;font-weight:600;color:#59677e;margin-bottom:9px}.progress-track{height:5px;background:#edf0f4;border-radius:3px;overflow:hidden;margin-bottom:10px}.progress-track span{display:block;height:100%;background:var(--blue);width:40%;border-radius:3px;transition:width .2s}.demo-list{list-style:none;padding:0;margin:0}.demo-list li{border-bottom:1px solid #edf0f3}.demo-list label{display:flex;align-items:center;gap:11px;min-height:57px;cursor:pointer}.demo-check{position:absolute;opacity:0;width:24px;height:24px}.check-shape{height:21px;width:21px;border:1.5px solid #b9c3d0;border-radius:5px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.demo-check:checked+.check-shape{background:var(--blue);border-color:var(--blue)}.demo-check:checked+.check-shape:after{content:'✓';color:white;font-size:16px}.demo-check:focus-visible+.check-shape{outline:3px solid #af7900;outline-offset:3px}.demo-check:checked~.chore-text{text-decoration:line-through;color:#8b929d}.chore-text{font-size:.82rem;font-weight:600;line-height:1.3}.person{margin-left:auto;font-size:.65rem;padding:6px 10px;border-radius:5px;font-weight:600;white-space:nowrap}.blue{background:#dbe9ff;color:#2b54a0}.peach{background:#ffe3d5;color:#914a22}.lilac{background:#eee5ff;color:#69519a}.yellow{background:#fff0bd;color:#785811}.chart-bottom{font-size:.69rem;color:#68748a;text-align:center;padding-top:17px}.chart-bottom span{color:var(--blue);font-size:20px;vertical-align:-2px;margin-right:4px}.hand-note{font-family:Georgia,serif;font-style:italic;color:#315197;font-size:1.06rem;transform:rotate(-3deg);text-align:center;margin:22px 0 10px}.demo-disclaimer{font-size:.65rem;text-align:center;color:#4b6283;margin:0;line-height:1.5}.promise-strip{border-top:1px solid #e4e8ec;border-bottom:1px solid #e4e8ec;min-height:84px;display:flex;justify-content:center;gap:50px;align-items:center;font-size:1.03rem;font-weight:600;background:#f6f8fc}.promise-strip span+span:before{content:'✓';margin-right:50px;color:var(--blue)}.promise-strip .strip-star:before{display:none}.strip-star{font-size:40px;color:var(--blue)}.how-section{padding-top:81px;padding-bottom:80px}.section-heading{text-align:center}.section-heading .eyebrow{margin-bottom:12px}h2{font-size:2.5rem;line-height:1.15}.section-heading h2{margin-bottom:15px}.section-heading em{font-family:Georgia,serif;color:var(--blue);font-weight:400}.section-heading p:not(.eyebrow){color:var(--muted)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:70px;margin-top:43px}.step-number{font-weight:800;color:var(--blue);width:43px;height:43px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#e6edff;font-size:.85rem;margin-bottom:22px}.steps article:nth-child(2) .step-number{background:#fff0b9;color:#735c00}.steps article:nth-child(3) .step-number{background:#f1e5ff;color:#6d4696}.steps h3{font-size:1.25rem;letter-spacing:-.025em;margin-bottom:12px}.steps p{font-size:.95rem;color:var(--muted);margin:0}.together-section{display:grid;grid-template-columns:1fr 1fr;gap:74px;padding-top:25px;padding-bottom:89px;align-items:center}.family-image{overflow:hidden;border-radius:16px;background:#dbe9ff}.family-image img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}.together-copy .eyebrow{margin-bottom:15px}.together-copy h2{margin-bottom:23px;font-size:2.75rem}.together-copy p:not(.eyebrow){color:var(--muted);font-size:.97rem}.together-copy .plain-promise{font-weight:700;color:var(--ink)!important;font-size:.87rem!important;margin:24px 0 0}.plain-promise span{color:var(--blue);margin-right:7px}.signup-banner{display:flex;align-items:center;justify-content:space-between;gap:40px;background:var(--blue);border-radius:18px;padding:46px 48px;max-width:1140px;color:white}.signup-banner .eyebrow{color:#c7d5ff;margin-bottom:17px}.signup-banner h2{font-size:2.22rem;line-height:1.2;margin-bottom:13px}.signup-banner p:not(.eyebrow){font-size:.9rem;margin:0;color:#dbe3ff}.signup-banner>div:last-child{text-align:center;flex-shrink:0}.signup-banner>div:last-child p{font-size:.75rem;margin-top:14px}.yellow-button{background:var(--yellow);color:var(--ink);box-shadow:0 3px 0 #c6a83e}.yellow-button:hover{background:#ffeb98}.faq-section{padding-top:86px;padding-bottom:76px;display:grid;grid-template-columns:1fr 1.35fr;gap:80px}.faq-section h2{font-size:2.05rem}.faq-items details{border-bottom:1px solid var(--line);padding:0 0 21px;margin-bottom:21px}.faq-items summary{font-size:1rem;font-weight:700;cursor:pointer;list-style:none;position:relative;padding-right:35px;line-height:1.45}.faq-items summary:after{content:'+';position:absolute;right:4px;font-size:23px;top:-3px;font-weight:400;color:var(--blue)}.faq-items details[open] summary:after{content:'−'}.faq-items details p{font-size:.94rem;color:var(--muted);margin:15px 0 0}.site-footer{border-top:1px solid var(--line);padding-top:35px;padding-bottom:35px;display:flex;justify-content:space-between;gap:35px}.site-footer .brand{font-size:23px}.site-footer .brand-mark{width:28px;height:29px;font-size:23px}.site-footer p{font-size:.8rem;color:var(--muted);margin:12px 0 0}.footer-right{text-align:right}.footer-right p{margin-top:0}.footer-right>div{display:flex;justify-content:flex-end;align-items:center;gap:20px;font-size:.75rem;color:var(--muted);margin-top:8px}.footer-right .text-button{font-weight:400;padding:0}dialog{border:0;border-radius:20px;box-shadow:0 25px 120px #12234540;width:min(480px,calc(100% - 32px));padding:38px;color:var(--ink);background:var(--paper);max-height:calc(100dvh - 32px);overflow:auto}dialog::backdrop{background:#10234790;backdrop-filter:blur(4px)}dialog h2{font-size:1.85rem;margin-bottom:12px;padding-right:15px}dialog>p:not(.eyebrow){font-size:.94rem;color:var(--muted)}dialog .eyebrow{margin-bottom:13px}.close-dialog{border:0;background:#eff2f7;position:absolute;right:14px;top:14px;width:33px;height:33px;border-radius:50%;font-size:24px;line-height:1}.modal-brand{margin-bottom:22px}form label{display:block;font-weight:600;font-size:.875rem;margin:18px 0 8px}input:not([type=checkbox]),select{width:100%;border:1px solid #bec8d8;border-radius:8px;padding:13px 12px;background:white;min-height:47px;color:var(--ink)}.full{width:100%}.field-help{font-size:.75rem!important;color:var(--muted);margin:9px 0 19px;line-height:1.55}.form-error{font-size:.875rem;color:#aa2a30;margin:14px 0;line-height:1.5}.form-error:empty{display:none}form .button.full{margin-top:18px}.auth-switch{font-size:.82rem;display:block;text-align:center;width:100%;margin-top:12px}.recovery-link{font-size:.8rem;display:block;margin:auto;color:var(--muted)}.inline-link{border:0;padding:0;background:none;text-decoration:underline;font:inherit;cursor:pointer}.secondary{color:var(--ink);border:1px solid #c5cee0;background:white;box-shadow:0 2px 0 #dae0ea}.secondary:hover{background:#f0f4fb}.family-app{padding-top:55px;padding-bottom:80px;min-height:65vh}.app-heading{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-bottom:30px}.app-heading h1{font-size:2.5rem;line-height:1.1;margin-bottom:12px;overflow-wrap:anywhere}.app-heading .eyebrow{margin-bottom:12px}.app-heading p:not(.eyebrow){color:var(--muted);margin:0}.app-actions{display:flex;gap:12px;flex-shrink:0}.app-actions .button{font-size:.85rem;padding:12px 18px}.family-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:30px}.member-filters{display:flex;gap:8px;flex-wrap:wrap}.filter-button{border:1px solid #c9d3e6;background:white;padding:9px 15px;border-radius:30px;font-size:.85rem;font-weight:600;max-width:100%;overflow-wrap:anywhere}.filter-button.active{background:var(--blue);color:white;border-color:var(--blue)}.family-toolbar>.text-button{font-size:.82rem;white-space:nowrap}.week-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}.week-nav{display:flex;gap:14px;align-items:center}.week-nav h2{font-size:1.08rem;margin:0;letter-spacing:-.02em}.icon-button{border:1px solid var(--line);background:white;border-radius:7px;width:35px;height:35px}.week-nav .text-button,#week-progress{font-size:.8rem;color:var(--muted)}.chart-container{overflow:auto;border:1px solid #dce3ef;border-radius:12px;background:white}.weekly-chart{width:100%;border-collapse:collapse;min-width:700px}.weekly-chart th{background:#f2f6ff;padding:17px 8px;font-size:.8rem;color:var(--muted);font-weight:500;border-bottom:1px solid #e0e6ef;min-width:55px}.weekly-chart th:first-child{text-align:left;padding-left:23px;width:38%}.weekly-chart th span{display:block;font-size:1.1rem;font-weight:700;color:var(--ink);margin-top:5px}.weekly-chart th.today{background:#e0e9ff;color:var(--blue)}.weekly-chart td{padding:17px 10px;border-bottom:1px solid #edf0f6;text-align:center}.weekly-chart tr:last-child td{border-bottom:0}.weekly-chart td:first-child{text-align:left;padding-left:23px}.chore-edit{border:0;background:none;padding:0;font-weight:600;font-size:.92rem;display:block;text-align:left;line-height:1.5;overflow-wrap:anywhere}.chore-edit:hover{text-decoration:underline}.chore-owner{display:block;font-size:.75rem;color:var(--muted);margin-top:4px}.tick-box{appearance:none;width:25px;height:25px;border:1.5px solid #b6c3d7;border-radius:6px;background:white;cursor:pointer;display:inline-grid;place-items:center;vertical-align:middle;margin:2px}.tick-box:checked{background:var(--blue);border-color:var(--blue)}.tick-box:checked:after{content:'✓';font-size:19px;color:white;font-weight:700}.not-scheduled{color:#a6afbf}.app-hint{font-size:.8rem;color:var(--muted);text-align:center;margin-top:20px}.empty-state{text-align:center;padding:55px 25px}.empty-state h2{font-size:1.8rem}.empty-state p{color:var(--muted);max-width:440px;margin:0 auto 25px}.empty-symbol{font-size:40px;color:var(--blue);display:block;margin-bottom:15px}.days-field{border:0;padding:0;margin:22px 0}.days-field legend{font-size:.875rem;font-weight:600;margin-bottom:12px}#day-choices{display:flex;gap:7px;flex-wrap:wrap}#day-choices label{margin:0;position:relative;cursor:pointer}#day-choices input{position:absolute;opacity:0}#day-choices span{display:flex;width:38px;height:38px;align-items:center;justify-content:center;border:1px solid #bdc7d6;border-radius:8px;font-size:.78rem}#day-choices input:checked+span{background:var(--blue);color:white;border-color:var(--blue)}#day-choices input:focus-visible+span{outline:3px solid #af7900;outline-offset:3px}.danger{color:#ab2933;font-size:.83rem}.members-list{padding:0;list-style:none;margin:25px 0}.members-list li{padding:11px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:15px;overflow-wrap:anywhere}.members-list .text-button{padding:5px;font-size:.78rem;flex-shrink:0}.input-row{display:flex;gap:9px}.input-row input{min-width:0}.input-row .button{padding:12px 18px;box-shadow:none}.recovery-code{display:block;padding:20px 15px;border:1px dashed #7791dc;background:#eff4ff;margin:24px 0;font-size:1rem;line-height:1.7;overflow-wrap:anywhere;user-select:all}.privacy-copy h3{font-size:1rem;letter-spacing:0;margin-top:25px;margin-bottom:7px}.privacy-copy p{font-size:.87rem;color:var(--muted)}.privacy-copy .button{margin:10px 0}.confirm-buttons{display:flex;gap:10px;justify-content:flex-end;margin-top:25px}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);padding:15px 24px;max-width:calc(100% - 30px);background:var(--ink);color:white;border-radius:10px;box-shadow:0 5px 25px #1e30402f;font-size:.875rem;z-index:20;text-align:center}.skip-link{position:fixed;top:-80px;background:var(--blue);color:white;padding:12px;z-index:100}.skip-link:focus{top:8px}.site-header nav .logout-button{color:var(--muted)}
@media(min-width:1500px){.hero{padding-top:85px;padding-bottom:95px}}
@media(max-width:1050px){.site-header{padding:24px 32px}.wrap{padding-left:32px;padding-right:32px}.hero{gap:35px;padding-top:45px;padding-bottom:60px}.hero h1{font-size:3.2rem}.hero-description{font-size:1rem}.hero-actions{gap:17px;flex-wrap:wrap}.hero-chart{padding:24px 16px 16px}.paper-chart{padding:23px 18px 14px}.chore-text{font-size:.75rem}.demo-list label{gap:8px}.chart-top h2{font-size:1.17rem}.person{padding:5px 7px}.promise-strip{gap:25px;font-size:.9rem}.promise-strip span+span:before{margin-right:25px}.steps{gap:38px}.together-section{gap:42px}.signup-banner{margin-left:32px;margin-right:32px;padding:38px}.signup-banner h2{font-size:1.9rem}.faq-section{gap:50px}.app-heading{align-items:flex-start}.app-heading h1{font-size:2.1rem}}
@media(max-width:760px){.site-header{padding:21px 22px;min-height:82px}.brand{font-size:26px}.site-header nav{gap:18px}.site-header nav>.public-link,.site-header nav>.button{display:none}.site-header .text-button{font-size:.86rem}.wrap{padding-left:24px;padding-right:24px}.hero{grid-template-columns:1fr;gap:41px;padding-top:30px;padding-bottom:43px;max-width:550px}.hero h1{font-size:3.2rem}.hero .eyebrow{font-size:.62rem;margin-bottom:18px}.hero-description{font-size:1rem;margin-bottom:26px}.hero-actions{gap:22px}.hero-actions .button{font-size:.9rem;padding:15px 20px;gap:18px}.hero-actions .demo-link{font-size:.84rem}.reassurance{font-size:.73rem}.hero-chart{margin:0 8px;padding:25px 20px 19px}.chart-top .eyebrow{font-size:.59rem;margin-bottom:5px}.chart-top h2{font-size:1.26rem}.chore-text{font-size:.8rem}.demo-list label{min-height:54px}.person{font-size:.66rem}.demo-disclaimer{font-size:.65rem}.promise-strip{gap:10px;padding:22px 24px;flex-wrap:wrap;text-align:center;font-size:.88rem;line-height:1.6}.promise-strip span+span:before{margin-right:10px}.promise-strip span:nth-child(3){flex-basis:100%}.promise-strip span:nth-child(3):before,.strip-star{display:none}.how-section{padding-top:53px;padding-bottom:40px}.section-heading h2{font-size:2rem}.section-heading p:not(.eyebrow){font-size:.9rem}.steps{grid-template-columns:1fr;gap:27px;max-width:470px;margin:30px auto 0}.steps article{position:relative;padding-left:62px}.step-number{position:absolute;left:0;top:0;margin:0}.steps h3{font-size:1.1rem;margin-bottom:8px}.steps p{font-size:.9rem}.together-section{grid-template-columns:1fr;gap:31px;padding-top:25px;padding-bottom:47px;max-width:550px}.family-image img{aspect-ratio:4/3}.together-copy h2{font-size:2.25rem}.together-copy p:not(.eyebrow){font-size:.93rem}.signup-banner{margin:0 24px;display:block;padding:32px 25px}.signup-banner h2{font-size:1.85rem}.signup-banner>div:last-child{text-align:left;margin-top:25px}.signup-banner .button{font-size:.87rem}.signup-banner>div:last-child p{text-align:left;margin-top:12px}.faq-section{display:block;padding-top:50px;padding-bottom:35px}.faq-section h2{font-size:1.85rem;margin-bottom:30px}.faq-items summary{font-size:.93rem}.site-footer{display:block;padding-top:30px;padding-bottom:28px}.footer-right{text-align:left;margin-top:25px}.footer-right>div{justify-content:flex-start}.site-footer p{font-size:.75rem}dialog{padding:32px 25px}dialog h2{font-size:1.75rem}.family-app{padding-top:30px;padding-bottom:45px}.app-heading{display:block;margin-bottom:25px}.app-heading h1{font-size:2rem}.app-heading p:not(.eyebrow){font-size:.9rem}.app-actions{margin-top:25px}.family-toolbar{align-items:flex-start;flex-direction:column;gap:6px;margin-bottom:22px}.week-toolbar{align-items:flex-start;flex-direction:column;gap:12px}.week-nav{gap:9px;flex-wrap:wrap}.week-nav h2{font-size:.91rem}.week-nav .text-button{font-size:.75rem}.icon-button{width:30px;height:33px}.weekly-chart{min-width:640px}.chart-container{margin-right:-24px;border-radius:10px 0 0 10px}.app-hint{text-align:left;font-size:.73rem}.family-app .eyebrow{font-size:.68rem}.empty-state{padding:40px 24px}.empty-state h2{font-size:1.5rem}.empty-state p{font-size:.88rem}}
@media(max-width:360px){.hero h1{font-size:2.75rem}.hero-actions{gap:16px}.hero-chart{margin:0;padding-left:14px;padding-right:14px}.chore-text{font-size:.7rem}.chart-top h2{font-size:1.08rem}.paper-chart{padding:20px 14px 12px}.demo-list label{gap:7px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.eyebrow,.demo-disclaimer,.chart-label,.chart-top .eyebrow,.demo-progress,.person,.chart-bottom,.week-tag{font-size:max(.75rem,12px)}.demo-list label{min-height:59px}
