.projekt-page{min-height:calc(100vh - 140px)}.projekt-page .intro{background:var(--white);border-radius:10px;box-shadow:0 2px 10px var(--shadow);padding:1rem;margin:1rem 0 1.5rem;color:var(--text-muted)}.projekt-page .intro h2{margin-top:0;color:var(--text-dark)}.projekt-page .kpi-section{background:var(--white);border-radius:10px;box-shadow:0 2px 10px var(--shadow);padding:1rem;margin:1.5rem 0}.projekt-page .kpi-section h2{color:var(--primary-green);margin:0 0 1rem}.projekt-page .kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.projekt-page .kpi-card{background:var(--background-light);border-radius:8px;padding:.75rem;border:1px solid var(--border-light)}.projekt-page .kpi-card h3{margin:0 0 .4rem;font-size:.95rem;color:var(--text-dark)}.projekt-page .kpi-card .kpi-value{font-weight:700;color:var(--primary-green);margin:0 0 .25rem}.projekt-page .kpi-card .kpi-note{margin:0;font-size:.85rem;color:var(--text-muted)}.projekt-page .chart-section{background:var(--white);border-radius:10px;box-shadow:0 2px 10px var(--shadow);padding:1rem;margin:1.5rem 0}.projekt-page .chart-section h2{color:var(--primary-green);margin:0 0 .75rem}.projekt-page .chart-explainer{color:var(--text-muted);margin-bottom:.75rem}.projekt-page .chart-bars{display:flex;flex-direction:column;gap:1rem}.projekt-page .chart-row-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.25rem}.projekt-page .chart-row-header span{font-size:.9rem}.projekt-page .chart-row-value{font-weight:600;color:var(--primary-green)}.projekt-page .bar-track{position:relative;width:100%;height:16px;border-radius:999px;background:var(--background-light);overflow:hidden;border:1px solid var(--border-light)}.projekt-page .bar-fill{height:100%;background:linear-gradient(90deg,var(--primary-green),#0f9d58);border-radius:inherit}.projekt-page .bar-track.dual{background:linear-gradient(90deg,#0f9d581a,#0f9d581a)}.projekt-page .bar-base{position:absolute;inset:0;background:#0000000a}.projekt-page .bar-current{position:relative;height:100%;background:#0f9d5899;border-radius:inherit}.projekt-page .bar-legend{display:flex;justify-content:space-between;font-size:.8rem;color:var(--text-muted);margin-top:.15rem}.projekt-page .table-section{background:var(--white);border-radius:10px;box-shadow:0 2px 10px var(--shadow);padding:1rem}.projekt-page .table-section h2{color:var(--primary-green);margin:0 0 .75rem}.projekt-page .table-wrapper{overflow-x:auto}.projekt-page .table{width:100%;border-collapse:collapse}.projekt-page .table th,.projekt-page .table td{padding:.6rem .5rem}.projekt-page .table thead th{position:sticky;top:0;background:var(--background-light);color:var(--text-dark);text-align:left}.projekt-page .table tbody tr.even{background:#fff}.projekt-page .table tbody tr.odd{background:#fafafa}.projekt-page .table td.right,.projekt-page .table th.right{text-align:right}.projekt-page .note{color:var(--text-muted);font-size:.85rem;margin-top:.5rem}.projekt-page .timeline-chart{margin-top:1.25rem}.projekt-page .timeline-chart-inner{position:relative;width:100%}.projekt-page .chart-tooltip{position:absolute;transform:translateY(-100%);background:#fff;border-radius:8px;box-shadow:0 6px 18px #0000001f;padding:.6rem .8rem;font-size:.9rem;color:var(--text-dark);pointer-events:none;min-width:210px}.projekt-page .chart-tooltip .tt-title{font-weight:700;margin-bottom:.25rem}.projekt-page .chart-tooltip .tt-row{color:var(--text-muted);display:flex;align-items:center;gap:.35rem}.projekt-page .chart-tooltip .tt-row strong{color:var(--text-dark)}.projekt-page .chart-tooltip .dot{width:10px;height:10px;border-radius:50%;display:inline-block}.projekt-page .chart-tooltip .dot.debt{background:#e74c3c}.projekt-page .chart-tooltip .dot.total{background:#0f9d58}.projekt-page .timeline-chart-svg{width:100%;height:auto;display:block}.projekt-page .timeline-line{stroke-width:.9;fill:none}.projekt-page .timeline-line-debt{stroke:#e74c3c}.projekt-page .timeline-line-portfolio{stroke:#0f9d58}.projekt-page .timeline-line-hist{stroke-dasharray:none}.projekt-page .timeline-line-future{stroke-dasharray:3 3}.projekt-page .timeline-hover-line{stroke:#00000040;stroke-width:.6;stroke-dasharray:3 3}.projekt-page .timeline-axis-line{stroke:#00000026;stroke-width:.8}.projekt-page .timeline-axis-label,.projekt-page .timeline-axis-y-label{font-size:18px;fill:var(--text-dark);font-weight:500}.projekt-page .timeline-legend{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:.5rem;font-size:.8rem;color:var(--text-muted)}.projekt-page .timeline-legend .legend-item{display:inline-flex;align-items:center;gap:.25rem}.projekt-page .timeline-legend .legend-swatch{width:10px;height:10px;border-radius:2px;display:inline-block}.projekt-page .timeline-legend .legend-debt{background:#e74c3c}.projekt-page .timeline-legend .legend-portfolio{background:#0f9d58}.projekt-page .income-chart{margin-top:.75rem}.projekt-page .income-chart-inner{border-radius:8px;background:var(--background-light);border:1px solid var(--border-light);padding:.5rem;overflow:hidden}.projekt-page .income-chart-svg{width:100%;height:auto;display:block}.projekt-page .timeline-grid-line{stroke:var(--border-light);stroke-width:.8;stroke-dasharray:4 4}.projekt-page .timeline-grid-line.vertical{stroke-opacity:.8}.projekt-page .income-bar{stroke-width:0}.projekt-page .income-bar-dividend{fill:#0f9d58e6}.projekt-page .income-bar-p2p{fill:#4285f4e6}.projekt-page .income-line-credit{stroke:#e74c3c;stroke-width:1.4;stroke-dasharray:4 4}.projekt-page .income-line-avg{fill:none;stroke-width:1.6;stroke-dasharray:5 3}.projekt-page .income-bar-label,.projekt-page .income-bar-percent{font-size:.75rem;fill:var(--text-dark);font-weight:600}.projekt-page .income-view-toggle{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem;margin:.5rem 0 .75rem}.projekt-page .income-view-toggle .toggle-label{font-size:.85rem;color:var(--text-muted)}.projekt-page .income-view-toggle .toggle-buttons{display:flex;flex-wrap:wrap;gap:.4rem}.projekt-page .income-view-toggle .toggle-button{border-radius:999px;border:1px solid var(--border-light);background:var(--background-light);padding:.25rem .6rem;font-size:.8rem;cursor:pointer;color:var(--text-muted)}.projekt-page .income-view-toggle .toggle-button.active{background:var(--primary-green);border-color:var(--primary-green);color:#fff}@media(max-width:600px){.projekt-page .income-view-toggle{flex-direction:column;align-items:flex-start}.projekt-page .income-view-toggle .toggle-buttons{width:100%}.projekt-page .income-view-toggle .toggle-button{flex:1 1 calc(50% - .2rem);text-align:center}}.projekt-page .income-chart-bars{margin-top:.25rem;display:flex;flex-wrap:wrap;gap:.5rem;justify-content:space-between}.projekt-page .income-chart-column{flex:1 1 auto;min-width:40px;max-width:80px;display:flex;flex-direction:column;align-items:center}.projekt-page .income-chart-label{margin-top:.1rem;font-size:.75rem;color:var(--text-muted);text-align:center}.projekt-page .income-chart-value{margin-top:.05rem;font-size:.75rem;color:var(--text-dark);font-weight:600;text-align:center}.projekt-page .income-chart-legend{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:.5rem;font-size:.8rem;color:var(--text-muted)}.projekt-page .income-chart-legend .legend-item{display:inline-flex;align-items:center;gap:.25rem}.projekt-page .income-chart-legend .legend-swatch{width:10px;height:10px;border-radius:2px;display:inline-block}.projekt-page .income-chart-legend .legend-dividend{background:#0f9d58e6}.projekt-page .income-chart-legend .legend-p2p{background:#4285f4e6}.projekt-page .income-chart-legend .legend-line-swatch{width:22px;height:0;border-top:2px solid var(--border-light)}.projekt-page .income-chart-legend .legend-creditrate{border-color:#e74c3c;border-style:dashed}.projekt-page .income-chart-legend .legend-average{border-style:solid}
