.home-caps{margin-top:.875rem}.home-cap-row{overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:none;gap:.5rem;margin:0 -1.25rem;padding:.125rem 1.25rem .25rem;scroll-padding-inline:1.25rem;display:flex;overflow-x:auto}.home-cap-row::-webkit-scrollbar{display:none}@media (min-width:640px){.home-cap-row{margin:0 -1.75rem;padding-inline:1.75rem;scroll-padding-inline:1.75rem}}.home-cap{--cap-yes:calc(.25rem + 1.375rem);isolation:isolate;scroll-snap-align:start;background:#fff;border:1px solid #063b5517;border-radius:999px;flex:none;align-items:center;gap:.5rem;min-height:3.25rem;padding:.25rem .25rem .25rem .375rem;transition:background-color .22s,border-color .32s;display:flex;position:relative;box-shadow:0 1px 2px #063b550d,0 6px 16px -10px #063b552e}.home-cap:before{content:"";z-index:-1;border-radius:inherit;background:var(--fin-tint);clip-path:circle(0 at calc(100% - var(--cap-yes) - 1px) 50%);transition:clip-path .62s var(--motion-smooth);position:absolute;inset:-1px}.home-cap[data-state=came]{border-color:#0000}.home-cap[data-state=came]:before{clip-path:circle(18rem at calc(100% - var(--cap-yes) - 1px) 50%)}.home-cap-row:not([data-settled]) .home-cap,.home-cap-row:not([data-settled]) .home-cap:before,.home-cap-row:not([data-settled]) .home-cap *{transition:none!important}.home-cap[data-state=absent]{border-color:#a30d2659}.home-cap[data-state=paid]{background:hsl(var(--app-navy) / .03)}.home-cap-avatar{background:var(--fin-tint);width:2.25rem;height:2.25rem;color:var(--fin-ink);border-radius:999px;flex:none;justify-content:center;align-items:center;transition:background-color .36s,filter .36s,opacity .36s;display:flex}.home-cap[data-state=came] .home-cap-avatar{background:#fff}.home-cap[data-state=absent] .home-cap-avatar{filter:grayscale();opacity:.55}.home-cap-avatar svg{width:1.0625rem;height:1.0625rem}.home-cap-text{flex-direction:column;min-width:0;padding-right:.125rem;line-height:1.1;display:flex}.home-cap-name{max-width:9rem;transition:background-size .42s var(--motion-smooth) 80ms, color .32s ease;text-overflow:ellipsis;white-space:nowrap;background:linear-gradient(currentColor,currentColor) 0 58%/0% 1.5px no-repeat;align-self:flex-start;font-size:.875rem;font-weight:600;overflow:hidden}.home-cap[data-state=absent] .home-cap-name{color:hsl(var(--app-navy) / .55);background-size:100% 1.5px}.home-cap-note{color:var(--fin-ink);margin-top:.125rem;font-size:.6875rem;font-weight:600}.home-cap[data-state=absent] .home-cap-note{color:#a30d26}.home-cap[data-state=paid] .home-cap-note{color:hsl(var(--app-navy) / .6)}.home-cap-actions{flex:none;display:flex}.home-cap-actions button{width:2.75rem;height:2.75rem;transition:width .38s var(--motion-smooth), margin .38s var(--motion-smooth), opacity .24s ease, background-color .18s ease, color .18s ease, transform .38s var(--motion-spring);border-radius:999px;flex:none;justify-content:center;align-items:center;margin-left:.125rem;display:flex;overflow:hidden}.home-cap-actions button:first-child{margin-left:0}.home-cap-actions button[data-gone]{opacity:0;pointer-events:none;width:0;margin-left:0;transform:scale(.4)}.home-cap-actions button:active:not(:disabled){transform:scale(.88)}.home-cap-actions button:disabled:not([data-gone]){cursor:default;opacity:.6}.home-cap-actions svg{width:1.0625rem;height:1.0625rem}.home-cap-no{background:hsl(var(--app-navy) / .06);color:hsl(var(--app-navy) / .7)}.home-cap-yes{background:var(--fin-ink);color:#fff}.home-cap-yes[aria-pressed=true]{color:var(--fin-ink);background:0 0}.home-cap-undo{color:#a30d26;background:#a30d2614}.home-cap[data-answer=came] .home-cap-yes{animation:home-cap-pop .48s var(--motion-spring)}.home-cap[data-answer=came] .home-cap-yes path{stroke-dasharray:23;animation:home-cap-draw .42s var(--motion-smooth) .11s both}.home-cap[data-answer=came] .home-cap-avatar{animation:home-cap-hop .56s var(--motion-spring) 90ms, home-cap-glow .7s ease-out 90ms}.home-cap[data-answer] .home-cap-note{animation:home-cap-note-in .36s var(--motion-smooth) .16s both}.home-cap-sparks{top:50%;right:var(--cap-yes);pointer-events:none;position:absolute}.home-cap-sparks i{background:var(--fin-ink);opacity:0;width:5px;height:5px;animation:home-cap-spark .62s var(--motion-smooth) 60ms;border-radius:999px;margin:-2.5px;position:absolute}.home-cap-sparks i:nth-child(2n){width:3.5px;height:3.5px;margin:-1.75px;animation-duration:.56s}@keyframes home-cap-pop{0%{transform:scale(.8)}55%{transform:scale(1.16)}to{transform:scale(1)}}@keyframes home-cap-draw{0%{stroke-dashoffset:23px}to{stroke-dashoffset:0}}@keyframes home-cap-hop{0%{transform:none}35%{transform:translateY(-5px)rotate(-9deg)}70%{transform:translateY(1px)rotate(4deg)}to{transform:none}}@keyframes home-cap-glow{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--fin-ink) 35%, transparent)}to{box-shadow:0 0 0 6px color-mix(in srgb, var(--fin-ink) 0%, transparent)}}@keyframes home-cap-note-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@keyframes home-cap-spark{0%{opacity:1;transform:rotate(var(--spark)) translateX(10px) scale(1)}to{opacity:0;transform:rotate(var(--spark)) translateX(24px) scale(.3)}}.home-cap[data-answer=absent]{animation:home-cap-no .52s var(--motion-smooth)}.home-cap[data-answer=absent] .home-cap-undo{animation:home-cap-undo-in .56s var(--motion-spring) both}@keyframes home-cap-no{0%,to{transform:none}18%{transform:translate(-6px)}40%{transform:translate(5px)}62%{transform:translate(-3px)}82%{transform:translate(1.5px)}}@keyframes home-cap-undo-in{0%{opacity:0;transform:rotate(-200deg)scale(.4)}to{opacity:1;transform:none}}.home-cap-alert{color:#a30d26;background:#c6102e0f;border-radius:.75rem;margin-top:.75rem;padding:.5rem .75rem;font-size:.875rem}.home-cap-alert[data-tone=quiet]{background:hsl(var(--app-navy) / .04);color:hsl(var(--app-navy) / .7)}.home-fin{margin-bottom:.625rem}.home-fin-row{gap:.375rem}.home-fin-avatar{background:var(--fin-tint);width:2.25rem;height:2.25rem;color:var(--fin-ink);border-radius:999px;flex:none;justify-content:center;align-items:center;margin:0 .25rem;display:flex}.home-fin-avatar svg{width:1rem;height:1rem}.home-fin-amount{font-variant-numeric:tabular-nums;white-space:nowrap;flex:none;font-size:.875rem;font-weight:600}.home-fin-locked{align-items:center;gap:.75rem;min-height:4rem;padding:.75rem 1rem;display:flex}.home-fin-lock{color:#5b4a8a;background:#e4dff0;border-radius:999px;flex:none;justify-content:center;align-items:center;width:2.25rem;height:2.25rem;display:flex}.home-fin-lock svg{width:1rem;height:1rem}.home-fin-locked>span:nth-child(2){flex-direction:column;flex:1;display:flex}.home-fin-locked-title{font-size:.875rem;font-weight:600}.home-fin-locked-text{color:hsl(var(--app-navy) / .65);font-size:.75rem}@media (forced-colors:active){.home-cap[data-state=absent] .home-cap-name{text-decoration:line-through}}@media (prefers-reduced-motion:reduce){.home-cap,.home-cap:before,.home-cap-avatar,.home-cap-name,.home-cap-actions button{transition:none}.home-cap[data-answer],.home-cap[data-answer] *,.home-cap-sparks{animation:none!important}.home-cap-sparks{display:none}}
.home-shop{margin-top:1.375rem}.home-shop-wrap{transition:grid-template-rows .42s var(--motion-smooth), opacity .3s ease;grid-template-rows:1fr;display:grid}.home-shop-wrap[data-leaving]{opacity:0;grid-template-rows:0fr}.home-shop-wrap+.home-shop-wrap .home-shop-row{border-top:1px solid hsl(var(--app-navy) / .07)}.home-shop-row{align-items:center;gap:.25rem;min-height:0;padding:.375rem .75rem .375rem .25rem;display:flex;overflow:hidden}.home-shop-check{border-radius:9999px;flex:none;justify-content:center;align-items:center;width:2.75rem;height:2.75rem;display:flex}.home-shop-circle{box-sizing:border-box;border:2px solid hsl(var(--app-navy) / .42);width:1.375rem;height:1.375rem;transition:background-color .2s ease, border-color .2s ease, transform .34s var(--motion-spring);border-radius:9999px;justify-content:center;align-items:center;display:flex;position:relative}.home-shop-check:active:not(:disabled) .home-shop-circle{transform:scale(.84)}.home-shop-check:disabled{cursor:default}.home-shop-circle>svg{color:#fff;opacity:0;width:.75rem;height:.75rem;transition:opacity .16s 80ms}.home-shop-row[data-state=pending] .home-shop-circle{border-color:var(--shop-ink);animation:.9s ease-in-out infinite alternate home-shop-wait}@keyframes home-shop-wait{0%{opacity:1}to{opacity:.35}}.home-shop-row[data-state=done] .home-shop-circle,.home-shop-row[data-state=leaving] .home-shop-circle{border-color:var(--shop-ink);background:var(--shop-ink)}.home-shop-row[data-state=done] .home-shop-circle{animation:home-shop-pop .52s var(--motion-spring) both}.home-shop-row[data-state=done] .home-shop-circle>svg,.home-shop-row[data-state=leaving] .home-shop-circle>svg{opacity:1}@keyframes home-shop-pop{0%{transform:scale(.7)}55%{transform:scale(1.18)}to{transform:scale(1.06)}}.home-shop-burst{pointer-events:none;position:absolute;inset:0}.home-shop-burst i{background:var(--shop-ink);opacity:0;border-radius:9px;width:4px;height:4px;margin:-2px 0 0 -2px;position:absolute;top:50%;left:50%}.home-shop-burst i:nth-child(2n){--d:-16px;background:#e0a33a}.home-shop-burst i:first-child{--a:0deg}.home-shop-burst i:nth-child(2){--a:45deg}.home-shop-burst i:nth-child(3){--a:90deg}.home-shop-burst i:nth-child(4){--a:135deg}.home-shop-burst i:nth-child(5){--a:180deg}.home-shop-burst i:nth-child(6){--a:225deg}.home-shop-burst i:nth-child(7){--a:270deg}.home-shop-burst i:nth-child(8){--a:315deg}.home-shop-row[data-state=done] .home-shop-burst i{animation:home-shop-burst .64s var(--motion-smooth) both}@keyframes home-shop-burst{0%{opacity:0;transform:rotate(var(--a)) translateY(-6px) scale(1)}15%{opacity:1}to{opacity:0;transform:rotate(var(--a)) translateY(var(--d,-21px)) scale(.3)}}.home-shop-main{border-radius:.75rem;flex-direction:column;flex:1;justify-content:center;gap:.1875rem;min-width:0;min-height:3rem;padding:.25rem .25rem .25rem .125rem;display:flex}.home-shop-title{overflow-wrap:anywhere;align-self:flex-start;max-width:100%;font-size:.875rem;font-weight:600;line-height:1.25rem;transition:opacity .26s;position:relative}.home-shop-title:after{content:"";transform-origin:0;width:100%;height:2px;transition:transform .34s var(--motion-smooth) .12s;background:currentColor;position:absolute;top:52%;left:0;transform:scaleX(0)}.home-shop-row[data-state=done] .home-shop-title,.home-shop-row[data-state=leaving] .home-shop-title{opacity:.5}.home-shop-row[data-state=done] .home-shop-title:after,.home-shop-row[data-state=leaving] .home-shop-title:after{transform:scaleX(1)}.home-shop-meta{min-width:0;color:hsl(var(--app-navy) / .65);flex-wrap:wrap;align-items:center;gap:.125rem .375rem;font-size:.75rem;line-height:1.25rem;display:flex}.home-shop-group{font-weight:500}.home-shop-due{white-space:nowrap;border-radius:999px;padding:1px 7px;font-size:.6875rem;font-weight:600;line-height:1.125rem}.home-shop-due[data-tone=late]{color:#a30d26;background:#c6102e1a}.home-shop-due[data-tone=soon]{color:#7a4a0e;background:#fdf0d9}.home-shop-due[data-tone=far]{color:#063e56bf;background:#063e560d}.home-shop-tile{background:var(--shop-tint);width:1.875rem;height:1.875rem;color:var(--shop-ink);border-radius:.625rem;flex:none;justify-content:center;align-items:center;display:flex}.home-shop-tile svg{width:1rem;height:1rem}@media (prefers-reduced-motion:reduce){.home-shop-wrap,.home-shop-circle,.home-shop-circle>svg,.home-shop-title,.home-shop-title:after{transition:none}.home-shop-row[data-state=pending] .home-shop-circle,.home-shop-row[data-state=done] .home-shop-circle{animation:none}.home-shop-burst{display:none}}
.home-tasks-head{justify-content:space-between;align-items:center;gap:.75rem;min-height:2.75rem;display:flex}.home-tasks-head h2{letter-spacing:-.035em;margin:0;font-size:1.125rem;font-weight:600}.home-tasks-all{min-width:2.75rem;min-height:2.75rem;color:hsl(var(--app-navy) / .7);font-variant-numeric:tabular-nums;border-radius:.5rem;justify-content:flex-end;align-items:center;gap:.125rem;font-size:.84375rem;font-weight:600;display:inline-flex}.home-tasks-sum{margin:0 .125rem .75rem}.home-tasks-bar{gap:3px;height:8px;display:flex}.home-tasks-bar i{min-width:0;transition:flex-grow .56s var(--motion-smooth);border-radius:4px;flex-basis:0}.home-tasks-bar i[data-empty]{display:none}.home-tasks-legend{color:hsl(var(--app-navy) / .7);font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:.25rem .875rem;margin-top:.5rem;font-size:.75rem;display:flex}.home-tasks-legend span{align-items:center;gap:.3125rem;display:inline-flex}.home-tasks-legend b{border-radius:3px;width:8px;height:8px}.home-tasks-bar [data-tone=late],.home-tasks-legend [data-tone=late]{background:#c6102e}.home-tasks-bar [data-tone=today],.home-tasks-legend [data-tone=today]{background:#063e56}.home-tasks-bar [data-tone=later],.home-tasks-legend [data-tone=later]{background:#063e562e}.home-tasks-badge{border-radius:999px;padding:1px 7px;font-size:.6875rem;font-weight:600;line-height:1.125rem}.home-tasks-badge[data-tone=late]{color:#a30d26;background:#c6102e1a}.home-tasks-badge[data-tone=today]{color:#063e56;background:#063e5614}.home-tasks-badge[data-tone=week]{color:#063e56bf;background:#063e560d}.home-tasks-badge[data-tone=none]{color:#063e5699;background:#063e560a}.home-tasks-row[data-focused]{animation:home-tasks-focus 1.6s var(--motion-smooth) both}@keyframes home-tasks-focus{0%,55%{background-color:hsl(var(--app-sky) / .22)}to{background-color:#0000}}.home-tasks-toast{left:50%;bottom:calc(5.5rem + env(safe-area-inset-bottom,0px) + .75rem);z-index:40;color:#eff1eb;width:min(100vw - 1.75rem,34rem);min-height:3.125rem;animation:home-tasks-toast .46s var(--motion-spring) both;background:#063e56;border-radius:1rem;justify-content:space-between;align-items:center;gap:.5rem;padding:0 .25rem 0 1rem;font-size:.875rem;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 12px 30px #00111c4d}.home-tasks-toast>span{align-items:center;gap:.5rem;display:inline-flex}.home-tasks-toast button{color:#9fd3f0;background:0 0;border:0;border-radius:.75rem;align-items:center;min-height:2.75rem;padding:0 .75rem;font-weight:600;display:inline-flex}.home-tasks-toast button:focus-visible{outline-offset:-2px;outline:2px solid #9fd3f0}@keyframes home-tasks-toast{0%{opacity:0;transform:translate(-50%)translateY(16px)scale(.96)}to{opacity:1;transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.home-tasks-bar i{transition:none}.home-tasks-row[data-focused]{background-color:hsl(var(--app-sky) / .18);animation:none}.home-tasks-toast{animation:none}}
