@font-face{font-family:Geist;font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/Geist-latin-ext-DC-KSUi6.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:Geist;font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/Geist-latin-BgDaEnEv.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:Geist Mono;font-style:normal;font-weight:400 500;font-display:swap;src:url(/assets/GeistMono-latin-ext-Bwz-egvJ.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:Geist Mono;font-style:normal;font-weight:400 500;font-display:swap;src:url(/assets/GeistMono-latin-XN7g48iV.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{--bg:#000;--s1:#0f0f10;--s2:#1a1a1c;--s3:#26262a;--sheet:#0b0b0c;--line:#ffffff14;--t1:#f4f2ec;--t2:#f4f2ec9e;--t3:#f4f2ec57;--gold:#e3be66;--gold-fill:#e3be66;--on-gold:#17120a;--gold-soft:#e3be6621;--pos:#4ad28e;--neg:#ff6f66;--pos-soft:#4ad28e21;--neg-soft:#ff6f6621;--scrim:#000000a8;--glow:0 10px 30px #e3be6638;--knob:#fff;--app-icon-tile:#000;--app-icon-glyph:#e3be66;--avatar-1:#6b5ca5;--avatar-2:#2e7d8c;--avatar-3:#a9572f;--avatar-4:#a2466a;--avatar-5:#4f7d3f;--avatar-6:#3f6fa8;--avatar-7:#8a6a2e;--on-avatar:#fff;--doc-canvas:#dcdad4;--doc-ink:#16140f;--doc-ink-2:#4d4a44;--doc-ink-3:#6b6760;--doc-link:#8c6a1f;--doc-link-hover:#6d5214}[data-theme=dark]{--bg:#000;--s1:#0f0f10;--s2:#1a1a1c;--s3:#26262a;--sheet:#0b0b0c;--line:#ffffff14;--t1:#f4f2ec;--t2:#f4f2ec9e;--t3:#f4f2ec57;--gold:#e3be66;--gold-fill:#e3be66;--on-gold:#17120a;--gold-soft:#e3be6621;--pos:#4ad28e;--neg:#ff6f66;--pos-soft:#4ad28e21;--neg-soft:#ff6f6621;--scrim:#000000a8;--glow:0 10px 30px #e3be6638}[data-theme=light]{--bg:#f6f5f1;--s1:#fff;--s2:#f0eee8;--s3:#e5e2da;--sheet:#fff;--line:#18140a17;--t1:#16140f;--t2:#16140f9e;--t3:#16140f5c;--gold:#8c6a1f;--gold-fill:#d9b55e;--on-gold:#17120a;--gold-soft:#be963c26;--pos:#17803d;--neg:#c42b21;--pos-soft:#17803d1a;--neg-soft:#c42b2117;--scrim:#14120c52;--glow:0 10px 24px #a0781e40}:root,[data-theme]{--surface-ground:var(--bg);--surface-card:var(--s1);--surface-inset:var(--s2);--surface-pressed:var(--s3);--surface-sheet:var(--sheet);--text-primary:var(--t1);--text-secondary:var(--t2);--text-tertiary:var(--t3);--border-hairline:1px solid var(--line);--accent-text:var(--gold);--accent-fill:var(--gold-fill);--accent-on:var(--on-gold);--accent-soft:var(--gold-soft);--money-owed:var(--pos);--money-owe:var(--neg);--money-even:var(--t3);--danger-text:var(--neg);--danger-soft:var(--neg-soft)}:root{--font-sans:Geist,-apple-system,system-ui,sans-serif;--font-mono:"Geist Mono",ui-monospace,monospace;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fs-amount-entry:64px;--ls-amount-entry:-.04em;--fs-hero:56px;--ls-hero:-.04em;--lh-hero:1;--fs-balance:44px;--ls-balance:-.035em;--lh-balance:1.05;--fs-total:36px;--fs-title:26px;--ls-title:-.025em;--lh-title:1.1;--fs-keypad:26px;--fs-section:20px;--ls-section:-.01em;--fs-card-amount:18px;--ls-card-amount:-.02em;--fs-card-title:17px;--ls-card-title:-.01em;--fs-row:16px;--fs-body:15px;--fs-label:14px;--fs-meta:13px;--fs-caption:12px;--fs-eyebrow:11px;--ls-eyebrow:.08em;--numeric:tabular-nums;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--inset-card:16px;--inset-heading:20px;--radius-inner:12px;--radius-row-icon:13px;--radius-input:14px;--radius-trip-icon:15px;--radius-key:16px;--radius-button:18px;--radius-card:22px;--radius-hero:24px;--radius-sheet:30px;--radius-pill:999px;--size-tap:44px;--size-icon-button:40px;--size-chip:36px;--size-button:56px;--size-key:54px;--size-fab:62px;--size-switch-w:50px;--size-switch-h:30px;--size-avatar-xs:22px;--size-avatar-sm:28px;--size-avatar-md:32px;--size-avatar-lg:36px;--size-avatar-xl:40px;--size-avatar-2xl:52px;--app-icon-radius:22%;--nav-height:56px;--status-bar:59px;--dock-height:60px;--shadow-dock:0 8px 30px #00000047;--shadow-toast:0 10px 30px #00000059;--shadow-segment:0 1px 3px #0000002e;--shadow-knob:0 1px 3px #0000004d;--ease-standard:cubic-bezier(.2,0,0,1);--ease-emphasized:cubic-bezier(.32,.72,0,1);--ease-exit:cubic-bezier(.4,0,1,1);--ease-spring:cubic-bezier(.3,1.25,.5,1);--dur-press:.12s;--dur-quick:.2s;--dur-base:.32s;--dur-screen:.38s;--dur-count:.7s;--stagger:40ms;--dur-loader:1.1s;--ease-sheet:var(--ease-emphasized);--dur-sheet:var(--dur-screen);--ease-toast:var(--ease-standard);--dur-toast:.25s;--dur-fade:.25s;--press-card:scale(.985);--press-fab:scale(.95);--toast-timeout:4s;--confirm-timeout:4s}@keyframes dv-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes dv-fade{0%{opacity:0}to{opacity:1}}@keyframes dv-toast{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes dv-caret{0%,49%{opacity:1}50%,to{opacity:0}}@keyframes dv-loader-hop{0%{animation-timing-function:cubic-bezier(.2,.6,.35,1);transform:translateY(0)scale(1.18,.82)}16%{animation-timing-function:cubic-bezier(.2,.6,.35,1);transform:translateY(-.25em)scale(.94,1.08)}50%{animation-timing-function:cubic-bezier(.65,0,.8,.4);transform:translateY(-1.6em)scale(1)}84%{animation-timing-function:cubic-bezier(.65,0,.8,.4);transform:translateY(-.25em)scale(.94,1.08)}to{transform:translateY(0)scale(1.18,.82)}}@keyframes dv-loader-spin{0%,14%{transform:rotate(45deg)}86%,to{transform:rotate(225deg)}}@keyframes dv-loader-shadow{0%,to{opacity:.5;transform:scaleX(1)}50%{opacity:.15;transform:scaleX(.45)}}@keyframes dv-loader-pulse{0%,to{opacity:1}50%{opacity:.45}}@media (prefers-reduced-motion:reduce){.dv-loader-hop,.dv-loader-shadow{animation:none!important}.dv-loader-spin{animation:1.4s ease-in-out infinite dv-loader-pulse!important}}@keyframes dv-down{0%{transform:translateY(0)}to{transform:translateY(100%)}}@keyframes dv-fade-out{0%{opacity:1}to{opacity:0}}@keyframes dv-toast-out{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(8px)scale(.98)}}@keyframes dv-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes dv-push-forward{0%{opacity:0;transform:translate(32px)}to{opacity:1;transform:none}}@keyframes dv-push-back{0%{opacity:0;transform:translate(-32px)}to{opacity:1;transform:none}}@keyframes dv-fade-through{0%{opacity:0;transform:scale(.99)}to{opacity:1;transform:none}}@keyframes dv-pop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important}}.dv-scroll{scrollbar-width:none}.dv-scroll::-webkit-scrollbar{display:none}.dv-root{background:var(--bg);color:var(--t1);font-family:var(--font-sans);-webkit-font-smoothing:antialiased}.dv-root input::placeholder{color:var(--t3)}:root{--safe-top:env(safe-area-inset-top,0px);--safe-right:env(safe-area-inset-right,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--fixed-floor:calc(100% - var(--app-height,100%));--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root,[data-theme]{--gold-on-soft:var(--gold)}[data-theme=light]{--gold-on-soft:#7f5f1b}:root,[data-theme]{--pos-on-inset:var(--pos)}[data-theme=light]{--pos-on-inset:#157a3a}*,:before,:after{box-sizing:border-box}html,body,#root{height:var(--app-height,100%)}html{background:var(--bg);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;overscroll-behavior-y:none;touch-action:pan-x pan-y}body{touch-action:pan-x pan-y;background:var(--bg);color:var(--t1);font-family:var(--font-sans);font-size:var(--fs-body);-webkit-font-smoothing:antialiased;margin:0}button,input,select,textarea{font:inherit;color:inherit}button{touch-action:manipulation}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.loader{flex-direction:column;flex:none;align-items:center;display:inline-flex}.loader-stage{width:1em;height:1em;margin-top:1.7em;display:block;position:relative}.loader-shadow{background:var(--gold-fill);filter:blur(1.5px);height:.22em;animation:dv-loader-shadow var(--dur-loader) ease-in-out infinite;border-radius:50%;position:absolute;bottom:-.45em;left:-.15em;right:-.15em}.loader-hop{transform-origin:50% 100%;animation:dv-loader-hop var(--dur-loader) infinite;display:block;position:absolute;inset:0}.loader-diamond{background:var(--gold-fill);width:100%;height:100%;animation:dv-loader-spin var(--dur-loader) cubic-bezier(.45, 0, .55, 1) infinite;border-radius:.14em;display:block;transform:rotate(45deg)}.loader--compact{width:1em;height:1em}.loader-diamond--turning{animation:loader-turn var(--dur-loader) cubic-bezier(.45, 0, .55, 1) infinite;background:currentColor}@keyframes loader-turn{0%{transform:rotate(45deg)}to{transform:rotate(225deg)}}@media (prefers-reduced-motion:reduce){.loader-diamond--turning{animation:1.4s ease-in-out infinite dv-loader-pulse!important}}.loader-screen{min-height:var(--app-height,100dvh);background:var(--bg);animation:dv-fade var(--dur-quick) var(--ease-standard) .25s both;justify-content:center;align-items:center;display:flex}.button{min-height:var(--size-tap);white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;transition:opacity var(--dur-quick) var(--ease-standard), background-color var(--dur-quick) var(--ease-standard), color var(--dur-quick) var(--ease-standard);border:0;flex:none;justify-content:center;align-items:center;margin:0;display:inline-flex;position:relative}.button:active{opacity:.7}.button:after{content:"";top:0;right:min(0px, calc((100% - var(--size-tap)) / 2));bottom:0;left:min(0px, calc((100% - var(--size-tap)) / 2));position:absolute}.button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.button-content{align-items:center;gap:var(--space-2);display:inline-flex}.button--primary{height:var(--size-button);border-radius:var(--radius-button);background:var(--gold-fill);color:var(--on-gold);font-size:var(--fs-row);font-weight:var(--fw-semibold);padding:0 28px}.button--secondary{height:var(--size-tap);padding:0 var(--space-4);border:1px solid var(--line);background:var(--s1);color:var(--t1);font-size:var(--fs-label);font-weight:var(--fw-medium);border-radius:22px}.button--secondary .button-content{gap:6px}.button--soft{height:var(--size-tap);padding:0 var(--space-4);border-radius:var(--radius-button);background:var(--gold-soft);color:var(--gold-on-soft);font-size:var(--fs-meta);font-weight:var(--fw-semibold)}.button--compact{border-radius:16px;height:48px}.button--text{color:var(--gold);font-size:var(--fs-label);font-weight:var(--fw-medium);background:0 0;padding:0 2px}.button--danger{height:var(--size-tap);color:var(--neg);font-size:var(--fs-body);font-weight:var(--fw-medium);background:0 0;border-radius:22px;padding:0 18px}.button--armed{background:var(--neg-soft)}.button--block{width:100%}.button[aria-disabled=true]{opacity:.35;cursor:default}.button--busy{cursor:default}.button--busy .button-content{opacity:0}.button-loader{position:absolute}.icon-button{width:var(--size-tap);height:var(--size-tap);cursor:pointer;transition:opacity var(--dur-press) var(--ease-standard);border-radius:50%;flex:none;justify-content:center;align-items:center;margin:0;padding:0;text-decoration:none;display:flex}.icon-button--plain{border:1px solid var(--line);background:var(--s1);color:var(--t1)}.icon-button--gold{background:var(--s2);color:var(--gold);border:0}.icon-button--bare{color:var(--t2);background:0 0;border:0}.icon-button:active{opacity:.6}.icon-button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.icon-button:disabled{opacity:.35;cursor:default}.load-failed{align-items:center;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--line);border-radius:var(--radius-card);background:var(--s1);flex-wrap:wrap;display:flex}.load-failed-message{color:var(--t2);font-size:var(--fs-body);flex:200px;margin:0;line-height:1.5}.load-waiting{padding:var(--space-8) 0;justify-content:center;display:flex}.brand{align-items:center;gap:10px;display:inline-flex}.brand-icon{flex:none;display:block}.brand-name{color:var(--t1);font-size:var(--fs-card-title);font-weight:var(--fw-semibold);letter-spacing:var(--ls-card-title)}.account-button{width:var(--size-tap);height:var(--size-tap);transition:opacity var(--dur-press) var(--ease-standard);border-radius:50%;flex:none;justify-content:center;align-items:center;margin-right:-4px;text-decoration:none;display:flex}.account-button:active{opacity:.6}.account-button:focus-visible{outline:2px solid var(--gold);outline-offset:0}@media (width>=900px){.account-button{display:none}}.screen{padding:var(--screen-pad);animation:dv-fade-through var(--dur-base) var(--ease-standard) both;flex-direction:column;gap:22px;margin:0 auto;display:flex}.screen-header{align-items:center;gap:var(--space-2);min-height:var(--nav-height);display:flex}.screen-heading{gap:var(--space-1);flex-direction:column;flex:1;min-width:0;display:flex}.screen-header--stacked{align-items:flex-start}.screen-header--stacked .screen-title{line-height:1.15}.screen-actions{gap:var(--space-2);flex:none;display:flex}.screen-actions .button--compact{padding:0 18px}.screen-subtitle{color:var(--t2);font-size:var(--fs-label);margin:0;line-height:1.4}.screen-title{overflow-wrap:anywhere;min-width:0;font-size:var(--fs-title);font-weight:var(--fw-semibold);letter-spacing:var(--ls-title);line-height:var(--lh-title);margin:0}.screen-back-row{align-items:center;height:48px;margin-bottom:-10px;display:flex}.screen-back{align-items:center;gap:var(--space-1);height:var(--size-tap);color:var(--gold);font-size:var(--fs-row);font-weight:var(--fw-medium);cursor:pointer;transition:background-color var(--dur-quick) var(--ease-standard);background:0 0;border:0;border-radius:22px;margin:0 0 0 -6px;padding:0 12px 0 6px;display:flex}.screen-back:active{background:var(--s1)}.screen-back:focus-visible{outline:2px solid var(--gold);outline-offset:0}.screen-note{color:var(--t2);font-size:var(--fs-body);text-wrap:pretty;margin:0;line-height:1.5}.screen-eyebrow{color:var(--t2);font-size:var(--fs-meta);font-weight:var(--fw-medium);margin:0}.group{gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.group-head{justify-content:space-between;align-items:center;gap:var(--space-2);min-height:20px;padding:0 var(--space-1);display:flex}.group-title{color:var(--t2);font-size:var(--fs-meta);font-weight:var(--fw-medium);margin:0}.group-card{border:1px solid var(--line);border-radius:var(--radius-card);background:var(--s1);min-width:0;overflow:hidden}.group-card--padded{padding:var(--space-4);flex-direction:column;gap:14px;display:flex}.group-row{align-items:center;gap:var(--space-3);min-height:56px;padding:14px 14px 14px var(--space-4);display:flex}.group-row+.group-row{border-top:1px solid var(--line)}.group-row--link{color:inherit;cursor:pointer;transition:background-color var(--dur-quick) var(--ease-standard);text-decoration:none}.group-row--link:active{background:var(--s2)}@media (hover:hover){.group-row--link:hover{background:var(--s2)}}.group-row--link:focus-visible{outline:2px solid var(--gold);outline-offset:-2px}.group-row--top{align-items:flex-start}.group-row-text{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.group-row-title{font-size:var(--fs-row);font-weight:var(--fw-medium);overflow-wrap:anywhere}.group-row-title--body{font-size:var(--fs-body)}.group-row-meta{color:var(--t2);font-size:var(--fs-meta);line-height:1.4}.group-row-amount{font-size:var(--fs-body);font-weight:var(--fw-medium);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap;flex:none}.group-row-chevron{color:var(--t2);flex:none;display:flex}.group-empty{padding:var(--space-4);color:var(--t2);font-size:var(--fs-body);margin:0;line-height:1.5}.group-more{padding:0 var(--space-4);border-top:1px solid var(--line)}.tone-negative{color:var(--neg)}.tone-positive{color:var(--pos)}.tone-neutral{color:var(--t1)}.tone-muted{color:var(--t2)}.group-title[tabindex="-1"]:focus{outline:none}.home-title{display:block}@media (width<=899px){.home-title{white-space:nowrap;text-overflow:ellipsis;font-size:22px;line-height:1.15;overflow:hidden}}.home-past{flex-wrap:wrap;align-items:center;gap:0 10px;margin-top:-10px;display:flex}.home-past-note{color:var(--t2);font-size:var(--fs-label)}.home-cards{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(260px,1fr));display:grid}.home-card{min-width:0;padding:22px var(--space-5);border:1px solid var(--line);border-radius:var(--radius-hero);background:var(--s1);flex-direction:column;gap:10px;display:flex}.home-card-label{color:var(--t2);font-size:var(--fs-label)}.home-card-note{color:var(--t2);font-size:var(--fs-meta)}.home-money{font-weight:var(--fw-medium);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.home-money--hero{font-size:var(--fs-hero);letter-spacing:var(--ls-hero);line-height:var(--lh-hero)}.home-money--balance{font-size:var(--fs-balance);letter-spacing:var(--ls-balance);line-height:var(--lh-balance);margin-top:auto}.home-paid{align-items:center;gap:var(--space-4);padding:28px var(--space-5);border:1px solid var(--line);border-radius:var(--radius-hero);background:var(--s1);display:flex}.home-paid-icon{background:var(--pos-soft);width:48px;height:48px;color:var(--pos);border-radius:24px;flex:none;justify-content:center;align-items:center;display:flex}.home-paid-text{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.home-paid-title{font-size:var(--fs-section);font-weight:var(--fw-semibold);letter-spacing:var(--ls-section)}.home-paid-sub{color:var(--t2);font-size:var(--fs-label);line-height:1.45}.home-unpaid{gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.home-unpaid-head{justify-content:space-between;align-items:baseline;gap:0 var(--space-3);padding:0 var(--space-1);flex-wrap:wrap;display:flex}.home-unpaid-title{font-size:var(--fs-section);font-weight:var(--fw-semibold);letter-spacing:var(--ls-section);margin:0}.home-unpaid-meta{color:var(--t2);font-size:var(--fs-meta);font-variant-numeric:tabular-nums}.home-unpaid-list{margin:0;padding:0;list-style:none}.home-unpaid-list>li+li{border-top:1px solid var(--line)}.home-row{padding:14px 14px 14px var(--space-4)}.home-row-text{gap:var(--space-1)}.home-row-title{font-size:var(--fs-row);font-weight:var(--fw-medium);overflow-wrap:anywhere}.home-row-missing{margin-top:2px}.home-row-chips{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.home-chip{height:22px;padding:0 var(--space-2);background:var(--s2);color:var(--t1);font-size:var(--fs-caption);font-weight:var(--fw-medium);border-radius:11px;align-items:center;display:inline-flex}.home-row-unpaid{color:var(--t2);font-size:var(--fs-caption)}.home-row-amounts{align-items:flex-end;gap:var(--space-1);text-align:right;flex-direction:column;flex:none;max-width:45%;display:flex}.home-row-owes{color:var(--neg);font-size:var(--fs-row);font-weight:var(--fw-medium);font-variant-numeric:tabular-nums;white-space:nowrap}.home-row-earlier{max-width:150px;color:var(--t2);font-size:var(--fs-caption);line-height:1.35}.home-post-link{padding:var(--space-1) var(--space-1) 0}.home-text-link{min-height:var(--size-tap);color:var(--gold);font-size:var(--fs-label);font-weight:var(--fw-medium);border-radius:6px;align-items:center;padding:0 2px;text-decoration:none;display:inline-flex}.home-text-link:active{opacity:.7}.home-text-link:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.home-empty-month{padding:var(--space-8) var(--space-4);color:var(--t2);font-size:var(--fs-body);text-align:center;margin:0}.home-empty{align-items:center;gap:var(--space-3);padding:40px var(--space-6);border:1px solid var(--line);border-radius:var(--radius-hero);background:var(--s1);text-align:center;flex-direction:column;display:flex}.home-empty-icon{background:var(--s2);width:56px;height:56px;color:var(--gold);border-radius:18px;justify-content:center;align-items:center;display:flex}.home-empty-title{font-size:var(--fs-section);font-weight:var(--fw-semibold);letter-spacing:var(--ls-section);margin:0}.home-empty-text{max-width:300px;color:var(--t2);font-size:var(--fs-body);text-wrap:pretty;margin:0;line-height:1.45}.home-empty .button{margin-top:var(--space-2)}.home-app-icon{flex:none;margin-right:2px;display:block}@media (width>=900px){.home-app-icon{display:none}}.auth-frame{min-height:var(--app-height,100dvh);background:var(--bg)}.auth-column{max-width:440px;padding:calc(var(--safe-top) + 56px) calc(var(--safe-right) + var(--space-6)) calc(var(--safe-bottom) + 48px) calc(var(--safe-left) + var(--space-6));animation:dv-fade-through var(--dur-base) var(--ease-standard) both;flex-direction:column;gap:28px;margin:0 auto;display:flex}.auth-heading{flex-direction:column;gap:10px;display:flex}.auth-title{font-size:var(--fs-title);font-weight:var(--fw-semibold);letter-spacing:var(--ls-title);outline:0;margin:0;line-height:1.15}.auth-sub{color:var(--t2);font-size:var(--fs-body);text-wrap:pretty;margin:0;line-height:1.5}.auth-aside{align-items:center;column-gap:var(--space-2);color:var(--t2);font-size:var(--fs-label);flex-wrap:wrap;display:flex}.auth-form{flex-direction:column;gap:28px;display:flex}.auth-error{color:var(--neg);font-size:var(--fs-meta);text-wrap:pretty;margin:-16px 0 0;line-height:1.45}.auth-tile{background:var(--neg-soft);width:52px;height:52px;color:var(--neg);border-radius:18px;justify-content:center;align-items:center;display:flex}.text-field{flex-direction:column;gap:6px;min-width:0;display:flex}.text-field-label{color:var(--t2);font-size:var(--fs-meta)}.text-field-row{gap:var(--space-2);min-width:0;display:flex}.text-field-row .text-field-input{flex:1}.text-field-input{width:100%;min-width:0;height:48px;padding:0 var(--space-4);border:1px solid var(--line);border-radius:var(--radius-input);background:var(--s1);color:var(--t1);font-size:var(--fs-row);font-weight:var(--fw-medium);transition:border-color var(--dur-quick) var(--ease-standard);outline:0;margin:0}.text-field-input::placeholder{color:var(--t2);font-weight:var(--fw-regular);opacity:1}.text-field-input:focus-visible{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold)}.text-field-input[aria-invalid=true]{border-color:var(--neg)}.text-field-input:disabled{opacity:.35}.text-field-note,.text-field-error{font-size:var(--fs-meta);text-wrap:pretty;line-height:1.45}.text-field-note{color:var(--t2)}.text-field-error{color:var(--neg)}.text-field-box{min-width:0;display:block;position:relative}.text-field-prefix{color:var(--t2);font-size:var(--fs-row);font-weight:var(--fw-medium);pointer-events:none;align-items:center;display:flex;position:absolute;top:0;bottom:0;left:14px}.text-field-input--prefixed{font-variant-numeric:tabular-nums;padding-left:30px}.text-field-input[type=date]{text-align:left;appearance:none;min-width:0;max-width:100%;line-height:46px;display:block}.text-field-input[type=date]::-webkit-date-and-time-value{text-align:left}.waiting-scrim{inset:0;bottom:var(--fixed-floor);z-index:60;padding:calc(var(--safe-top) + var(--space-6)) calc(var(--safe-right) + var(--space-6)) calc(var(--safe-bottom) + var(--space-6)) calc(var(--safe-left) + var(--space-6));background:var(--scrim);animation:dv-fade var(--dur-quick) var(--ease-standard) both;justify-content:center;align-items:center;display:flex;position:fixed}.waiting-card{align-items:center;gap:var(--space-4);border:1px solid var(--line);border-radius:var(--radius-hero);background:var(--sheet);text-align:center;flex-direction:column;width:100%;max-width:300px;padding:28px 20px;display:flex}.waiting-title{font-size:var(--fs-row);font-weight:var(--fw-medium)}.waiting-hint{color:var(--t2);font-size:var(--fs-meta);line-height:1.45}.join-card{padding:var(--space-5);border:1px solid var(--line);border-radius:var(--radius-hero);background:var(--s1);flex-direction:column;gap:14px;display:flex}.join-tile{border-radius:var(--radius-input);background:var(--gold-soft);width:44px;height:44px;color:var(--gold-on-soft);justify-content:center;align-items:center;display:flex}.join-title{font-size:var(--fs-section);font-weight:var(--fw-semibold);letter-spacing:var(--ls-section);text-wrap:pretty;margin:0;line-height:1.25}.join-meta{color:var(--t2);font-size:var(--fs-label);margin:0}.chip{min-width:0;height:var(--size-tap);border:1px solid var(--line);background:var(--s1);color:var(--t1);font-size:var(--fs-meta);font-weight:var(--fw-medium);white-space:nowrap;cursor:pointer;transition:background-color var(--dur-quick) var(--ease-standard), color var(--dur-quick) var(--ease-standard), border-color var(--dur-quick) var(--ease-standard);border-radius:18px;justify-content:center;align-items:center;margin:0;padding:0 14px;display:inline-flex}.chip[aria-pressed=true]{background:var(--gold-soft);color:var(--gold-on-soft);font-weight:var(--fw-semibold);border-color:#0000}.chip:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.chip:disabled{opacity:.35;cursor:default}.setup-step{color:var(--t2);font-size:var(--fs-meta)}.setup-picker{padding:var(--space-4);border:1px solid var(--line);border-radius:var(--radius-card);background:var(--s1);flex-direction:column;gap:14px;display:flex}.setup-year{align-items:center;gap:var(--space-2);display:flex}.setup-year-number{font-size:var(--fs-card-title);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;text-align:center;flex:1}.setup-months{gap:var(--space-2);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.setup-months .chip{width:100%;padding:0}.setup-error{color:var(--neg);font-size:var(--fs-meta);margin:0;line-height:1.45}.setup-actions{flex-direction:column;gap:28px;display:flex}:root{--tabbar-bottom:max(var(--space-4), calc(var(--safe-bottom) + var(--space-2)));--tabbar-height:66px}.shell{--screen-pad:calc(var(--safe-top) + max(6px, min(20px, var(--safe-top)))) calc(var(--safe-right) + var(--space-4)) calc(var(--tabbar-bottom) + var(--tabbar-height) + var(--space-10)) calc(var(--safe-left) + var(--space-4));height:var(--app-height,100%);position:fixed;top:0;left:0;right:0}.shell[data-pushed]{--screen-pad:calc(var(--safe-top) + max(6px, min(20px, var(--safe-top)))) calc(var(--safe-right) + var(--space-4)) calc(var(--safe-bottom) + 64px) calc(var(--safe-left) + var(--space-4))}.shell-status-ground{z-index:30;height:var(--safe-top);background:var(--bg);pointer-events:none;position:absolute;top:0;left:0;right:0}.shell-body{position:absolute;inset:0}.shell-scroll{overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;position:absolute;inset:0;overflow:hidden auto}.shell-main{min-width:0}.shell-main:focus{outline:none}.sidebar{display:none}.tabbar{right:calc(var(--safe-right) + 14px);bottom:var(--tabbar-bottom);left:calc(var(--safe-left) + 14px);z-index:40;border:1px solid var(--line);background:var(--s1);max-width:480px;box-shadow:var(--shadow-dock);border-radius:32px;margin:0 auto;padding:5px;position:absolute}.tabbar-pill{background:var(--gold-soft);width:calc(25% - 2.5px);transition:transform var(--dur-base) var(--ease-spring);pointer-events:none;border-radius:27px;position:absolute;top:5px;bottom:5px;left:5px}.tabbar-list{grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid;position:relative}.tabbar-link{height:54px;color:var(--t2);font-size:var(--fs-eyebrow);font-weight:var(--fw-semibold);white-space:nowrap;-webkit-user-select:none;user-select:none;transition:color var(--dur-quick) var(--ease-standard), opacity var(--dur-press) var(--ease-standard);border-radius:27px;flex-direction:column;justify-content:center;align-items:center;gap:3px;text-decoration:none;display:flex}.tabbar-link[aria-current=page]{color:var(--gold-on-soft)}.tabbar-link:active{opacity:.6}.tabbar-link:focus-visible{outline:2px solid var(--gold);outline-offset:-2px}@media (width>=900px){.shell{--screen-pad:calc(var(--safe-top) + 36px) calc(var(--safe-right) + 44px) 96px 44px;grid-template-columns:248px minmax(0,1fr);display:grid}.shell-body{grid-column:2;min-width:0;position:relative;inset:auto}.tabbar{display:none}.sidebar{height:100%;padding:calc(var(--safe-top) + 28px) 14px 18px calc(var(--safe-left) + 14px);border-right:1px solid var(--line);flex-direction:column;grid-column:1;gap:28px;display:flex;overflow-y:auto}.sidebar-brand{align-items:center;height:32px;padding:0 12px;display:flex}.sidebar-list{gap:var(--space-1);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.sidebar-link{align-items:center;gap:var(--space-3);height:var(--size-tap);border-radius:var(--radius-input);color:var(--t2);font-size:var(--fs-body);font-weight:var(--fw-medium);transition:background-color var(--dur-quick) var(--ease-standard), color var(--dur-quick) var(--ease-standard), opacity var(--dur-press) var(--ease-standard);padding:0 12px;text-decoration:none;display:flex}.sidebar-link[aria-current=page]{background:var(--gold-soft);color:var(--gold-on-soft)}.sidebar-link:active{opacity:.6}.sidebar-link:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.sidebar-foot{margin-top:auto}.sidebar-account{border-radius:var(--radius-key);height:52px;color:var(--t1);font-size:var(--fs-body);font-weight:var(--fw-medium);transition:background-color var(--dur-quick) var(--ease-standard), color var(--dur-quick) var(--ease-standard), opacity var(--dur-press) var(--ease-standard);align-items:center;gap:10px;padding:0 10px;text-decoration:none;display:flex}.sidebar-account[aria-current=page]{background:var(--gold-soft);color:var(--gold-on-soft)}.sidebar-account:active{opacity:.6}.sidebar-account:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.sidebar-account-text{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.sidebar-account-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sidebar-account-sub{color:var(--t2);font-size:var(--fs-caption);font-weight:var(--fw-regular)}.shell[data-pushed]{--screen-pad:calc(var(--safe-top) + 36px) calc(var(--safe-right) + 44px) 96px 44px}}
