  .table-responsive {
                overflow: hidden;
                position: relative;
                cursor: grab;
                -webkit-overflow-scrolling: touch;
            }

            /* ========== AUGENFREUNDLICHE FARBGESTALTUNG ========== */
            
            /* KEIN Zebrastreifen - alle Zeilen weiß außer Kernzahlen und spezielle Klassen */
            .table tbody tr td {
                background-color: #ffffff !important;
            }
            
            /* Kernzahlen-Styling: Grauer Hintergrund für wichtige Zeilen */
            .kernzahl-row td {
                background-color: #f8f9fa !important;
                font-weight: 500 !important;
            }
            
            /* Spezielle Klassen haben Vorrang vor generellen td-Regeln */
            .table tbody tr td.table-cebaufinanz {
                background-color: #dceeff !important;
                color:#255C8E !important;
            }

             .table tbody tr td.table-light {
                color:#000000 !important;
            }
            
            .table tbody tr td.table-success {
                background-color: #d4edda !important;
                color: #155724 !important;
            }
            
            .table tbody tr td.table-danger {
                background-color: #f8d7da !important;
                color: #721c24 !important;
            }
            
            /* Sanfte Hover-Effekte - aber nicht für spezielle Klassen */
            .table-hover tbody tr:hover td:not(.table-light):not(.table-success):not(.table-danger):not(.table-cebaufinanz) {
                background-color: #e3f2fd !important;
                transition: background-color 0.15s ease-in-out;
            }
            
            /* Entspannte Header-Farben */
            .table thead th {
                background-color: #f1f3f4 !important;
                color: #495057 !important;
                border-bottom: 2px solid #dee2e6 !important;
            }
            
            /* Erste Spalte hervorheben aber entspannt */
            .table th:first-child,
            .table td:first-child {
                background-color: #f8f9fa !important;
                border-right: 2px solid #e9ecef !important;
            }
            
            /* Sanfte Farben für negative Werte */
            .text-danger {
                color: #dc3545 !important;
            }
            
            /* Break-Even letzte Zeile fett */
            .breakeven-final-row td {
                font-weight: bold !important;
            }
            
            /* Weiche Schatten für Karten */
            .card {
                box-shadow: 0 2px 8px rgba(0,0,0,0.08) !important;
                border: 1px solid #e9ecef !important;
            }

            /* WICHTIG: Input-Felder müssen höheren z-index und pointer-events haben */
            .investment-input {
                pointer-events: auto !important;
                z-index: 10 !important;
                position: relative !important;
                background: white !important;
                width: 100px !important;
                min-width: 100px !important;
                font-size: 0.85rem;
                text-align: right;
                border: 1px solid #ced4da !important;
                transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
            }

            .investment-input:focus {
                z-index: 20 !important;
                position: relative !important;
            }

            /* Drag-Scrolling soll Input-Felder nicht blockieren */
            .table-responsive.dragging .investment-input {
                pointer-events: none;
            }

            .table-responsive:not(.dragging) .investment-input {
                pointer-events: auto !important;
            }

            /* Vertikale Borders zwischen den Jahren */
            .table th:not(:first-child):not(:last-child),
            .table td:not(:first-child):not(:last-child) {
                border-right: 1px solid #dee2e6;
            }

            /* Table Controls Styles - vereinheitlicht */
            .table-controls {
                display: flex;
                justify-content: flex-end;
                gap: 5px;
                padding: 10px 15px;
            }

            .table-scroller {
                border: none;
                background: rgba(0,0,0,0.1);
                color: #255b8e;
                padding: 8px 15px;
                font-size: 1.1rem;
                cursor: pointer;
                transition: all 0.3s;
                min-width: 45px;
                height: 40px;
                display: flex;
                align-items: center;
                justify-content: center;
            }

            .table-scroller:hover {
                color: #fff;
                background: #255b8e;
            }

            .table-scroller.inactive {
                opacity: 0.3;
                cursor: not-allowed;
            }

            /* Collapse Arrow Animation */
            .card-header[data-bs-toggle="collapse"] .fa-chevron-down {
                transition: transform 0.3s ease;
            }
            
            .card-header[data-bs-toggle="collapse"][aria-expanded="true"] .fa-chevron-down,
            .card-header[data-bs-toggle="collapse"].collapsed .fa-chevron-down {
                transform: rotate(180deg);
            }

            /* Fixierte erste Spalte */
            .table th:first-child,
            .table td:first-child {
                position: sticky;
                left: 0;
                z-index: 5;
                background: #fff;
                min-width: 280px !important;
                max-width: 280px !important;
                width: 280px !important;
            }

            /* Andere Zellen haben niedrigeren z-index */
            .table th:not(:first-child),
            .table td:not(:first-child) {
                z-index: 1;
                width: 120px;
                min-width: 120px;
                max-width: 120px;
                white-space: nowrap;
            }

            /* Spezielle Breite für Investment-Input-Felder */
            .investment-input {
                pointer-events: auto !important;
                z-index: 10 !important;
                position: relative !important;
                background: white !important;
                width: 100px !important;
                min-width: 100px !important;
                font-size: 0.85rem;
                text-align: right;
            }

            /* Input-Container haben höchsten z-index */
            .table td .form-control {
                z-index: 4 !important;
                position: relative !important;
                pointer-events: auto !important;
            }

            /* Optimierte Zahlenformatierung */
            .table td.text-end {
                font-size: 1rem;
                text-align: right!important;
            }

            /* Jahr-Header zentriert */
            .table th.text-end {
                text-align: right!important;
                font-weight: 600;
                font-size: 1rem;
            }

            /* Responsive Anpassungen für die Scroll-Kontrollen */
            @media (max-width: 768px) {
                .table-controls {
                    justify-content: center;
                }

                /* Kompaktere Darstellung auf kleinen Bildschirmen */
                .table th:not(:first-child),
                .table td:not(:first-child) {
                    width: 100px;
                    min-width: 100px;
                    max-width: 100px;
                    font-size: 0.8rem;
                }

                .table th:first-child,
                .table td:first-child {
                    min-width: 110px !important;
                    max-width: 110px !important;
                    width: 110px !important;
                }
            }

            @media (max-width: 933px) {
                /* Anpassung der Spaltenbreiten für mittlere Bildschirme */
                .table th:not(:first-child),
                .table td:not(:first-child) {
                    width: 100px;
                    min-width: 100px;
                    max-width: 100px;
                }

                /* Fixierte erste Spalte schmaler */
                .table th:first-child,
                .table td:first-child {
                    min-width: 110px !important;
                    max-width: 110px !important;
                    width: 110px !important;
                }
            }

            /* Hervorhebung wichtiger Zahlen */
            .font-weight-bold {
                font-weight: bold !important;
            }
            
            /* Verbesserte Lesbarkeit der Tabellen */
            .table th, .table td { 
            }

            /* 📋 Standard Bootstrap table-responsive für normale Tabellen ohne spezielle mobile Optimierungen */
            .table-responsive-normal {
                /* Standard Bootstrap Verhalten - kein !important um Konflikte zu vermeiden */
                overflow-x: auto;
                -webkit-overflow-scrolling: touch;
            } 

            /* ✅ KEINE fixierte erste Spalte für normale Tabellen */
            .table-responsive-normal .table th:first-child,
            .table-responsive-normal .table td:first-child {
                position: static !important;
                left: auto !important;
                z-index: auto !important; 
                min-width: auto !important;
                max-width: none !important;
                width: auto !important;
                background: inherit !important;
            }

            /* ✅ Normale Spaltenbreiten für table-responsive-normal */
            .table-responsive-normal .table th:not(:first-child),
            .table-responsive-normal .table td:not(:first-child) {
                z-index: auto !important;
                width: auto !important;
                min-width: auto !important;
                max-width: none !important;
                white-space: normal !important;
            }

            @media (max-width: 575.98px) { 
                .table-responsive-normal {
                    border: 0;
                }
                .table-responsive-normal > .table > :is(thead, tbody) > tr > :is(th, td) {
                    border: 0;
                    white-space: nowrap;
                }
            }

            /* 🔧 Neue table-normal Klasse ohne fixierte Spalten */
            .table-normal {
                /* Alle Bootstrap Standard-Tabellen-Styles beibehalten */
            }

            /* ✅ ÜBERSCHREIBT die globalen .table Fixierungen für table-normal */
            .table-normal th:first-child,
            .table-normal td:first-child {
                position: static !important;
                left: auto !important;
                z-index: auto !important;
                min-width: auto !important;
                max-width: none !important;
                width: auto !important;
                background: inherit !important;
            }

            /* ✅ Normale Spaltenbreiten für table-normal */
            .table-normal th:not(:first-child),
            .table-normal td:not(:first-child) {
                z-index: auto !important;
                width: auto !important;  
                min-width: auto !important;
                max-width: none !important;
                white-space: normal !important;
            }

            /* ✅ Standard Bootstrap Tabellen-Verhalten für table-normal */
            .table-normal th,
            .table-normal td {
                position: static !important;
                z-index: auto !important;
                width: auto !important;
                min-width: auto !important;
                max-width: none !important;
                white-space: normal !important;
                background: inherit !important;
            }