.base-icon{display:inline-block;flex:none;width:var(--icon-size,20px);height:var(--icon-size,20px);stroke-width:var(--icon-stroke,1.75);vertical-align:middle}.base-icon--spin{animation:base-icon-spin .9s linear infinite}@keyframes base-icon-spin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.base-icon--spin{animation-duration:2s!important;animation-iteration-count:infinite!important}}.app[data-v-4339d082]{min-height:100vh;min-height:100dvh}.app--shell[data-v-4339d082]{display:grid;grid-template-columns:var(--sidebar-w) minmax(0,1fr)}.app-impersonation[data-v-4339d082]{grid-column:1/-1;position:sticky;top:0;z-index:var(--z-sticky);display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--space-1) var(--space-4);padding:var(--space-1) var(--space-4);background:var(--warning);color:var(--primary-contrast)}.app-impersonation-text[data-v-4339d082]{display:flex;align-items:center;gap:var(--space-2);margin:0;font-weight:var(--weight-medium)}.app-impersonation-text b[data-v-4339d082]{font-weight:var(--weight-semibold)}.app-impersonation-return[data-v-4339d082]{--icon-size:18px;display:inline-flex;align-items:center;gap:var(--space-2);min-height:var(--tap-min);padding:0 var(--space-5);border:0;border-radius:var(--radius-pill);background:var(--surface);color:var(--text);font:inherit;font-weight:var(--weight-semibold);cursor:pointer}.app-impersonation-return[data-v-4339d082]:hover:not(:disabled){background:var(--surface-2)}.app-impersonation-return[data-v-4339d082]:disabled{cursor:progress;opacity:.7}.app-impersonation[data-v-4339d082] :focus-visible{outline:2px solid var(--primary-contrast);outline-offset:2px}.app-notice[data-v-4339d082]{margin-bottom:var(--space-6)}.app-notice .btn[data-v-4339d082]{margin-left:auto}.app-toast[data-v-4339d082]{position:fixed;top:var(--space-4);left:50%;z-index:var(--z-toast);display:flex;align-items:center;gap:var(--space-3);width:-moz-max-content;width:max-content;max-width:min(560px,calc(100vw - var(--space-6)));padding:var(--space-3) var(--space-3) var(--space-3) var(--space-4);border-radius:var(--radius-lg);background:var(--surface-deep);color:var(--on-deep);box-shadow:var(--shadow-lg);transform:translateX(-50%)}.app-toast .base-icon[data-v-4339d082]{flex:none}.app-toast-close[data-v-4339d082]{display:grid;place-items:center;flex:none;width:var(--tap-min);height:var(--tap-min);padding:0;border:0;border-radius:var(--radius-md);background:transparent;color:inherit;cursor:pointer}.app-toast-close[data-v-4339d082]:hover{background:hsla(0,0%,100%,.12)}.app-toast[data-v-4339d082] :focus-visible{outline:2px solid var(--on-deep);outline-offset:2px}.app-sidebar[data-v-4339d082]{position:sticky;top:var(--imp-banner-h,0);align-self:start;display:flex;flex-direction:column;height:100vh;height:calc(100vh - var(--imp-banner-h, 0px));height:calc(100dvh - var(--imp-banner-h, 0px));padding:var(--space-6) var(--space-4) var(--space-4);overflow-y:auto}.app-sidebar-head[data-v-4339d082]{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);margin-bottom:var(--space-8)}.app-brand[data-v-4339d082]{display:flex;align-items:center;gap:var(--space-3);min-width:0;padding:0 var(--space-3);color:var(--text);font-size:var(--text-md);font-weight:var(--weight-semibold);letter-spacing:-.01em;text-decoration:none}.app-brand[data-v-4339d082]:hover{color:var(--text)}.app-brand-mark[data-v-4339d082]{--icon-size:20px;display:grid;place-items:center;flex:none;width:34px;height:34px;border-radius:11px;background:var(--primary);color:var(--primary-contrast)}.app-nav[data-v-4339d082]{display:grid;gap:2px}.app-nav-link[data-v-4339d082]{display:flex;align-items:center;gap:var(--space-3);min-height:var(--tap-min);padding:0 var(--space-3);border-radius:var(--radius-md);color:var(--text-muted);font-weight:var(--weight-medium);text-decoration:none;transition:background var(--dur) var(--ease),color var(--dur) var(--ease)}.app-nav-link[data-v-4339d082]:hover{background:var(--bg-hover);color:var(--text)}.app-nav-link.router-link-active[data-v-4339d082]{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.app-nav-link.router-link-active .base-icon[data-v-4339d082]{color:var(--primary)}.app-nav-sep[data-v-4339d082]{height:1px;margin:var(--space-4) var(--space-3);background:var(--border-strong);opacity:.6}.app-user[data-v-4339d082]{position:relative;margin-top:auto;padding-top:var(--space-4)}.app-user-button[data-v-4339d082]{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-2) var(--space-3);border:0;border-radius:var(--radius-md);background:transparent;color:var(--text);text-align:left;cursor:pointer;transition:background var(--dur) var(--ease)}.app-user-button[aria-expanded=true][data-v-4339d082],.app-user-button[data-v-4339d082]:hover{background:var(--bg-hover)}.app-user-meta[data-v-4339d082]{display:grid;min-width:0;line-height:1.25}.app-user-meta b[data-v-4339d082]{overflow:hidden;font-weight:var(--weight-medium);text-overflow:ellipsis;white-space:nowrap}.app-user-meta small[data-v-4339d082]{color:var(--text-muted);font-size:var(--text-sm)}.app-user-chevron[data-v-4339d082]{margin-left:auto;color:var(--text-muted);transition:transform var(--dur) var(--ease)}.app-user-chevron.is-open[data-v-4339d082]{transform:rotate(180deg)}.app-user-menu[data-v-4339d082]{position:absolute;right:0;bottom:calc(100% - var(--space-4) + var(--space-2));left:0;z-index:var(--z-dropdown);padding:var(--space-2);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-lg)}.app-user-menu-head[data-v-4339d082]{display:grid;margin-bottom:var(--space-2);padding:var(--space-3);border-bottom:1px solid var(--border);line-height:1.3}.app-user-menu-head b[data-v-4339d082]{font-size:var(--text-sm);font-weight:var(--weight-medium);overflow-wrap:anywhere}.app-user-menu-head small[data-v-4339d082]{color:var(--text-muted);font-size:var(--text-sm)}.app-menu-item[data-v-4339d082]{--icon-size:18px;display:flex;align-items:center;gap:var(--space-3);width:100%;min-height:var(--tap-min);padding:0 var(--space-3);border:0;border-radius:var(--radius-sm);background:transparent;color:var(--text);font-size:var(--text-base);text-align:left;text-decoration:none;cursor:pointer}.app-menu-item[data-v-4339d082]:hover{background:var(--surface-2);color:var(--text)}.app-menu-item.is-danger[data-v-4339d082],.app-menu-item.is-danger[data-v-4339d082]:hover{color:var(--danger)}.app-canvas[data-v-4339d082]{display:flex;flex-direction:column;min-width:0;margin:var(--space-3) var(--space-3) var(--space-3) 0;padding:var(--space-9) var(--canvas-pad-x) var(--space-7);border-radius:var(--radius-xl);background:var(--surface);box-shadow:var(--shadow-md)}.app-content[data-v-4339d082]{flex:1 0 auto;min-width:0}.app-footer[data-v-4339d082]{margin-top:var(--space-9);color:var(--text-muted);font-size:var(--text-sm)}.app-icon-button[data-v-4339d082]{display:grid;place-items:center;flex:none;width:var(--tap-min);height:var(--tap-min);padding:0;border:0;border-radius:var(--radius-md);background:transparent;color:var(--text);cursor:pointer}.app-icon-button[data-v-4339d082]:hover{background:var(--bg-hover)}.app-drawer-close[data-v-4339d082],.app-mobilebar[data-v-4339d082],.app-scrim[data-v-4339d082]{display:none}@media (max-width:900px){.app--shell[data-v-4339d082]{display:block}.app-mobilebar[data-v-4339d082]{display:flex;align-items:center;gap:var(--space-3);height:64px;padding:0 var(--space-4)}.app-mobilebar .app-icon-button[data-v-4339d082]{margin-left:calc(var(--space-2)*-1)}.app-mobilebar .app-brand[data-v-4339d082]{padding:0;font-size:var(--text-base)}.app-mobilebar .app-brand-mark[data-v-4339d082]{--icon-size:18px;width:30px;height:30px;border-radius:10px}.app-mobilebar-avatar[data-v-4339d082]{margin-left:auto;border-radius:50%;line-height:0}.app-drawer-close[data-v-4339d082]{display:grid}.app-sidebar[data-v-4339d082]{position:fixed;top:0;bottom:0;left:0;z-index:var(--z-drawer);align-self:stretch;width:min(300px,86vw);height:auto;background:var(--bg);box-shadow:var(--shadow-lg);visibility:hidden;transform:translateX(-102%);transition:transform var(--dur) var(--ease),visibility 0s linear var(--dur)}.app--drawer-open .app-sidebar[data-v-4339d082]{visibility:visible;transform:none;transition:transform var(--dur) var(--ease),visibility 0s}.app--drawer-open .app-scrim[data-v-4339d082]{display:block;position:fixed;inset:0;z-index:var(--z-scrim);background:var(--overlay)}.app-canvas[data-v-4339d082]{min-height:calc(100vh - 64px);min-height:calc(100dvh - 64px);margin:0;padding:var(--space-7) var(--space-4) var(--space-7);border-radius:var(--radius-xl) var(--radius-xl) 0 0;box-shadow:none}.app-footer[data-v-4339d082]{margin-top:var(--space-8)}}@media (prefers-reduced-motion:reduce){.app-nav-link[data-v-4339d082],.app-sidebar[data-v-4339d082],.app-user-chevron[data-v-4339d082]{transition:none}}@media print{.app--shell[data-v-4339d082]{display:block}.app-footer[data-v-4339d082],.app-impersonation[data-v-4339d082],.app-mobilebar[data-v-4339d082],.app-notice[data-v-4339d082],.app-scrim[data-v-4339d082],.app-sidebar[data-v-4339d082],.app-toast[data-v-4339d082]{display:none!important}.app-canvas[data-v-4339d082]{min-height:0;margin:0;padding:0;border-radius:0;background:transparent;box-shadow:none}}.home-error[data-v-f4b6799c]{align-items:center}.home-error>span[data-v-f4b6799c],.rent-alert>span[data-v-f4b6799c]{flex:1 1 auto}.rent-hero[data-v-f4b6799c]{padding:var(--space-7);background:var(--surface-2);border-radius:var(--radius-lg)}.rent-hero-top[data-v-f4b6799c]{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--space-5)}.rent-title[data-v-f4b6799c]{font-size:var(--text-md);font-weight:var(--weight-medium)}.fig[data-v-f4b6799c]{display:grid;justify-items:end;text-align:right}.fig-big[data-v-f4b6799c]{font-size:var(--text-3xl);font-weight:var(--weight-light);letter-spacing:var(--tracking-display);line-height:1}.fig-note[data-v-f4b6799c]{margin-top:var(--space-2);color:var(--text-muted);font-size:var(--text-sm)}.fig-note+.fig-note[data-v-f4b6799c]{margin-top:0}.fig-note.rate-danger[data-v-f4b6799c]{color:var(--danger)}.fig-note.rate-warning[data-v-f4b6799c]{color:var(--warning)}.rent-status[data-v-f4b6799c]{--icon-size:18px;display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-6);color:var(--text-muted)}.rent-alert[data-v-f4b6799c]{align-items:center;margin:var(--space-6) 0 0}.strip[data-v-f4b6799c]{display:flex;flex-wrap:wrap;gap:4px;margin:var(--space-6) 0 var(--space-4);list-style:none}.seg[data-v-f4b6799c]{--icon-size:18px;--seg-min:48px;flex:var(--w) 1 var(--seg-min);min-width:0;height:56px;display:grid;place-items:center;border:2px solid transparent;border-radius:var(--radius-md);transform-origin:left center;animation:seg-grow-f4b6799c .7s var(--ease) both;animation-delay:calc(var(--i, 0)*70ms)}.seg.is-paid[data-v-f4b6799c],.swatch.is-paid[data-v-f4b6799c]{background:var(--primary);color:var(--primary-contrast)}.seg.is-open[data-v-f4b6799c],.swatch.is-open[data-v-f4b6799c]{border-color:var(--chart-pending);background:var(--surface);color:var(--info)}.seg.is-vacant[data-v-f4b6799c],.swatch.is-vacant[data-v-f4b6799c]{border-style:dashed;border-color:var(--border-input);color:var(--text-muted)}@keyframes seg-grow-f4b6799c{0%{opacity:0;transform:scaleX(0)}to{opacity:1;transform:scaleX(1)}}.legend[data-v-f4b6799c]{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-6);color:var(--text-muted);font-size:var(--text-sm);list-style:none}.legend>li[data-v-f4b6799c]{display:inline-flex;align-items:center;gap:var(--space-2)}.swatch[data-v-f4b6799c]{--icon-size:12px;display:inline-grid;place-items:center;width:20px;height:20px;border:2px solid transparent;border-radius:var(--radius-sm)}.att[data-v-f4b6799c]{margin-top:var(--space-6);padding-top:var(--space-5);border-top:1px solid var(--border-strong)}.att-title[data-v-f4b6799c]{margin-bottom:var(--space-3);font-size:var(--text-base);font-weight:var(--weight-medium)}.att-list[data-v-f4b6799c]{display:grid;gap:var(--space-2);list-style:none}.att-row[data-v-f4b6799c]{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--surface)}.att-who[data-v-f4b6799c]{display:grid;min-width:0;line-height:1.3}.att-who b[data-v-f4b6799c]{font-weight:var(--weight-medium)}.att-who small[data-v-f4b6799c]{overflow:hidden;color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap}.att-amt[data-v-f4b6799c]{font-weight:var(--weight-medium);text-align:right}.att-amt small[data-v-f4b6799c]{display:block;color:var(--text-muted);font-size:var(--text-sm);font-weight:var(--weight-regular)}.att-more[data-v-f4b6799c]{margin-top:var(--space-3);color:var(--text-muted);font-size:var(--text-sm)}.att-empty[data-v-f4b6799c]{padding:var(--space-4);border-radius:var(--radius-md);background:var(--surface);color:var(--text-muted)}.home-kpis[data-v-f4b6799c]{margin-top:var(--space-8)}.wf[data-v-f4b6799c]{list-style:none}.wf-row[data-v-f4b6799c]{display:grid;grid-template-columns:minmax(150px,240px) minmax(0,1fr) minmax(130px,auto);align-items:center;gap:var(--space-6);padding:var(--space-4) 0;border-bottom:1px solid var(--border)}.wf-label[data-v-f4b6799c]{display:grid;line-height:1.3}.wf-name[data-v-f4b6799c]{font-weight:var(--weight-medium)}.wf-row.is-total .wf-name[data-v-f4b6799c]{font-weight:var(--weight-semibold)}.wf-label small[data-v-f4b6799c]{color:var(--text-muted);font-size:var(--text-sm)}.wf-track[data-v-f4b6799c]{position:relative;height:12px;border-radius:var(--radius-pill);background:var(--surface-2)}.wf-bar[data-v-f4b6799c]{position:absolute;top:0;bottom:0;border-radius:var(--radius-pill);transition:left var(--dur) var(--ease),width var(--dur) var(--ease)}.wf-amt[data-v-f4b6799c]{font-weight:var(--weight-medium);text-align:right;white-space:nowrap}.wf-amt.neg[data-v-f4b6799c]{color:var(--danger)}.wf-row.is-final .wf-amt[data-v-f4b6799c]{font-size:var(--text-lg);font-weight:var(--weight-semibold)}.wf-input[data-v-f4b6799c]{display:inline-flex;align-items:center;gap:var(--space-2)}.interest-input[data-v-f4b6799c]{width:150px;min-height:40px;text-align:right}.cash-note[data-v-f4b6799c]{max-width:62ch;margin-top:var(--space-4);color:var(--text-muted);font-size:var(--text-sm)}@media (max-width:900px){.rent-hero[data-v-f4b6799c]{padding:var(--space-5)}.fig[data-v-f4b6799c]{justify-items:start;text-align:left}.seg[data-v-f4b6799c]{--seg-min:36px}.att-row[data-v-f4b6799c]{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-3)}.att-who[data-v-f4b6799c]{flex:1 1 0}.att-amt[data-v-f4b6799c]{display:flex;flex:0 0 100%;flex-wrap:wrap;align-items:baseline;gap:var(--space-1) var(--space-3);text-align:left}.att-amt small[data-v-f4b6799c]{display:inline}.home-kpis[data-v-f4b6799c]{margin-top:var(--space-7)}.wf-row[data-v-f4b6799c]{grid-template-columns:minmax(0,1fr) auto;gap:var(--space-2) var(--space-4)}.wf-track[data-v-f4b6799c]{grid-column:1/-1;grid-row:2}}@font-face{font-family:Figtree Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/fonts/figtree-latin-ext-wght-normal.76b41198.woff2) format("woff2-variations");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:Figtree Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/fonts/figtree-latin-wght-normal.93af595f.woff2) format("woff2-variations");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}:root{color-scheme:light;--bg:#e6edea;--bg-hover:rgba(251,253,252,.6);--surface:#fbfdfc;--surface-2:#edf4f1;--surface-deep:#0f3f38;--on-deep:#e8f3ef;--on-deep-muted:#a9c9c0;--overlay:rgba(18,32,30,.4);--border:#dce5e1;--border-strong:#b9c9c3;--border-input:#7a8d88;--text:#12201e;--text-muted:#4e625e;--primary:#14574d;--primary-hover:#0f443c;--primary-contrast:#fff;--primary-soft:#d5eadf;--focus-ring:#14574d;--success:#0e4a40;--success-bg:#d5eadf;--warning:#7a520c;--warning-bg:#f3e9d6;--danger:#98301a;--danger-bg:#fbe4dc;--danger-hover:#7c2614;--info:#3a4a6b;--info-bg:#e4eaf4;--accent:#4b3f66;--accent-bg:#e9e4f0;--chart-income:#2f7e6e;--chart-expense:#b85c42;--chart-gross:#14574d;--chart-interest:#5f6f94;--chart-tax:#a06a0a;--chart-net:#0b3b34;--chart-late:#b8432a;--chart-pending:#5f6f94;--font-sans:"Figtree Variable","Segoe UI Variable Text","Segoe UI",system-ui,-apple-system,"Helvetica Neue",Arial,sans-serif;--font-display:var(--font-sans);--text-xs:0.75rem;--text-sm:0.8125rem;--text-base:0.9375rem;--text-md:1.0625rem;--text-lg:1.25rem;--text-xl:1.75rem;--text-2xl:2.25rem;--text-3xl:clamp(2.5rem,5.5vw,3.5rem);--weight-light:300;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--leading-tight:1.1;--leading-snug:1.3;--leading-base:1.5;--tracking-display:-0.025em;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:32px;--space-8:40px;--space-9:56px;--space-10:72px;--radius-sm:8px;--radius-md:12px;--radius-lg:20px;--radius-xl:28px;--radius-pill:999px;--shadow-sm:0 1px 2px rgba(18,32,30,.08);--shadow-md:0 1px 2px rgba(18,32,30,.04),0 18px 40px -16px rgba(18,32,30,.16);--shadow-lg:0 2px 4px rgba(18,32,30,.06),0 16px 32px -8px rgba(18,32,30,.2);--z-sticky:10;--z-dropdown:30;--z-scrim:40;--z-drawer:50;--z-skip-link:100;--z-modal:200;--z-toast:300;--ease:cubic-bezier(0.2,0.7,0.2,1);--dur:220ms;--icon-stroke:1.75;--sidebar-w:264px;--page-max:1280px;--canvas-pad-x:clamp(24px,4.2vw,64px);--tap-min:44px;--chevron-down:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%234E625E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");--primary-color:var(--primary);--secondary-color:var(--surface-deep);--success-color:var(--success);--warning-color:var(--warning);--danger-color:var(--danger);--light-color:var(--surface-2);--dark-color:var(--text)}*,:after,:before{box-sizing:border-box}*{margin:0;padding:0}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;accent-color:var(--primary)}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:var(--text-base);font-weight:var(--weight-regular);line-height:var(--leading-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}[hidden]{display:none!important}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:var(--weight-medium);line-height:var(--leading-snug)}h1{font-size:var(--text-2xl);line-height:var(--leading-tight);letter-spacing:var(--tracking-display)}h2{font-size:var(--text-lg);letter-spacing:-.01em}h3{font-size:var(--text-md)}h4,h5,h6{font-size:var(--text-base)}p{line-height:var(--leading-base)}b,strong{font-weight:var(--weight-semibold)}small{font-size:var(--text-sm)}a{color:var(--primary);text-underline-offset:3px}a:hover{color:var(--primary-hover)}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}::-moz-placeholder{color:var(--text-muted);opacity:1}::placeholder{color:var(--text-muted);opacity:1}img,svg,video{max-width:100%}table{border-collapse:collapse}hr{border:0;border-top:1px solid var(--border)}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}[tabindex="-1"]:focus{outline:none}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}.skip-link{position:absolute;left:var(--space-3);top:-64px;z-index:var(--z-skip-link);padding:10px var(--space-4);background:var(--primary);border-radius:var(--radius-pill);font-weight:var(--weight-medium);text-decoration:none}.skip-link,.skip-link:hover{color:var(--primary-contrast)}.skip-link:focus{top:var(--space-3)}::-moz-selection{background:var(--primary-soft);color:var(--text)}::selection{background:var(--primary-soft);color:var(--text)}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media print{:root{--text:#000;--text-muted:#333;--border:#bbb;--border-strong:#888;--surface:#fff;--surface-2:#fff;--success:#000;--success-bg:#fff;--warning:#000;--warning-bg:#fff;--danger:#000;--danger-bg:#fff;--info:#000;--info-bg:#fff;--primary:#000;--primary-soft:#fff;--accent:#000;--accent-bg:#fff}html{color-scheme:light}body{background:#fff;color:#000;-webkit-print-color-adjust:exact;print-color-adjust:exact}.skip-link{display:none!important}}.page{width:100%;max-width:var(--page-max);margin-inline:auto}.page-header{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--space-5);margin-bottom:var(--space-8)}.page-title{font-size:var(--text-2xl);font-weight:var(--weight-medium);letter-spacing:var(--tracking-display);line-height:var(--leading-tight)}.page-subtitle{margin-top:var(--space-2);color:var(--text-muted)}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3)}.section{margin-top:var(--space-9)}.section-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-4)}.section-title{font-size:var(--text-lg);letter-spacing:-.01em}.btn,.section-title{font-weight:var(--weight-medium)}.btn{--icon-size:18px;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--tap-min);padding:0 var(--space-5);border:1px solid transparent;border-radius:var(--radius-pill);background:transparent;color:var(--text);font-family:inherit;font-size:var(--text-base);line-height:1.2;white-space:nowrap;cursor:pointer;transition:background var(--dur) var(--ease),border-color var(--dur) var(--ease),color var(--dur) var(--ease)}.btn,.btn:hover{text-decoration:none}.btn:disabled,.btn[aria-disabled=true]{opacity:.55;cursor:not-allowed}.btn[aria-disabled=true]{pointer-events:none}.btn-primary,.btn-success{background:var(--primary);color:var(--primary-contrast)}.btn-primary:hover,.btn-success:hover{background:var(--primary-hover);color:var(--primary-contrast)}.btn-ghost,.btn-outline,.btn-secondary{background:transparent;border-color:var(--border-strong);color:var(--text)}.btn-ghost:hover,.btn-outline:hover,.btn-secondary:hover{background:var(--surface-2);color:var(--text)}.btn-danger{background:var(--danger);color:var(--primary-contrast)}.btn-danger:hover{background:var(--danger-hover);color:var(--primary-contrast)}.btn.btn-danger-quiet{color:var(--danger)}.btn.btn-danger-quiet:focus-visible,.btn.btn-danger-quiet:hover{border-color:var(--danger);background:var(--danger-bg);color:var(--danger)}.btn-warning,.btn-warning:hover{background:var(--warning);color:var(--primary-contrast)}.btn-warning:hover{filter:brightness(.9)}.btn-info,.btn-info:hover{background:var(--info);color:var(--primary-contrast)}.btn-info:hover{filter:brightness(.9)}.btn-link{min-height:36px;padding:0 var(--space-2);background:none;color:var(--primary);text-decoration:underline;text-underline-offset:3px}.btn-link:hover{background:none;color:var(--primary-hover);text-decoration:underline}.btn-sm,.btn-small{--icon-size:16px;min-height:36px;padding:0 var(--space-4);font-size:var(--text-sm)}.btn-lg{--icon-size:20px;min-height:52px;padding:0 var(--space-6);font-size:var(--text-md)}.btn-block{display:flex;width:100%}.btn-icon{width:var(--tap-min);padding:0}.btn-icon.btn-sm,.btn-icon.btn-small{width:36px}.btn-close,.close-btn{--icon-size:20px;display:inline-grid;place-items:center;flex:none;width:40px;height:40px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--text-muted);font-size:1.5rem;line-height:1;cursor:pointer;transition:background var(--dur) var(--ease),color var(--dur) var(--ease)}.btn-close:hover,.close-btn:hover{background:var(--surface-2);color:var(--text)}@media (max-width:900px),(pointer:coarse){.btn-danger-quiet,.btn-link,.btn-sm,.btn-small{min-height:var(--tap-min)}.btn-icon.btn-danger-quiet,.btn-icon.btn-sm,.btn-icon.btn-small{width:var(--tap-min)}.btn-close,.close-btn{width:var(--tap-min);height:var(--tap-min)}}.form-group{display:flex;flex-direction:column;gap:6px;margin-bottom:var(--space-5)}.form-group:last-child{margin-bottom:0}.form-label,:where(.form-group)>label{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--text-muted)}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-4) var(--space-5);margin-bottom:var(--space-5)}.form-row:last-child{margin-bottom:0}:where(.form-row)>.form-group{margin-bottom:0}.form-control{display:block;width:100%;min-height:var(--tap-min);padding:0 var(--space-4);background:var(--surface);color:var(--text);border:1px solid var(--border-input);border-radius:var(--radius-md);font-family:inherit;font-size:var(--text-base);line-height:var(--leading-base);transition:border-color var(--dur) var(--ease),background var(--dur) var(--ease)}.form-control:hover{border-color:var(--text-muted)}.form-control:focus-visible{outline-offset:1px;border-color:var(--primary)}.form-control:disabled,.form-control[readonly]{background:var(--surface-2);color:var(--text-muted);cursor:not-allowed}.form-control[readonly]{cursor:default}textarea.form-control{min-height:96px;padding:var(--space-3) var(--space-4);resize:vertical}select.form-control{-moz-appearance:none;appearance:none;-webkit-appearance:none;padding-right:44px;background-image:var(--chevron-down);background-repeat:no-repeat;background-position:right 14px center;background-size:18px;cursor:pointer}.form-control.is-invalid,.form-control[aria-invalid=true]{border-color:var(--danger)}.form-hint,.form-text{color:var(--text-muted);font-size:var(--text-sm)}.field-error,.form-error{color:var(--danger);font-size:var(--text-sm)}.form-section{margin-bottom:var(--space-6)}.form-fieldset{min-width:0;margin:0 0 var(--space-7);padding:0;border:0}.form-fieldset:last-child{margin-bottom:0}.form-fieldset>legend{margin-bottom:var(--space-4);padding:0;font-size:var(--text-md);font-weight:var(--weight-medium)}.form-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--space-3);margin-top:var(--space-6)}.check{display:inline-flex;align-items:center;gap:var(--space-2);min-height:var(--tap-min);color:var(--text);font-size:var(--text-base);font-weight:var(--weight-regular);cursor:pointer}:where(.check) input{width:18px;height:18px;flex:none}.input-icon{position:relative}.input-icon>.base-icon{--icon-size:18px;position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none}.input-icon>.form-control{padding-left:42px}.input-group{display:flex;gap:var(--space-2)}.input-group>.form-control{flex:1 1 auto;min-width:0}.pills{display:inline-flex;flex-wrap:wrap;gap:var(--space-2)}.pill{min-height:var(--tap-min);padding:0 var(--space-4);border:1px solid var(--border-strong);border-radius:var(--radius-pill);background:transparent;color:var(--text);font-weight:var(--weight-medium);cursor:pointer;transition:background var(--dur) var(--ease),border-color var(--dur) var(--ease)}.pill:hover{background:var(--surface-2)}.pill.is-active,.pill[aria-pressed=true]{background:var(--primary);border-color:var(--primary);color:var(--primary-contrast)}.filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));align-items:end;gap:var(--space-4);margin-bottom:var(--space-5)}.filters>.form-group{margin-bottom:0}.summary-line{margin-bottom:var(--space-4);color:var(--text-muted)}.summary-line b{color:var(--text);font-weight:var(--weight-medium)}.card{padding:var(--space-6);background:var(--surface-2);border-radius:var(--radius-lg)}.card-outlined{background:var(--surface);border:1px solid var(--border)}.card-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-4)}.card-title{font-size:var(--text-md);font-weight:var(--weight-medium)}.card-footer{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-5)}.badge,.role-badge,.status-badge{--icon-size:15px;display:inline-flex;align-items:center;gap:6px;padding:3px 11px;border-radius:var(--radius-pill);background:var(--surface-2);color:var(--text-muted);font-size:var(--text-sm);font-weight:var(--weight-medium);line-height:1.4;white-space:nowrap}:where(.badge,.status-badge,.role-badge)>.base-icon:first-child{margin-left:-3px}.badge-paid,.badge-success,.status-active{background:var(--success-bg);color:var(--success)}.badge-warning{background:var(--warning-bg);color:var(--warning)}.badge-danger,.badge-error,.badge-late{background:var(--danger-bg);color:var(--danger)}.badge-info,.badge-pending{background:var(--info-bg);color:var(--info)}.badge-admin,.badge-primary,.role-admin{background:var(--primary-soft);color:var(--primary)}.badge-owner,.role-owner{background:var(--info-bg);color:var(--info)}.badge-neutral,.badge-viewer,.role-viewer,.status-inactive{background:var(--surface-2);color:var(--text-muted)}.avatar{display:inline-grid;place-items:center;flex:none;width:36px;height:36px;border-radius:50%;background:var(--primary-soft);color:var(--success);font-size:var(--text-sm);font-weight:var(--weight-semibold);line-height:1;text-decoration:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.avatar-sm{width:28px;height:28px;font-size:var(--text-xs)}.avatar-lg{width:48px;height:48px;font-size:var(--text-base)}.avatar-tone-1{background:var(--info-bg);color:var(--info)}.avatar-tone-2{background:var(--warning-bg);color:var(--warning)}.avatar-tone-3{background:var(--accent-bg);color:var(--accent)}.kpi-list{display:grid;grid-template-columns:repeat(var(--kpi-cols,4),minmax(0,1fr));row-gap:var(--space-6)}.kpi{padding:0 var(--space-6);border-left:1px solid var(--border)}.kpi:first-child{padding-left:0;border-left:0}.kpi-label{color:var(--text-muted);font-size:var(--text-sm)}.kpi-value{font-size:var(--text-xl);font-weight:var(--weight-light);letter-spacing:-.02em;line-height:1.2;font-variant-numeric:tabular-nums}.kpi-note,.kpi-value{margin:var(--space-1) 0 0}.kpi-note{color:var(--text-muted);font-size:var(--text-sm)}.kpi-success .kpi-value{color:var(--success)}.kpi-warning .kpi-value{color:var(--warning)}.kpi-danger .kpi-value{color:var(--danger)}.meter{height:4px;margin-top:var(--space-3);background:var(--border);overflow:hidden}.meter,.meter>i{border-radius:2px}.meter>i{display:block;height:100%;background:var(--primary)}@media (max-width:1100px){.kpi-list{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi:nth-child(odd){padding-left:0;border-left:0}}@media (max-width:480px){.kpi{padding-left:var(--space-4)}.kpi:nth-child(odd){padding-left:0}}.table-wrap{position:relative;overflow-x:auto}.table{width:100%;border-collapse:collapse}.table th{padding:var(--space-3);border-bottom:1px solid var(--border-strong);color:var(--text-muted);font-size:var(--text-sm);font-weight:var(--weight-medium);text-align:left;white-space:nowrap}.table td{padding:var(--space-4) var(--space-3);border-bottom:1px solid var(--border);vertical-align:middle}.table tbody tr:hover td{background:var(--surface-2)}.table-compact td{padding:var(--space-2) var(--space-3);font-size:var(--text-sm)}.table .r,.table .text-right{text-align:right}.cell-who{display:flex;align-items:center;gap:var(--space-3);min-width:0}.cell-who>span{display:grid;min-width:0;line-height:var(--leading-snug)}.cell-who b{font-weight:var(--weight-medium)}.cell-who small,.table small{color:var(--text-muted);font-size:var(--text-sm)}@media (max-width:900px){.table-stack thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.table-stack,.table-stack tbody{display:block}.table-stack tr{display:block;padding:var(--space-4) 0;border-bottom:1px solid var(--border)}.table-stack td{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-4);padding:var(--space-1) 0;border:0;text-align:right}.table-stack tbody tr:hover td{background:transparent}.table-stack td[data-label]:before{content:attr(data-label);flex:none;color:var(--text-muted);font-size:var(--text-sm);text-align:left}.table-stack td.cell-primary{display:block;padding-bottom:var(--space-2);text-align:left}.table-stack td.cell-actions{justify-content:flex-start;padding-top:var(--space-3)}}@media screen and (max-width:1279px){.table-stack-md>thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.table-stack-md,.table-stack-md>tbody{display:block}.table-stack-md>tbody>tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));-moz-column-gap:var(--space-8);column-gap:var(--space-8);padding:var(--space-4) 0;border-bottom:1px solid var(--border)}.table-stack-md>tbody>tr>td{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-4);padding:var(--space-1) 0;border:0;text-align:right}.table-stack-md>tbody>tr:hover>td{background:transparent}.table-stack-md>tbody>tr>td[data-label]:before{content:attr(data-label);flex:none;color:var(--text-muted);font-size:var(--text-sm);text-align:left}.table-stack-md>tbody>tr>td.cell-actions,.table-stack-md>tbody>tr>td.cell-primary{grid-column:1/-1}.table-stack-md>tbody>tr>td.cell-primary{display:block;padding-bottom:var(--space-2);text-align:left}.table-stack-md>tbody>tr>td.cell-actions{justify-content:flex-start;padding-top:var(--space-3);text-align:left}}@media screen and (max-width:700px){.table-stack-md>tbody>tr{grid-template-columns:minmax(0,1fr)}}@media screen and (max-width:1359px){.table-stack-lg>thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.table-stack-lg,.table-stack-lg>tbody{display:block}.table-stack-lg>tbody>tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));-moz-column-gap:var(--space-8);column-gap:var(--space-8);padding:var(--space-4) 0;border-bottom:1px solid var(--border)}.table-stack-lg>tbody>tr>td{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-4);padding:var(--space-1) 0;border:0;text-align:right}.table-stack-lg>tbody>tr:hover>td{background:transparent}.table-stack-lg>tbody>tr>td[data-label]:before{content:attr(data-label);flex:none;color:var(--text-muted);font-size:var(--text-sm);text-align:left}.table-stack-lg>tbody>tr>td.cell-actions,.table-stack-lg>tbody>tr>td.cell-primary{grid-column:1/-1}.table-stack-lg>tbody>tr>td.cell-primary{display:block;padding-bottom:var(--space-2);text-align:left}.table-stack-lg>tbody>tr>td.cell-actions{justify-content:flex-start;padding-top:var(--space-3);text-align:left}}@media screen and (max-width:700px){.table-stack-lg>tbody>tr{grid-template-columns:minmax(0,1fr)}}.modal-overlay{position:fixed;inset:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--overlay);overflow-y:auto}.modal,.modal-content{display:flex;flex-direction:column;width:100%;max-width:600px;max-height:calc(100vh - var(--space-4)*2);max-height:calc(100dvh - var(--space-4)*2);background:var(--surface);color:var(--text);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);overflow:hidden}.modal-sm{max-width:440px}.modal-md{max-width:600px}.modal-large,.modal-lg{max-width:880px}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);flex:none;padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--border)}.modal-title{font-size:var(--text-lg);font-weight:var(--weight-medium);letter-spacing:-.01em;overflow-wrap:anywhere}.modal-body{flex:1 1 auto;min-height:0;padding:var(--space-6);overflow-y:auto;overscroll-behavior:contain}.modal-footer{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--space-3);flex:none;padding:var(--space-4) var(--space-6);border-top:1px solid var(--border);background:var(--surface)}@media (max-width:600px){.modal-overlay{align-items:flex-end;padding:0}.modal,.modal-content{max-width:none;max-height:calc(100vh - var(--space-6));max-height:calc(100dvh - var(--space-6));border-radius:var(--radius-lg) var(--radius-lg) 0 0}.modal-header{padding:var(--space-4) var(--space-5)}.modal-body{padding:var(--space-5)}.modal-footer{padding:var(--space-4) var(--space-5);padding-bottom:calc(var(--space-4) + env(safe-area-inset-bottom, 0px))}.modal-footer>.btn{flex:1 1 auto}}.spinner{width:40px;height:40px;margin:var(--space-5) auto;border:4px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:ui-spin .9s linear infinite}.spinner-sm{display:inline-block;width:18px;height:18px;margin:0;border-width:2px;vertical-align:middle}.loading{padding:var(--space-9) var(--space-5);color:var(--text-muted);text-align:center}@keyframes ui-spin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.spinner{animation-duration:2s!important;animation-iteration-count:infinite!important}}.alert,.error-message,.success-message{--icon-size:20px;display:flex;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-4);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--info-bg);color:var(--info);font-size:var(--text-base)}:where(.alert,.error-message,.success-message)>.base-icon{margin-top:1px}.alert-success,.success-message{background:var(--success-bg);color:var(--success)}.alert-danger,.alert-error,.error-message{background:var(--danger-bg);color:var(--danger)}.alert-warning{background:var(--warning-bg);color:var(--warning)}.alert-info{background:var(--info-bg);color:var(--info)}.tabs{display:inline-flex;flex-wrap:wrap;max-width:100%;padding:4px;background:var(--surface-2);border-radius:calc(var(--radius-lg) + 4px)}.tab,.tab-btn{--icon-size:18px;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);flex:1 1 auto;min-height:40px;padding:0 var(--space-5);border:0;border-radius:var(--radius-pill);background:transparent;color:var(--text-muted);font-weight:var(--weight-medium);white-space:nowrap;cursor:pointer;transition:background var(--dur) var(--ease),color var(--dur) var(--ease)}.tab-btn:hover,.tab:hover{color:var(--text)}.tab-btn.active,.tab.active,.tab.is-active,.tab[aria-selected=true]{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}@media (max-width:900px),(pointer:coarse){.tab,.tab-btn{min-height:var(--tap-min)}}@media (max-width:480px){.tabs{display:flex;width:100%}.tab,.tab-btn{padding:0 var(--space-3)}}.empty-state{padding:var(--space-9) var(--space-5);color:var(--text-muted);text-align:center}.empty-state-icon{--icon-size:36px;margin:0 auto var(--space-3);color:var(--text-muted)}.empty-state-title{display:block;margin-bottom:var(--space-1);color:var(--text);font-size:var(--text-md);font-weight:var(--weight-medium)}.empty-state-text{display:block}.empty-state .btn{margin-top:var(--space-5)}.empty-state>.btn{display:flex;width:-moz-fit-content;width:fit-content;margin-inline:auto}@media (max-width:900px){.page-header{margin-bottom:var(--space-6)}.page-title{font-size:2rem}.card{padding:var(--space-5)}.section{margin-top:var(--space-8)}}@media (max-width:480px){.form-actions>.btn,.page-header>.actions>.btn{flex:1 1 auto}}.container{max-width:1200px;margin:0 auto;padding:0 20px}.text-center{text-align:center}.text-right{text-align:right}.text-muted{color:var(--text-muted)}.text-primary{color:var(--primary)!important}.text-success{color:var(--success)!important}.text-warning{color:var(--warning)!important}.text-danger{color:var(--danger)!important}.num{font-variant-numeric:tabular-nums}.list-reset{list-style:none}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:1rem}.mt-4{margin-top:1.5rem}.mt-5{margin-top:3rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:1rem}.mb-4{margin-bottom:1.5rem}.mb-5{margin-bottom:3rem}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:1rem}.p-4{padding:1.5rem}.p-5{padding:3rem}