:root{--bg:#f6f7f4;--surface:#fff;--fg:#1d2420;--muted:#66706a;--line:#dde2dc;--line-strong:#b9c2bb;--accent:#1f6f5b;--accent-ink:#fff;--accent-soft:#dcefe7;--warn:#b7791f;--warn-soft:#f6ead2;--good:#2f7d4f;--good-soft:#dff0e3;--bad:#b4433a;--bad-soft:#f5dedc;--p0:#1f6f5b;--p1:#c7542a;--p2:#3a5fb8;--p3:#b0892c;--p4:#7a4ca8;--p5:#1f8b9a;--p6:#a3395f;--p7:#5c7a2b;--skin:#f1c9a5;--skin-line:#b07a4f;--display:"Bricolage Grotesque","DM Sans",system-ui,sans-serif;--body:"DM Sans",system-ui,-apple-system,"Segoe UI",sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#141917;--surface:#1d2420;--fg:#e8ebe6;--muted:#9aa49d;--line:#2c3531;--line-strong:#465049;--accent:#5fc3a4;--accent-ink:#0f1a16;--accent-soft:#1e3a31;--warn:#e2a94a;--warn-soft:#3a2d16;--good:#6fcb8c;--good-soft:#1d3526;--bad:#ef8a80;--bad-soft:#3d2321;--p0:#5fc3a4;--p1:#f08a63;--p2:#7f9fe8;--p3:#e2bb5a;--p4:#b58ae0;--p5:#5fc4d3;--p6:#e07aa0;--p7:#9fc25a;--skin:#e8b58e;--skin-line:#8a5a35;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#141917;--surface:#1d2420;--fg:#e8ebe6;--muted:#9aa49d;--line:#2c3531;--line-strong:#465049;--accent:#5fc3a4;--accent-ink:#0f1a16;--accent-soft:#1e3a31;--warn:#e2a94a;--warn-soft:#3a2d16;--good:#6fcb8c;--good-soft:#1d3526;--bad:#ef8a80;--bad-soft:#3d2321;--p0:#5fc3a4;--p1:#f08a63;--p2:#7f9fe8;--p3:#e2bb5a;--p4:#b58ae0;--p5:#5fc4d3;--p6:#e07aa0;--p7:#9fc25a;--skin:#e8b58e;--skin-line:#8a5a35;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{height:100%}body{background:var(--bg);color:var(--fg);font-family:var(--body);-webkit-font-smoothing:antialiased;margin:0;font-size:15px;line-height:1.45}#root{min-height:100%}h1,h2,h3{font-family:var(--display);text-wrap:balance;margin:0;line-height:1.15}h1{letter-spacing:-.01em;font-size:28px;font-weight:700}h2{font-size:19px;font-weight:700}h3{font-size:15px;font-weight:700}p{margin:0}a{color:var(--accent)}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}button:disabled{cursor:default}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}input,select{font:inherit;color:var(--fg);background:var(--surface);border:1px solid var(--line-strong);border-radius:8px;min-width:0;padding:8px 10px}input[type=number]{font-variant-numeric:tabular-nums;width:84px}.eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:11.5px;font-weight:600}.muted{color:var(--muted)}.small{font-size:13px}.tnum{font-variant-numeric:tabular-nums}.wrap{max-width:960px;padding-block:0 calc(80px + env(safe-area-inset-bottom,0px));padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));margin:0 auto}header.top{z-index:5;background:var(--accent-soft);margin:0 calc(-1 * max(16px,env(safe-area-inset-left,0px))) 0 calc(-1 * max(16px,env(safe-area-inset-right,0px)));padding:calc(14px + env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-left,0px)) 12px;border-bottom:1px solid var(--line-strong);position:sticky;top:0}@media (width>=992px){header.top{border-radius:0 0 16px 16px;margin:0;padding-left:20px;padding-right:20px}}.brand{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;display:flex}.brand .hname{color:var(--muted);font-size:13px}.tabs{scrollbar-width:none;gap:6px;margin-top:10px;display:flex;overflow-x:auto}.tabs a{color:var(--fg);white-space:nowrap;background:var(--surface);border:1px solid var(--line-strong);text-align:center;border-radius:999px;flex:1;padding:8px 14px;font-weight:600;text-decoration:none}.tabs a.active{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.tabs a:hover{color:var(--fg)}.tabs a.active:hover{color:var(--accent-ink)}section.view{gap:18px;padding-top:18px;display:grid}.card{background:var(--surface);border:1px solid var(--line);border-radius:12px;gap:12px;padding:16px;display:grid}.card.tight{padding:12px 16px}.banner{border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;font-size:13.5px;display:flex}.banner.warn{background:var(--warn-soft);color:var(--warn)}.banner.bad{background:var(--bad-soft);color:var(--bad)}.banner.good{background:var(--good-soft);color:var(--good)}.banner .btn{color:inherit;border-color:currentColor}.note{color:var(--muted);background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:10px 12px;font-size:13px}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.row.form{padding-top:4px}.row.between{justify-content:space-between}.btn{border:1px solid var(--line-strong);background:var(--surface);border-radius:8px;padding:8px 14px;font-weight:600}.btn:hover{background:var(--bg)}.btn.primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.btn.primary:hover{filter:brightness(1.06);background:var(--accent)}.btn.sm{padding:5px 10px;font-size:13px}.btn:disabled{opacity:.6}.x{color:var(--muted);border-radius:6px;padding:6px 8px;font-size:13px}.x:hover{background:var(--warn-soft);color:var(--warn)}.x.confirm{background:var(--warn);color:#fff}.empty{text-align:center;border:1.5px dashed var(--line-strong);border-radius:12px;justify-items:center;gap:8px;padding:28px 20px;display:grid}.empty h2{font-size:17px}.toast{left:50%;bottom:calc(18px + env(safe-area-inset-bottom,0px));background:var(--fg);color:var(--bg);z-index:40;border-radius:999px;max-width:90vw;padding:9px 14px;font-size:13.5px;position:fixed;transform:translate(-50%)}.center{place-items:center;min-height:100%;padding:24px;display:grid}.auth{gap:14px;width:min(420px,100%);display:grid}.auth form{gap:10px;display:grid}.auth input{width:100%}.err{color:var(--bad);font-size:13.5px}.weekbar{align-items:center;gap:8px;display:flex}.weekbar .nav{border:1px solid var(--line-strong);background:var(--surface);border-radius:50%;flex:none;place-items:center;width:36px;height:36px;font-size:18px;display:grid}.days{flex:1;grid-template-columns:repeat(7,1fr);gap:4px;min-width:0;display:grid}.days button{border:1px solid #0000;border-radius:8px;justify-items:center;gap:1px;padding:6px 2px;line-height:1.1;display:grid}.days button .dn{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:11px}.days button .dd{font-family:var(--display);font-variant-numeric:tabular-nums;font-size:17px;font-weight:700}.days button .dot{background:var(--line-strong);border-radius:50%;width:5px;height:5px}.days button .dot.on{background:var(--accent)}.days button[aria-selected=true]{background:var(--surface);border-color:var(--line-strong)}.days button.today .dd{color:var(--accent)}.daylabel{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;display:flex}.gridwrap{border:1px solid var(--line);background:var(--surface);border-radius:12px;overflow-x:auto}table.grid{border-collapse:collapse;width:100%}table.grid th,table.grid td{border-bottom:1px solid var(--line);padding:0}table.grid th{text-align:left;font-size:13px;font-weight:600}table.grid thead th{background:var(--surface);z-index:1;padding:10px 12px;position:sticky;top:0}table.grid thead th.p{text-align:center;min-width:64px;max-width:96px;padding:10px 4px}table.grid thead th.p .nm{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}table.grid thead th.p.mine .nm{color:var(--accent)}.sw{vertical-align:-1px;border-radius:50%;width:10px;height:10px;margin-right:5px;display:inline-block}table.grid tr.cat th{background:var(--bg);font-family:var(--display);letter-spacing:.04em;text-transform:uppercase;color:var(--muted);padding:8px 12px;font-size:13px}table.grid td.task{padding:8px 12px;font-weight:500}table.grid td.task .min{color:var(--muted);font-size:12px;font-weight:400;display:block}table.grid td.task .due{background:var(--warn-soft);color:var(--warn);vertical-align:1px;border-radius:999px;margin-left:6px;padding:1px 6px;font-size:11px;font-weight:600;display:inline-block}table.grid td.cell{text-align:center;vertical-align:middle}.tick{border:1.5px solid var(--line-strong);background:0 0;border-radius:9px;place-items:center;width:34px;height:34px;margin:5px 0;transition:transform 80ms,background .12s;display:inline-grid}.tick:hover:not(:disabled){transform:scale(1.06)}.tick svg{opacity:0;stroke:#fff;width:18px;height:18px}.tick.on{background:var(--pc);border-color:var(--pc)}.tick.on svg{opacity:1}.tick:disabled{opacity:.45;border-style:dashed}.tick.on:disabled{opacity:.85;border-style:solid}tr.done td.task{color:var(--muted)}.rangebar{flex-wrap:wrap;gap:4px;display:flex}.rangebar button{border:1px solid var(--line-strong);background:var(--surface);border-radius:999px;padding:6px 12px;font-size:13.5px;font-weight:500}.rangebar button[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent)}.legend{flex-wrap:wrap;gap:12px;font-size:13px;display:flex}.legend span{align-items:center;gap:6px;display:inline-flex}.legend i{border-radius:50%;width:11px;height:11px;display:inline-block}.people-stats{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;display:grid}.pstat{border-left:4px solid var(--pc);gap:2px;padding:6px 0 6px 12px;display:grid}.pstat .big{font-family:var(--display);font-variant-numeric:tabular-nums;font-size:30px;font-weight:700;line-height:1}.pstat .sub{color:var(--muted);font-size:12.5px}.bars{gap:9px;display:grid}.bar{grid-template-columns:minmax(120px,1fr) 2.2fr auto;align-items:center;gap:10px;display:grid}.bar .lbl{text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:500;overflow:hidden}.bar .lbl small{color:var(--muted);font-weight:400}.bar .track{background:var(--line);border-radius:6px;height:16px;display:flex;overflow:hidden}.bar .track i{height:100%;display:block}.bar .n{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12.5px}.shares{color:var(--muted);grid-column:2/4;font-size:12.5px}.catname{margin-top:6px}.quiet{gap:4px;font-size:13.5px;display:grid}.goal{border-bottom:1px solid var(--line);grid-template-columns:1fr auto;align-items:center;gap:8px 14px;padding:12px 0;display:grid}.goal:last-child{border-bottom:0}.goal .who{font-weight:600}.goal .who i{background:var(--pc);border-radius:50%;width:10px;height:10px;margin-right:7px;display:inline-block}.goal .what{color:var(--muted);font-size:13.5px}.goal .prog{justify-items:end;gap:3px;display:grid}.goal .count{font-family:var(--display);font-variant-numeric:tabular-nums;font-size:22px;font-weight:700;line-height:1}.goal .count small{color:var(--muted);font-size:13px;font-weight:500}.pill{background:var(--line);border-radius:999px;padding:2px 8px;font-size:11.5px;font-weight:600}.pill.met{background:var(--good-soft);color:var(--good)}.pill.near{background:var(--warn-soft);color:var(--warn)}.pill.role{background:var(--accent-soft);color:var(--accent)}.goal .meter{background:var(--line);border-radius:3px;grid-column:1/3;height:6px;overflow:hidden}.goal .meter i{background:var(--pc);height:100%;display:block}.goal .rm{grid-column:1/3;justify-self:start}.list{gap:6px;display:grid}.item{border-bottom:1px solid var(--line);grid-template-columns:auto 1fr auto;align-items:center;gap:8px;padding:6px 0;display:grid}.item:last-child{border-bottom:0}.item .swb{border-radius:50%;width:12px;height:12px}.item input[type=text]{width:100%}.item .mins{color:var(--muted);align-items:center;gap:6px;font-size:13px;display:flex}.item .mins input{width:64px}.item select{padding:5px 8px;font-size:13px}.code{letter-spacing:.08em;background:var(--bg);border:1px solid var(--line);border-radius:6px;padding:6px 10px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:15px}.kv{grid-template-columns:auto 1fr;gap:4px 14px;font-size:13.5px;display:grid}.kv dt{color:var(--muted)}.kv dd{margin:0}@media (width<=520px){.bar{grid-template-columns:1fr;gap:4px}.bar .n{justify-self:start}.shares{grid-column:1}table.grid thead th.p{min-width:52px}h1{font-size:24px}.item{grid-template-columns:auto 1fr}.item>:last-child{grid-column:1/3;justify-self:end}}@media (prefers-reduced-motion:reduce){.tick{transition:none}}.arrows{gap:2px;display:inline-grid}.arrows button{color:var(--muted);border:1px solid var(--line);border-radius:4px;padding:3px 6px;font-size:9px;line-height:1}.arrows button:hover:not(:disabled){background:var(--bg);color:var(--fg)}.arrows button:disabled{opacity:.3}.catblock{gap:6px;margin-top:4px;display:grid}.catrow{gap:10px}.catinput{font-family:var(--display);background:0 0;border-color:#0000;flex:1;padding:4px 6px;font-size:15px;font-weight:700}.catinput:hover,.catinput:focus{border-color:var(--line-strong);background:var(--surface)}.taskitem{border-bottom:1px solid var(--line);gap:4px;padding:6px 0;display:grid}.taskitem .item{border-bottom:0;padding:0}.taskopts{gap:6px;padding-left:38px}.taskopts select{padding:4px 8px;font-size:13px}.taskopts .mins{color:var(--muted);align-items:center;gap:6px;font-size:13px;display:flex}.taskopts .mins input{width:64px;padding:4px 8px}.daypick{gap:3px;display:inline-flex}.daypick button{border:1px solid var(--line-strong);width:28px;height:28px;color:var(--muted);border-radius:50%;font-size:12px;font-weight:600}.daypick button.on{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.daypick button:disabled{opacity:.6}@media (width<=520px){.taskopts{padding-left:0}}.backdrop{z-index:20;background:#00000073;place-items:end center;padding:0;display:grid;position:fixed;inset:0}.sheet{background:var(--surface);color:var(--fg);width:min(520px,100%);padding:16px;padding-bottom:calc(20px + env(safe-area-inset-bottom,0px));border-radius:16px 16px 0 0;gap:12px;animation:.18s ease-out sheetin;display:grid;box-shadow:0 -8px 30px #0003}@media (width>=600px){.backdrop{place-items:center;padding:16px}.sheet{border-radius:16px;padding-bottom:16px}}@keyframes sheetin{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}.closex{width:36px;height:36px;color:var(--muted);border-radius:50%;place-items:center;font-size:22px;line-height:1;display:grid}.closex:hover{background:var(--bg);color:var(--fg)}.stack{gap:10px;display:grid}.stack input{width:100%}.todayline{color:var(--muted);align-items:center;gap:10px;font-size:13.5px;display:flex}.todayline .bar{background:var(--line);border-radius:3px;flex:1;max-width:240px;height:6px;overflow:hidden}.todayline .bar i{background:var(--accent);height:100%;display:block}.hintable{cursor:help}@media (prefers-reduced-motion:reduce){.sheet{animation:none}}table.grid thead th.p .nm{font:inherit;color:inherit;background:0 0;border:0;max-width:100%;padding:0}.tour{max-width:520px;min-height:100%;padding-block:calc(14px + env(safe-area-inset-top,0px)) calc(16px + env(safe-area-inset-bottom,0px));padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));grid-template-rows:auto 1fr auto;margin:0 auto;display:grid}.tour-top{justify-content:space-between;align-items:center;display:flex}.tour-brand{font-family:var(--display);font-size:17px;font-weight:700}.tour-body{text-align:left;align-content:start;gap:10px;padding:12px 0;animation:.35s ease-out fadeup;display:grid}.tour-body h1{font-size:24px}.tour-body p{color:var(--fg);max-width:46ch;margin:0;font-size:15.5px;line-height:1.5}.tour-art{width:100%;max-width:400px;margin:10px auto 0}.art-svg{width:100%;height:auto;display:block}.tour-choices{text-align:left;gap:8px;margin-top:6px;display:grid}.choice{border:1.5px solid var(--line-strong);background:var(--surface);text-align:left;border-radius:12px;gap:3px;padding:12px 14px;display:grid}.choice:hover{border-color:var(--accent);background:var(--accent-soft)}.choice strong{font-family:var(--display);font-size:16px}.choice span{color:var(--muted);font-size:13px}.tour-nav{justify-items:center;gap:12px;display:grid}.tour-nav .row{justify-content:center}.dots{gap:6px;display:flex}.dots i{background:var(--line-strong);border-radius:50%;width:7px;height:7px;transition:transform .2s,background .2s}.dots i.on{background:var(--accent);transform:scale(1.3)}@keyframes fadeup{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes popin{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}@keyframes growx{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes floaty{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.tick-anim{transform-box:fill-box;transform-origin:50%;animation:.35s cubic-bezier(.2,.9,.3,1.3) both popin}.bar-anim{animation:.6s ease-out both growx}.float-anim{animation:3s ease-in-out infinite floaty}@media (prefers-reduced-motion:reduce){.tour-body,.tick-anim,.bar-anim,.float-anim{animation:none}}.plans{grid-template-columns:1fr 1fr;gap:10px;display:grid}.plan{border:1.5px solid var(--line-strong);background:var(--surface);text-align:left;border-radius:12px;justify-items:start;gap:4px;padding:14px;display:grid}.plan:hover:not(:disabled){border-color:var(--accent)}.plan.best{border-color:var(--accent);background:var(--accent-soft)}.plan .price{font-family:var(--display);font-variant-numeric:tabular-nums;font-size:30px;font-weight:700;line-height:1}.plan .price small{color:var(--muted);margin-left:2px;font-size:13px;font-weight:500}@media (width<=420px){.plans{grid-template-columns:1fr}}.chip{border:1px solid var(--line-strong);color:var(--muted);background:var(--surface);border-radius:999px;padding:4px 10px;font-size:12px}.chip.on{background:var(--accent-soft);border-color:var(--accent);color:var(--fg)}.chip:hover:not(:disabled){border-color:var(--accent)}.cellwrap{justify-items:center;gap:0;display:inline-grid}.tick.assigned:not(.on){background:color-mix(in srgb, var(--pc) 28%, var(--surface));border-color:color-mix(in srgb, var(--pc) 55%, var(--surface));border-style:solid}.tick.assigned:not(.on):disabled{opacity:.7;border-style:solid}.tick.assigned:not(.on):after{content:"";background:var(--pc);border:1.5px solid var(--surface);border-radius:50%;width:7px;height:7px;position:absolute;top:-3px;right:-3px}.tick{position:relative}.more{color:var(--muted);border-radius:999px;margin-top:-3px;margin-bottom:3px;padding:1px 6px;font-size:10px;line-height:1}.more.has{background:var(--accent-soft);color:var(--accent);font-weight:600}.more:hover{background:var(--line)}.assignrow{border-bottom:1px solid var(--line);gap:6px;padding:8px 0;display:grid}.assignrow:last-child{border-bottom:0}.daynote textarea{width:100%;font:inherit;color:var(--fg);background:var(--bg);border:1px solid var(--line);resize:vertical;border-radius:8px;min-height:64px;padding:8px 10px}.daynote textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@keyframes rowin{0%{opacity:0;transform:translate(-6px)}to{opacity:1;transform:none}}.row-anim{animation:.4s ease-out both rowin}@media (prefers-reduced-motion:reduce){.row-anim{animation:none}}table.grid tr.cat th{background:var(--accent-soft);color:var(--accent);letter-spacing:.06em;border-top:1px solid var(--line);padding:7px 12px;font-size:12.5px}.catband{background:var(--accent-soft);border-radius:8px;margin-bottom:4px;padding:4px 10px 4px 4px}.catband .catinput,.catband .catname{color:var(--accent)}.catband .catinput:hover,.catband .catinput:focus{background:var(--surface)}.catname.band{background:var(--accent-soft);color:var(--accent);letter-spacing:.06em;text-transform:uppercase;border-radius:999px;padding:3px 10px;font-size:12.5px;display:inline-block}.sortrow{grid-template-columns:auto 1fr;align-items:start;gap:4px;display:grid}.sortrow.dragging{background:var(--surface);border-radius:10px;box-shadow:0 6px 20px #00000026}.handle{color:var(--line-strong);cursor:grab;touch-action:none;border-radius:6px;align-self:center;padding:10px 4px}.handle:hover{color:var(--muted);background:var(--bg)}.handle:active{cursor:grabbing}.sortbody{min-width:0}.summaryopt{grid-column:1/-1;padding-left:38px}.more{border:1px solid var(--line);min-width:34px;min-height:20px;margin-top:-2px;margin-bottom:4px;padding:2px 8px;font-size:11.5px}.more.spacer{visibility:hidden;border:0}.tick{touch-action:manipulation;-webkit-user-select:none;user-select:none}.goal-asg{margin-left:4px}.item{grid-template-columns:1fr auto}.summaryopt,.taskopts{padding-left:0}.daypick.big button{width:40px;height:40px;font-size:13px}.catband{padding-left:10px}@media (width<=520px){.item{grid-template-columns:1fr}.item>:last-child{grid-column:1;justify-self:end}}@keyframes paper{0%,to{transform:rotate(0)}50%{transform:rotate(-1.5deg)}}.paper{transform-box:fill-box;transform-origin:bottom;animation:2.6s ease-in-out infinite paper}@keyframes sway{0%,to{transform:rotate(0)}50%{transform:rotate(-2deg)}}.sway{transform-box:fill-box;transform-origin:bottom;animation:1.8s ease-in-out infinite sway}@keyframes toddler{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.toddler{transform-box:fill-box;animation:.9s ease-in-out infinite toddler}@keyframes steam{0%{opacity:.8;transform:translateY(0)}to{opacity:0;transform:translateY(-8px)}}.steam{transform-box:fill-box;animation:1.6s ease-out infinite steam}@keyframes laundry{0%{transform:scaleY(.55)}60%{transform:scaleY(1.05)}to{transform:scaleY(1)}}.laundry{transform-box:fill-box;transform-origin:bottom;animation:2.2s ease-out both laundry}@keyframes bubble{0%,30%{opacity:0;transform:scale(.6)}45%,to{opacity:1;transform:scale(1)}}.bubble{transform-box:fill-box;transform-origin:0 100%;animation:3s ease-out both bubble}@keyframes bubble2{0%,55%{opacity:0;transform:scale(.6)}70%,to{opacity:1;transform:scale(1)}}.bubble2{transform-box:fill-box;transform-origin:100% 100%;animation:4.5s ease-out both bubble2}@keyframes morph{0%,27%{opacity:1}33%,to{opacity:0}}.morph{opacity:0;animation:7.2s ease-in-out infinite both morph}@keyframes fingertap{0%{opacity:0;transform:translate(330px,190px)scale(.75)}12%{opacity:1;transform:translate(208px,124px)scale(.75)}18%{transform:translate(208px,118px)scale(.7)}22%{transform:translate(208px,124px)scale(.75)}45%{transform:translate(208px,124px)scale(.75)}50%{transform:translate(208px,118px)scale(.7)}72%{transform:translate(208px,118px)scale(.7)}80%{opacity:1;transform:translate(208px,124px)scale(.75)}to{opacity:0;transform:translate(330px,190px)scale(.75)}}.fingertap{transform-box:view-box;animation:6s ease-in-out infinite fingertap}@keyframes tapfill{0%,17%{opacity:0;transform:scale(.6)}20%,to{opacity:1;transform:scale(1)}}.tapfill{transform-box:fill-box;transform-origin:50%;animation:6s cubic-bezier(.2,.9,.3,1.3) infinite tapfill}@keyframes holdring{0%,50%{opacity:0;transform:scale(.7)}52%{opacity:1}70%{opacity:1;transform:scale(1.15)}76%,to{opacity:0;transform:scale(1.3)}}.holdring{transform-box:fill-box;transform-origin:50%;animation:6s linear infinite holdring}@keyframes holdbubble{0%,70%{opacity:0;transform:translateY(6px)}76%,95%{opacity:1;transform:none}to{opacity:0}}.holdbubble{transform-box:fill-box;animation:6s ease-out infinite holdbubble}@keyframes pillpop{0%,55%{opacity:0;transform:scale(.6)}65%,to{opacity:1;transform:scale(1)}}.pillpop{transform-box:fill-box;transform-origin:0;animation:2.4s cubic-bezier(.2,.9,.3,1.3) both pillpop}@keyframes quickpop{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.pillpop.quick{animation:.45s cubic-bezier(.2,.9,.3,1.3) both quickpop}@media (prefers-reduced-motion:reduce){.paper,.sway,.toddler,.steam,.laundry,.bubble,.bubble2,.morph,.fingertap,.tapfill,.holdring,.holdbubble,.pillpop{opacity:1;animation:none;transform:none}.fingertap,.morph:not(:first-of-type){opacity:0}}.tour-choices{position:relative}.choice-finger{pointer-events:none;width:52px;height:52px;position:absolute;top:0;right:-6px;overflow:visible}.choice-finger g{transform-origin:0 0;transform:translate(28px,8px)scale(.9)}@keyframes hop{0%,28%{transform:translateY(14px)}33%,61%{transform:translateY(calc(33% + 14px))}66%,94%{transform:translateY(calc(66% + 14px))}to{transform:translateY(14px)}}.choice-finger{height:100%;animation:4.5s ease-in-out infinite hop}@media (prefers-reduced-motion:reduce){.choice-finger{display:none}}.coach-layer{z-index:30;position:fixed;inset:0}.coach-dim{background:#00000059;position:absolute;inset:0}.coach-ring{pointer-events:none;outline:3px solid var(--accent);background:0 0;border-radius:12px;transition:top .25s,left .25s,width .25s,height .25s;position:absolute;box-shadow:0 0 0 9999px #00000059}.coach-box{background:var(--accent);width:min(288px,100vw - 24px);color:var(--accent-ink);border-radius:12px;gap:6px;padding:14px 14px 12px;animation:.25s ease-out fadeup;display:grid;position:absolute;box-shadow:0 10px 30px #00000059}.coach-box strong{font-family:var(--display);padding-right:28px;font-size:16px}.coach-box p{color:var(--accent-ink);opacity:.9;margin:0;font-size:13.5px}.coach-box .muted{color:var(--accent-ink);opacity:.75}.coach-box .x{color:var(--accent-ink);opacity:.85}.coach-box .x:hover{color:var(--accent-ink);background:#ffffff26}.coach-box .closex{color:var(--accent-ink)}.coach-box .closex:hover{color:var(--accent-ink);background:#ffffff26}.coach-box .btn.primary{background:var(--accent-ink);color:var(--accent);border-color:var(--accent-ink)}.coach-box .closex{width:30px;height:30px;font-size:20px;position:absolute;top:6px;right:6px}.coach-box .tabtag{letter-spacing:.08em;text-transform:uppercase;background:#ffffff38;border-radius:999px;width:max-content;margin-bottom:2px;padding:2px 8px;font-size:11px;display:inline-block}.coach-dim{background:0 0}.feedback{border-color:var(--accent);background:color-mix(in srgb, var(--accent-soft) 45%, var(--surface))}.feedback .btn{text-decoration:none;display:inline-block}.stack textarea{width:100%;font:inherit;color:var(--fg);background:var(--bg);border:1px solid var(--line-strong);resize:vertical;border-radius:8px;padding:10px}.stack textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.coach-ring{overflow:visible}.coach-gesture{pointer-events:none;width:0;height:0;position:absolute;top:50%;left:50%}.coach-ring.tallring .coach-gesture{top:auto;bottom:-10px}.coach-hand{transform-origin:14px 8px;width:56px;height:56px;position:absolute;top:-6px;left:-14px}.coach-gesture .pulse{border:2.5px solid var(--accent);opacity:0;border-radius:50%;width:28px;height:28px;position:absolute;top:-14px;left:-14px}@keyframes ctap{0%,to{transform:translateY(10px)scale(1)}35%{transform:translateY(10px)scale(1)}45%{transform:translateY(4px)scale(.94)}55%{transform:translateY(10px)scale(1)}}@keyframes ctap-pulse{0%,44%{opacity:0;transform:scale(.5)}48%{opacity:.9;transform:scale(.6)}75%,to{opacity:0;transform:scale(1.8)}}.coach-gesture.tap .coach-hand{animation:2.2s ease-in-out infinite ctap}.coach-gesture.tap .pulse{animation:2.2s ease-out infinite ctap-pulse}@keyframes chold{0%,20%{transform:translateY(10px)scale(1)}30%,80%{transform:translateY(4px)scale(.94)}90%,to{transform:translateY(10px)scale(1)}}@keyframes chold-ring{0%,28%{opacity:0;transform:scale(.5)}32%{opacity:1;transform:scale(.6)}78%{opacity:1;transform:scale(1.6)}84%,to{opacity:0;transform:scale(1.8)}}.coach-gesture.hold .coach-hand{animation:3s ease-in-out infinite chold}.coach-gesture.hold .pulse{border-width:3px;animation:3s linear infinite chold-ring}@media (prefers-reduced-motion:reduce){.coach-gesture .coach-hand,.coach-gesture .pulse{animation:none}.coach-gesture .pulse{opacity:.8}}.exportbox .card{background:color-mix(in srgb, var(--p2) 10%, var(--surface));border-color:color-mix(in srgb, var(--p2) 45%, var(--surface))}.exportbox .card h2:before{content:"⬇ ";font-weight:400}.refer{border-color:color-mix(in srgb, var(--p3) 60%, var(--surface));background:color-mix(in srgb, var(--p3) 10%, var(--surface))}.taskitem{border:1px solid var(--line);background:var(--surface);border-radius:10px;gap:8px;margin-bottom:8px;padding:10px 12px}.taskitem:last-child{border-bottom:1px solid var(--line)}.taskitem .item{padding:0}.taskitem .item input[type=text]{font-weight:600}.taskopts{gap:8px}.taskopts>*{margin:0}.catblock .list{display:block}.catband{margin-bottom:8px}.sortrow+.sortrow{margin-top:0}@media (width<=520px){.taskopts{grid-template-columns:1fr 1fr;gap:6px;display:grid}.taskopts .chip{grid-column:1/-1;justify-self:start}.taskopts .daypick{grid-column:1/-1}}.metime{border:1px dashed var(--line-strong);border-radius:10px;gap:6px;padding:10px 12px;display:grid}.metime-label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:11.5px;font-weight:600}.metime-pill{border:1px solid var(--line-strong);background:var(--surface);border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;display:inline-flex}.metime-pill i{background:var(--pc);border-radius:50%;width:9px;height:9px}.metime-pill.has{background:color-mix(in srgb, var(--pc) 16%, var(--surface));border-color:var(--pc)}.metime-pill:disabled{opacity:.55}.metime-card{border-color:color-mix(in srgb, var(--p4) 50%, var(--surface));background:color-mix(in srgb, var(--p4) 7%, var(--surface))}.pstat .compare{border-top:1px dashed var(--line);gap:12px;margin-top:4px;padding-top:6px;display:flex}.sortrow{grid-template-columns:22px 1fr;gap:2px}.handle{align-self:start;margin-top:10px;padding:8px 2px}.catblock .list .sortrow{grid-template-columns:1fr}.catblock .list .sortrow .handle{z-index:1;margin:0;position:absolute;top:8px;left:4px}.catblock .list .sortrow{position:relative}.taskitem{padding-left:26px}.taskitem .item{grid-template-columns:1fr auto;align-items:center}.taskitem .item input[type=text]{background:0 0;border-color:#0000;padding-left:4px}.taskitem .item input[type=text]:hover,.taskitem .item input[type=text]:focus{border-color:var(--line-strong);background:var(--surface)}.taskopts select{width:100%;min-width:0}@media (width<=520px){.taskopts{grid-template-columns:1fr 1fr}.taskopts .chip{grid-column:1/-1}.taskopts .daypick{grid-column:1/-1;justify-content:space-between;display:flex}.taskopts .mins{justify-content:flex-start}}.taskitem .item{align-items:center;gap:6px;display:flex}.taskitem .item input[type=text]{flex:1;min-width:0}.taskitem .item>span:last-child{flex:none}@media (width<=520px){.taskitem .item{grid-template-columns:1fr auto}.taskitem .item>:last-child{grid-column:auto;justify-self:auto}}.taskdesc{grid-column:1/-1}.daypick{flex-wrap:nowrap}@media (width<=520px){.taskopts .daypick{justify-content:space-between}.taskopts .chip{grid-column:1/-1;justify-self:start}}.choice.on{border-color:var(--accent);background:var(--accent-soft)}.taskopts .dates input[type=date]{padding:4px 6px;font-size:13px}.ended{background:var(--warn-soft);color:var(--warn);border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px;padding:6px 10px;font-size:13px;display:flex}.ended .x{color:var(--warn);text-decoration:underline}.taskopts{gap:8px;padding-left:0;display:grid}.taskopts .chip{white-space:normal;text-align:left;justify-self:start;max-width:100%}.taskopts .chip .muted{margin-right:2px}@media (width<=520px){.taskopts{grid-template-columns:1fr}}.taskitem{border:1.5px solid var(--line-strong);background:color-mix(in srgb, var(--accent) 4%, var(--surface));box-shadow:0 1px 2px #0000000f}.taskitem .item input[type=text]{font-size:16px}.catblock .list{padding:2px 0}.catblock{border-bottom:1px solid var(--line);margin-bottom:10px;padding:0 0 6px}.catblock:last-of-type{border-bottom:0}.addbox{color:#111;--ink:#111;background:#fff;border:1.5px solid #111;border-radius:12px;gap:10px;margin-top:6px;padding:14px;display:grid}.addbox h3{color:#111}.addbox .muted{color:#555}.addbox input,.addbox select,.addbox textarea{color:#111;background:#fff;border-color:#111}.addbox .btn{color:#111;background:#fff;border:1.5px solid #111}.addbox .btn.primary{color:#fff;background:#111;border-color:#111}.addbox .btn.primary.me{background:#111;border-color:#111}.addbox .chip{color:#111;background:#fff;border-color:#111}.addbox .chip.on{color:#fff;background:#111}.addbox .daypick button{color:#111;background:#fff;border-color:#111}.addbox .daypick button.on{color:#fff;background:#111;border-color:#111}.addbox .stepper button,.addbox .choice{color:#111;background:#fff;border-color:#111}.addbox .choice.on{color:#fff;background:#111;border-color:#111}.addbox .x{color:#111;text-decoration:underline}.addbox input[type=checkbox]{accent-color:#111}.addbox input.me{background:#fff;border-color:#111}.btn.ink{color:#111;background:#fff;border:1.5px solid #111;font-weight:700}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .addbox{color:#111;background:#fff}}.addbox select,.addbox input[type=text],.addbox input:not([type]){min-width:0}.btn.danger{background:var(--bad);color:#fff;border-color:var(--bad)}.btn.danger:hover{background:var(--bad);filter:brightness(1.08)}.rewards{flex-wrap:wrap;grid-column:1/3;gap:6px;display:flex}.reward{background:var(--line);color:var(--muted);border-radius:999px;padding:3px 9px;font-size:12px}.reward.earned{color:#6b4e00;background:#f6e7b4;font-weight:600}.reward.bonus{border:1px dashed var(--line-strong);background:0 0}.reward.bonus.earned{color:#6b4e00;background:#f6e7b4;border-color:#0000}.rewardcard{background:color-mix(in srgb, #f6e7b4 35%, var(--surface));border-color:#e4c661}.card.addbox{padding:16px}label.row input[type=checkbox]{flex:none;width:auto;margin:0 2px 0 0}label.row{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.weekstick{top:var(--header-h,92px);z-index:4;background:var(--bg);border-bottom:1px solid var(--line);gap:10px;margin:-6px 0 0;padding:6px 0 8px;display:grid;position:sticky}.addhelp{margin-top:18px}.welcome{gap:8px;display:grid}.welcome h1{margin-bottom:4px}.rangestick{top:var(--header-h,92px);z-index:4;background:var(--bg);border-bottom:1px solid var(--line);gap:8px;margin:-6px 0 0;padding:6px 0 8px;display:grid;position:sticky}.daynote textarea{border-color:var(--line-strong);min-height:72px;overflow:hidden}.stepper{align-items:center;gap:6px;display:inline-flex}.stepper button{border:1px solid var(--line-strong);background:var(--surface);border-radius:50%;place-items:center;width:34px;height:34px;font-size:20px;line-height:1;display:grid}.stepper input[type=number]{text-align:center;width:64px}.metime-why{color:var(--muted);max-width:62ch;margin:2px 0 0;font-size:12.5px}.rangebar.sets button[aria-pressed=true]{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.sepopt{margin:4px 0 6px}.minfield{gap:0;display:inline-grid}.stepper button:disabled{opacity:.4}.loadsets{gap:14px;display:grid}.loadsets .card h2 small{color:var(--muted);margin-left:6px;font-size:.8em;font-weight:500}.periodlabel{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);align-self:center;margin-right:4px;font-size:11.5px;font-weight:600}.loadset{padding-top:0;overflow:hidden}.setbanner{background:var(--accent);color:var(--accent-ink);flex-direction:column;gap:2px;margin:0 -16px;padding:10px 16px;display:flex}.setbanner .small{opacity:.9}.metime-card{border:1px solid var(--line-strong);background:var(--surface)}.setbanner.metime{background:var(--warn);color:#fff}.metime{background:var(--warn-soft);border:1px solid var(--warn);border-radius:12px;padding:10px 12px}.metime-label{color:var(--warn);font-weight:700}.catlist>.sortrow{grid-template-columns:1fr;margin:0;position:relative}.catlist>.sortrow>.handle{z-index:2;margin:0;position:absolute}.catlist>.catrow-flat{border:1px solid var(--line-strong);background:var(--surface);border-bottom:0;border-radius:12px 12px 0 0;margin-top:12px;overflow:hidden}.catlist>.catrow-flat>.handle{color:var(--accent-ink);opacity:.85;padding:8px 4px;top:4px;left:6px}.catlist>.catrow-flat>.handle:hover{opacity:1;background:0 0}.catlist>.taskrow-flat{border-left:1px solid var(--line-strong);border-right:1px solid var(--line-strong);background:var(--surface);padding:0 10px}.catlist>.taskrow-flat.last{border-bottom:1px solid var(--line-strong);border-radius:0 0 12px 12px;padding-bottom:8px}.catlist>.taskrow-flat>.handle{top:8px;left:14px}.catlist>.taskrow-flat .taskitem{margin-left:0}.catlist .catblock{border-bottom:0;margin:0;padding:0 10px 4px}.catlist .catband{background:var(--accent);color:var(--accent-ink);border-radius:0;margin:0 -10px 8px;padding:6px 10px 6px 34px}.catlist .catband .catinput,.catlist .catband .catname{color:var(--accent-ink)}.catlist .catband .catinput:hover,.catlist .catband .catinput:focus{background:#ffffff2e;border-color:#0000}.catlist .catband .muted{color:var(--accent-ink);opacity:.85}.catlist .catband .x{color:var(--accent-ink);text-decoration:underline}.catlist .sortrow.dragging{border-radius:10px;box-shadow:0 6px 20px #0003}table.grid tr.cat.me th{background:var(--warn);color:#fff;text-transform:none;letter-spacing:0;padding:8px 12px;font-size:14px}table.grid tr.cat.me th .mewhy{font-family:var(--body);opacity:.95;white-space:normal;margin-top:3px;font-size:12.5px;font-weight:400;line-height:1.35;display:block}table.grid tr.me td{background:var(--warn-soft)}table.grid tr.me td.task{color:var(--warn);font-weight:600}.catlist>.catrow-flat.me,.catlist>.taskrow-flat.me{border-color:var(--warn)}.catlist>.taskrow-flat.me{background:var(--warn-soft)}.catlist>.catrow-flat.me .catband{background:var(--warn)}.catlist>.catrow-flat.me .catname{color:#fff;margin:0}.mewhy-edit{color:var(--warn);margin:0 0 6px}select option.me{color:var(--warn)}input.me{border-color:var(--warn);background:var(--warn-soft)}.btn.primary.me{background:var(--warn);border-color:var(--warn)}.noteitem{border-top:1px solid var(--line);gap:6px;padding-top:8px;display:grid}.noteitem:first-of-type{border-top:0;padding-top:0}.noteitem textarea:disabled{background:var(--bg);color:var(--fg);opacity:.9}.chip.sm{padding:3px 9px;font-size:12.5px}.showbar{flex-wrap:nowrap}.showbar button{padding:5px 14px;font-size:13px}.howto{margin:-6px 0 0}.undo-layer{z-index:40;-webkit-backdrop-filter:blur(4px);background:#00000059;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.toast.with-action{background:var(--surface);width:100%;max-width:420px;color:var(--fg);border:1px solid var(--line-strong);border-radius:16px;gap:10px;padding:20px 22px;font-size:15px;display:grid;position:static;transform:none;box-shadow:0 20px 60px #00000059}.toast.with-action strong{font-size:18px;font-family:var(--display)}.toast.with-action .x{color:var(--muted)}.toast-action{background:var(--accent);color:var(--accent-ink);border:0;border-radius:999px;padding:10px 22px;font-size:15px;font-weight:700}.pill.role.tappable{cursor:pointer;border:0}.pill.role:disabled{opacity:1}.choice.sm{flex:1;min-width:140px;padding:8px 10px}.hswitch{font:inherit;color:var(--muted);text-overflow:ellipsis;background:0 0;border:0;max-width:60vw;margin:0;padding:0;font-size:13px}.personrow{border-bottom:1px solid var(--line);padding:4px 0}.personrow input[type=text]{max-width:150px;padding:5px 8px}.personrow .pill{padding:3px 9px}.catlist>.taskrow-flat.me .daypick button.on{background:var(--warn);border-color:var(--warn);color:#fff}.catlist>.taskrow-flat.me .chip.on,.catlist>.taskrow-flat.me .chip{border-color:var(--warn);color:var(--warn)}.catlist>.taskrow-flat.me .chip.on{background:var(--warn-soft)}.catlist>.taskrow-flat.me .chip .muted{color:var(--warn);opacity:.8}.catlist>.taskrow-flat.me .item input[type=text]{border-color:var(--warn)}.catlist>.taskrow-flat.me .handle,.catlist>.taskrow-flat.me .x{color:var(--warn)}.catlist>.catrow-flat.me .sepopt{display:none}.minfield .stepper .unit{margin-left:2px}.metlist{gap:4px;padding:4px 0 2px;display:grid}.metrow{border-top:1px solid var(--line);grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:4px 0;font-size:13.5px;display:grid}.metrow .who{align-items:center;gap:6px;font-weight:600;display:flex}.metrow .who i{background:var(--pc);border-radius:50%;width:10px;height:10px}.metrow .what{color:var(--muted)}.addtime{gap:6px;display:grid}@media (pointer:coarse){input,select,textarea,.catinput,.daynote textarea,.stack textarea,.personrow input[type=text]{font-size:16px}}.choice.big{text-align:left;width:100%;padding:14px 16px}.alts{border-top:1px solid var(--line);justify-items:center;gap:6px;margin-top:4px;padding-top:10px;display:grid}.personline{border-top:1px solid var(--line);gap:2px;padding:6px 0;display:grid}.personline:first-child{border-top:0}.personline strong{align-items:center;gap:6px;display:flex}.personline strong i{background:var(--pc);border-radius:50%;width:10px;height:10px}.personline .muted{font-size:13.5px}.catname.band.me{background:var(--warn-soft);color:var(--warn)}.mebars{border-top:2px solid var(--warn-soft);margin-top:6px;padding-top:10px}.sheet .addbox{color:inherit;background:0 0}.handover{border-top:1px solid var(--line);gap:8px;margin-top:4px;padding-top:10px;display:grid}.groupitem{gap:6px;display:grid}.groupitem .choice{text-align:left;width:100%}.coach-box{color:#111;background:#fff;border:1.5px solid #111;box-shadow:0 12px 36px #0006}.coach-box p,.coach-box .muted,.coach-box .x,.coach-box .closex{color:#111;opacity:1}.coach-box .muted{color:#555}.coach-box .x:hover,.coach-box .closex:hover{color:#111;background:#eee}.coach-box .btn.primary{color:#fff;background:#111;border-color:#111}.coach-box .tabtag{color:#fff;background:#111}.coach-ring{outline:3px solid #fff;box-shadow:0 0 0 9999px #00000080}.coach-ring.tabring{box-shadow:none;z-index:1;border-radius:999px;outline:3px solid #fff}.coach-box{width:min(420px,100vw - 24px);margin:0 auto;position:fixed;left:12px;right:12px}.coach-box .btn:not(.primary){color:#111;background:#fff;border:1.5px solid #111}.giftblock{border-top:1px solid var(--line);gap:8px;margin-top:2px;padding-top:10px;display:grid}
