@font-face{font-family:Familjen Grotesk;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/familjen-grotesk-400-normal.woff2) format("woff2")}@font-face{font-family:Familjen Grotesk;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/familjen-grotesk-500-normal.woff2) format("woff2")}@font-face{font-family:Familjen Grotesk;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/familjen-grotesk-600-normal.woff2) format("woff2")}@font-face{font-family:Familjen Grotesk;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/familjen-grotesk-700-normal.woff2) format("woff2")}@font-face{font-family:Familjen Grotesk;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/familjen-grotesk-400-italic.woff2) format("woff2")}:root{--pv-umbra: #26211e;--pv-klinker: #a8512e;--pv-klinker-hover: #944626;--pv-klinker-soft: #f3e4dc;--pv-taupe: #75706b;--pv-stein: #b8b2aa;--pv-putz: #eeedeb;--pv-kalk: #fbfaf9;--pv-weiss: #ffffff;--pv-grau-100: #f5f4f2;--pv-grau-200: #e9e7e3;--pv-grau-300: #dedbd6;--pv-grau-400: #b8b2aa;--pv-grau-500: #908a83;--pv-grau-600: #75706b;--pv-grau-700: #55504c;--pv-grau-800: #38332f;--pv-grau-900: #26211e;--pv-positiv: #2e7d54;--pv-positiv-soft: #e2efe7;--pv-negativ: #b3422e;--pv-negativ-soft: #f6e3de;--pv-warnung: #9a6b1f;--pv-warnung-soft: #f4ead7;--pv-info: #4a6276;--pv-info-soft: #e4eaef;--pv-daten-1: #a8512e;--pv-daten-2: #5c564f;--pv-daten-3: #9c948a;--pv-daten-4: #d6d0c8;--pv-daten-5: #c9784f;--pv-daten-6: #837c74;--surface-page: var(--pv-putz);--surface-card: var(--pv-kalk);--surface-raised: var(--pv-weiss);--surface-inset: var(--pv-grau-100);--surface-accent-soft: var(--pv-klinker-soft);--text-strong: var(--pv-umbra);--text-body: var(--pv-umbra);--text-muted: var(--pv-taupe);--text-faint: var(--pv-grau-500);--text-on-accent: #fbfaf9;--text-accent: var(--pv-klinker);--text-positive: var(--pv-positiv);--text-negative: var(--pv-negativ);--border-default: var(--pv-grau-300);--border-subtle: var(--pv-grau-200);--border-strong: var(--pv-umbra);--border-focus: var(--pv-klinker);--accent: var(--pv-klinker);--accent-hover: var(--pv-klinker-hover);--accent-soft: var(--pv-klinker-soft)}[data-theme=dark]{--pv-putz: #1c1916;--pv-kalk: #262220;--pv-weiss: #2e2a27;--pv-klinker: #c9794f;--pv-klinker-hover: #d78b62;--pv-klinker-soft: #3c2c22;--pv-grau-100: #2e2a27;--pv-grau-200: #3a3531;--pv-grau-300: #474139;--pv-grau-400: #5c564f;--pv-grau-500: #8b847c;--pv-grau-600: #a39c93;--pv-grau-700: #c4bdb4;--pv-grau-800: #e0dbd4;--pv-grau-900: #f0ece7;--pv-positiv: #6fb78f;--pv-positiv-soft: #243329;--pv-negativ: #d77b62;--pv-negativ-soft: #3a2722;--pv-warnung: #c99b4f;--pv-warnung-soft: #36301f;--pv-info: #8aa5b8;--pv-info-soft: #252e35;--pv-daten-1: #c9794f;--pv-daten-2: #a39c93;--pv-daten-3: #6e675f;--pv-daten-4: #474139;--pv-daten-5: #d9a07c;--pv-daten-6: #8b847c;--surface-page: var(--pv-putz);--surface-card: var(--pv-kalk);--surface-raised: var(--pv-weiss);--surface-inset: #211d1b;--surface-accent-soft: var(--pv-klinker-soft);--text-strong: var(--pv-grau-900);--text-body: var(--pv-grau-800);--text-muted: var(--pv-grau-600);--text-faint: var(--pv-grau-500);--text-on-accent: #1c1916;--text-accent: var(--pv-klinker);--text-positive: var(--pv-positiv);--text-negative: var(--pv-negativ);--border-default: var(--pv-grau-300);--border-subtle: var(--pv-grau-200);--border-strong: var(--pv-grau-800);--border-focus: var(--pv-klinker);--accent: var(--pv-klinker);--accent-hover: var(--pv-klinker-hover);--accent-soft: var(--pv-klinker-soft)}:root{--font-sans: "Familjen Grotesk", "Segoe UI", system-ui, sans-serif;--text-xs: 11.5px;--text-sm: 13px;--text-base: 14px;--text-md: 15.5px;--text-lg: 19px;--text-xl: 24px;--text-2xl: 32px;--text-3xl: 44px;--text-4xl: 58px;--weight-regular: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--leading-tight: 1.1;--leading-snug: 1.25;--leading-normal: 1.5;--leading-relaxed: 1.6;--tracking-tight: -.025em;--tracking-snug: -.02em;--tracking-normal: 0;--numeric: tabular-nums}:root{--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--space-20: 80px;--radius-sm: 6px;--radius-md: 9px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 999px;--shadow-none: none;--shadow-float: 0 4px 16px rgba(38, 33, 30, .1), 0 1px 3px rgba(38, 33, 30, .06);--shadow-modal: 0 16px 48px rgba(38, 33, 30, .18), 0 2px 8px rgba(38, 33, 30, .08);--ease-out: cubic-bezier(.2, 0, 0, 1);--duration-fast: .12s;--duration-base: .18s;--duration-slow: .28s;--focus-ring: 0 0 0 2px var(--surface-card), 0 0 0 4px var(--border-focus)}[data-theme=dark]{--shadow-float: 0 4px 16px rgba(0, 0, 0, .4), 0 1px 3px rgba(0, 0, 0, .3);--shadow-modal: 0 16px 48px rgba(0, 0, 0, .55), 0 2px 8px rgba(0, 0, 0, .35)}*{box-sizing:border-box}body{margin:0;font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--text-body);background:var(--surface-page);-webkit-font-smoothing:antialiased}.pv-amount{font-variant-numeric:tabular-nums}::selection{background:var(--accent-soft)}.pv-app{min-height:100vh;display:flex;flex-direction:column;background:var(--surface-page)}.pv-topbar{height:60px;flex-shrink:0;display:flex;align-items:center;gap:var(--space-8);padding:0 var(--space-6);background:var(--surface-card);border-bottom:1px solid var(--border-default)}.pv-topbar__brand{display:inline-flex;align-items:center;height:24px}.pv-topbar__brand svg,.pv-topbar__brand img{height:22px;width:auto}.pv-nav{display:flex;align-items:center;gap:var(--space-5);height:100%}.pv-nav__item{display:inline-flex;align-items:center;gap:var(--space-2);height:100%;padding:0 var(--space-1);font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--text-muted);text-decoration:none;border-bottom:2px solid transparent;transition:color var(--duration-fast) var(--ease-out)}.pv-nav__item:hover{color:var(--text-strong)}.pv-nav__item.is-active{color:var(--text-strong);border-bottom-color:var(--accent)}.pv-topbar__spacer{flex:1}.pv-content{width:100%;max-width:1200px;margin:0 auto;padding:var(--space-8) var(--space-6)}.pv-auth{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-6);padding:var(--space-8) var(--space-4);background:var(--surface-page)}.pv-auth__brand{display:inline-flex;align-items:center;font-size:var(--text-xl);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-tight);color:var(--text-strong)}.pv-auth__brand svg,.pv-auth__brand img{height:26px;width:auto}.pv-textlink{background:none;border:none;padding:0;cursor:pointer;font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--text-accent)}.pv-textlink:hover{text-decoration:underline}.pv-auth__card{width:100%;max-width:400px;background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:var(--space-8);display:flex;flex-direction:column;gap:var(--space-5)}.pv-auth__title{margin:0;font-size:var(--text-xl);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-snug);color:var(--text-strong)}.pv-auth__lead{margin:calc(-1 * var(--space-3)) 0 0;font-size:var(--text-sm);color:var(--text-muted);line-height:var(--leading-relaxed)}.pv-auth__form{display:flex;flex-direction:column;gap:var(--space-4)}.pv-auth__row{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);font-size:var(--text-sm)}.pv-auth__footer{font-size:var(--text-sm);color:var(--text-muted);text-align:center}.pv-link{color:var(--text-accent);text-decoration:none;font-weight:var(--weight-medium)}.pv-link:hover{text-decoration:underline}.pv-page-title{margin:0 0 var(--space-6);font-size:var(--text-xl);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-snug);color:var(--text-strong)}.pv-banner{display:flex;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);font-size:var(--text-sm);line-height:var(--leading-normal)}.pv-banner--error{background:var(--pv-negativ-soft);color:var(--text-negative)}.pv-banner--info{background:var(--pv-info-soft);color:var(--pv-info)}.pv-banner--success{background:var(--pv-positiv-soft);color:var(--text-positive)}
