@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:100 900;src:url(../../../fonts/fraunces-latin-ext-wght-normal.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:100 900;src:url(../../../fonts/fraunces-latin-wght-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito Sans;font-style:normal;font-display:swap;font-weight:200 1000;src:url(../../../fonts/nunito-sans-latin-ext-wght-normal.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito Sans;font-style:normal;font-display:swap;font-weight:200 1000;src:url(../../../fonts/nunito-sans-latin-wght-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--color-bg:#fbf6ee;--color-surface:#fff;--color-surface-2:#f3eadc;--color-text:#2a211b;--color-text-muted:#6b5d52;--color-border:#eadfcf;--color-danger:#a8322a;--color-danger-bg:#f8e0dc;--color-on-primary:#fff;--color-star:#b07a0c;--color-star-empty:var(--color-border);--brand:#a8492a;--brand-hover:#8e3c22;--brand-soft:#f6e2d7;--food:#a8432a;--food-hover:#8e3720;--food-soft:#f7e1d8;--chores:#3d6b4a;--chores-hover:#31583c;--chores-soft:#e3eee4;--money:#85610f;--money-hover:#6e500c;--money-soft:#f5ebd3;--color-primary:var(--brand);--color-primary-hover:var(--brand-hover);--color-primary-light:var(--brand-soft);--radius-sm:10px;--radius-md:16px;--radius-lg:22px;--radius-pill:999px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--font-sans:"Nunito Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display:"Fraunces", Georgia, serif;--shadow-sm:0 1px 2px #00000014;--shadow-md:0 12px 32px #0000002e;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--color-bg:#1d1814;--color-surface:#28211c;--color-surface-2:#352c25;--color-text:#f3ebe1;--color-text-muted:#bcad9e;--color-border:#3d332b;--color-danger:#f08a80;--color-danger-bg:#3f2522;--color-on-primary:#1d1814;--color-star:#e3ba5c;--brand:#ee9470;--brand-hover:#f3a887;--brand-soft:#40291f;--food:#ee9470;--food-hover:#f3a887;--food-soft:#40291f;--chores:#93c39c;--chores-hover:#a8d1b0;--chores-soft:#25332a;--money:#e3ba5c;--money-hover:#ecc877;--money-soft:#3a301a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--color-bg:#1d1814;--color-surface:#28211c;--color-surface-2:#352c25;--color-text:#f3ebe1;--color-text-muted:#bcad9e;--color-border:#3d332b;--color-danger:#f08a80;--color-danger-bg:#3f2522;--color-on-primary:#1d1814;--color-star:#e3ba5c;--brand:#ee9470;--brand-hover:#f3a887;--brand-soft:#40291f;--food:#ee9470;--food-hover:#f3a887;--food-soft:#40291f;--chores:#93c39c;--chores-hover:#a8d1b0;--chores-soft:#25332a;--money:#e3ba5c;--money-hover:#ecc877;--money-soft:#3a301a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-module=food]{--color-primary:var(--food);--color-primary-hover:var(--food-hover);--color-primary-light:var(--food-soft)}[data-module=chores]{--color-primary:var(--chores);--color-primary-hover:var(--chores-hover);--color-primary-light:var(--chores-soft)}[data-module=money]{--color-primary:var(--money);--color-primary-hover:var(--money-hover);--color-primary-light:var(--money-soft)}*{box-sizing:border-box}html,body{min-height:100%;margin:0;padding:0}body{font-family:var(--font-sans);background:var(--color-bg);color:var(--color-text);-webkit-font-smoothing:antialiased;font-size:16px}a{color:var(--color-primary)}h1,h2,h3{line-height:1.25}h1{font-family:var(--font-display);margin:0;font-size:2rem;font-weight:600;line-height:1.15}button,input,select,textarea{font-family:inherit}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}input:not([type=checkbox],[type=radio],[type=range],[type=file]),select,textarea{border:1px solid var(--color-border);background:var(--color-surface);min-height:48px;color:var(--color-text);border-radius:14px;padding:0 14px;font-size:1rem}textarea{padding:12px 14px;line-height:1.5}select{padding:0 10px}input[type=file]{max-width:100%;font:inherit;color:var(--color-text-muted);font-size:.875rem}input[type=file]::file-selector-button{min-height:40px;margin-right:var(--space-3);padding:0 var(--space-4);border-radius:var(--radius-pill);background:var(--color-surface-2);color:var(--color-text);font:inherit;cursor:pointer;border:none;font-weight:700}input[type=checkbox],input[type=radio]{width:20px;height:20px;accent-color:var(--color-primary)}.page-head{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.page-head .actions{align-items:center;gap:var(--space-2);display:flex}.back{align-items:center;gap:var(--space-1);min-height:40px;margin-bottom:var(--space-3);border-radius:var(--radius-pill);background:var(--color-surface-2);color:var(--color-text);padding:0 14px 0 10px;font-size:.9375rem;font-weight:600;text-decoration:none;display:inline-flex}.btn{justify-content:center;align-items:center;gap:var(--space-2);border:1.5px solid var(--color-primary);border-radius:var(--radius-pill);background:var(--color-primary);min-height:44px;color:var(--color-on-primary);font:inherit;cursor:pointer;white-space:nowrap;padding:0 18px;font-size:.9375rem;font-weight:700;text-decoration:none;display:inline-flex}.btn:hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.btn.outline{color:var(--color-primary);background:0 0}.btn.quiet{background:var(--color-surface-2);color:var(--color-text);border-color:#0000}.btn.outline:hover,.btn.quiet:hover{background:var(--color-primary-light)}.btn.danger{border-color:var(--color-danger);color:var(--color-danger);background:0 0}.btn:disabled{opacity:.55;cursor:default}.card{background:var(--color-surface);border:1px solid var(--color-border);padding:var(--space-4);border-radius:20px}.eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted);margin:0;font-size:.8125rem;font-weight:700}.muted,.empty{color:var(--color-text-muted)}.error{color:var(--color-danger)}p.error,p.warning{padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--color-danger-bg);margin:0;font-size:.875rem}p.warning{background:var(--money-soft);color:var(--color-text)}.form{flex-direction:column;gap:18px;max-width:640px;display:flex}.form label,.form .field{flex-direction:column;gap:6px;display:flex}.form label>span:first-child,.form legend{font-size:.875rem;font-weight:700}.form fieldset{gap:var(--space-2);border:none;flex-direction:column;min-width:0;margin:0;padding:0;display:flex}.form legend{margin-bottom:var(--space-1)}.form .row{align-items:flex-end;gap:var(--space-3);flex-wrap:wrap;display:flex}.form .row>label{flex:140px;min-width:0}.form label.check-row{align-items:center;gap:var(--space-3);border:1px solid var(--color-border);background:var(--color-surface);border-radius:14px;flex-direction:row;min-height:52px;padding:0 14px}.form label.check-row>span:first-child,.form label.check-row>span{font-weight:600}.form .hint{color:var(--color-text-muted);margin:0;font-size:.8125rem}.form .add{min-height:44px;padding:0 var(--space-1);color:var(--color-primary);font:inherit;cursor:pointer;background:0 0;border:none;align-self:flex-start;font-weight:700}.icon-btn{width:44px;height:44px;color:var(--color-text-muted);font:inherit;cursor:pointer;background:0 0;border:none;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;font-size:1.25rem;display:inline-flex}.icon-btn:hover{color:var(--color-danger)}.form>.btn{min-height:48px;padding:0 var(--space-5);align-self:flex-start}.list-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:18px;margin:0;padding:2px 6px 2px 16px;list-style:none}.list-card>li{align-items:center;gap:var(--space-3);min-height:56px;padding:6px 0;display:flex}.list-card>li+li{border-top:1px solid var(--color-border)}.inline-form{gap:var(--space-2);flex-wrap:wrap;display:flex}.inline-form>input,.inline-form>select,.inline-form>label{flex:100px;min-width:0}.inline-form>.btn{min-height:48px}.chips{gap:var(--space-2);flex-wrap:wrap;display:flex}.chip{border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);min-height:40px;color:var(--color-text);font:inherit;cursor:pointer;padding:0 14px;font-size:.875rem;font-weight:600}.chip[aria-pressed=true]{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary)}.segmented{gap:var(--space-1);padding:var(--space-1);background:var(--color-surface-2);border-radius:14px;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;display:inline-grid}.segmented button{min-height:40px;padding:0 var(--space-4);border-radius:var(--radius-sm);color:var(--color-text-muted);font:inherit;cursor:pointer;background:0 0;border:none;font-size:.9375rem;font-weight:600}.segmented button[aria-pressed=true]{background:var(--color-surface);color:var(--color-primary);box-shadow:var(--shadow-sm);font-weight:700}@media (width>=900px){h1{font-size:2.5rem}.page-head{margin-bottom:var(--space-5)}}.nav-progress.svelte-12qhfyh{z-index:20;height:3px;position:fixed;top:0;left:0;right:0;overflow:hidden}.nav-progress.svelte-12qhfyh:after{content:"";background:var(--brand);width:30%;animation:1s ease-in-out infinite svelte-12qhfyh-nav-progress-slide;position:absolute;top:0;bottom:0;left:-30%}@keyframes svelte-12qhfyh-nav-progress-slide{0%{left:-30%}to{left:100%}}.brand.svelte-12qhfyh{align-items:center;gap:var(--space-2);color:var(--brand);font-family:var(--font-display);font-size:1.125rem;font-weight:600;text-decoration:none;display:flex}.topbar.svelte-12qhfyh{padding:var(--space-3) 20px var(--space-1);justify-content:space-between;align-items:center;display:flex}.avatar.svelte-12qhfyh{background:var(--color-surface-2);width:44px;height:44px;color:var(--color-text);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.875rem;font-weight:700;text-decoration:none;display:flex}.avatar[aria-current=page].svelte-12qhfyh{background:var(--brand-soft);color:var(--brand)}.avatar.small.svelte-12qhfyh{width:36px;height:36px;font-size:.8125rem}.sidebar.svelte-12qhfyh{display:none}main.svelte-12qhfyh{max-width:1100px;padding:var(--space-3) 20px var(--space-5);margin:0 auto}.signed-in.svelte-12qhfyh main:where(.svelte-12qhfyh){padding-bottom:calc(var(--space-6) + 72px + env(safe-area-inset-bottom))}.subnav.svelte-12qhfyh{gap:var(--space-1);padding:var(--space-1);margin-bottom:var(--space-4);background:var(--color-surface-2);border-radius:14px;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;display:grid}.subnav.svelte-12qhfyh a:where(.svelte-12qhfyh){text-align:center;border-radius:var(--radius-sm);min-height:40px;color:var(--color-text-muted);justify-content:center;align-items:center;padding:0 2px;font-size:.8125rem;font-weight:600;line-height:1.15;text-decoration:none;display:flex}.subnav.svelte-12qhfyh a[aria-current=page]:where(.svelte-12qhfyh){background:var(--color-surface);color:var(--color-primary);box-shadow:var(--shadow-sm);font-weight:700}.tabbar.svelte-12qhfyh{padding:6px var(--space-2) calc(var(--space-2) + env(safe-area-inset-bottom));background:var(--color-surface);border-top:1px solid var(--color-border);z-index:10;grid-template-columns:repeat(auto-fit,minmax(0,1fr));display:grid;position:fixed;bottom:0;left:0;right:0}.tabbar.svelte-12qhfyh a:where(.svelte-12qhfyh){color:var(--color-text-muted);flex-direction:column;align-items:center;gap:2px;padding:6px 0;font-size:.75rem;font-weight:600;text-decoration:none;display:flex}.pill.svelte-12qhfyh{padding:var(--space-1) 18px;border-radius:var(--radius-pill);display:flex}.tabbar.svelte-12qhfyh a[aria-current=page]:where(.svelte-12qhfyh){color:var(--tab);font-weight:700}.tabbar.svelte-12qhfyh a[aria-current=page]:where(.svelte-12qhfyh) .pill:where(.svelte-12qhfyh){background:var(--tab-soft)}@media (width>=900px){.app.signed-in.svelte-12qhfyh{align-items:flex-start;display:flex}.topbar.svelte-12qhfyh,.tabbar.svelte-12qhfyh{display:none}.sidebar.svelte-12qhfyh{gap:var(--space-5);width:240px;height:100vh;padding:28px var(--space-4);background:var(--color-surface);border-right:1px solid var(--color-border);flex-direction:column;flex-shrink:0;display:flex;position:sticky;top:0}.sidebar.svelte-12qhfyh .brand:where(.svelte-12qhfyh){padding:0 var(--space-3);font-size:1.25rem}.sidebar.svelte-12qhfyh nav:where(.svelte-12qhfyh){gap:var(--space-1);flex-direction:column;display:flex}.side-link.svelte-12qhfyh{align-items:center;gap:var(--space-3);min-height:44px;padding:0 var(--space-3);border-radius:var(--space-3);color:var(--color-text-muted);font-weight:600;text-decoration:none;display:flex}.side-link.svelte-12qhfyh:hover{color:var(--color-text)}.side-link[aria-current=page].svelte-12qhfyh{background:var(--tab-soft);color:var(--tab);font-weight:700}.me.svelte-12qhfyh{padding:var(--space-2) var(--space-3);border-radius:var(--space-3);color:var(--color-text);align-items:center;gap:10px;margin-top:auto;text-decoration:none;display:flex}.me[aria-current=page].svelte-12qhfyh{background:var(--color-surface-2)}.me.svelte-12qhfyh strong:where(.svelte-12qhfyh),.me.svelte-12qhfyh small:where(.svelte-12qhfyh){display:block}.me.svelte-12qhfyh small:where(.svelte-12qhfyh){color:var(--color-text-muted);font-size:.8125rem}main.svelte-12qhfyh{flex:1;min-width:0;padding:40px clamp(20px,4vw,56px)}.signed-in.svelte-12qhfyh main:where(.svelte-12qhfyh){padding-bottom:40px}.subnav.svelte-12qhfyh{margin-bottom:var(--space-5);display:inline-flex}.subnav.svelte-12qhfyh a:where(.svelte-12qhfyh){padding:0 20px;font-size:.9375rem}}
