        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }
        .sidebar {
            width: 200px;
            background-color: #2c3e50 ;
            padding-top: 20px;
            position: fixed;
            height: 100%;
            overflow: auto;
            border-top-right-radius: 10px;
            border-bottom-right-radius: 10px;
        }

        .sidebar ul {
            list-style-type: none;
            padding: 0;
        }

        .sidebar ul li {
            padding: 8px;
            text-align: center;
        }

       .sidebar ul li a {
            display: block;
            color: white;
            text-decoration: none;
            font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
            font-size: 1.1rem;
            font-weight: 500;
        }

        .sidebar ul li a:hover {
            background-color: #575757;
        }
        .content-page {
            display: none;
        }

        .content-page.active {
            display: block;
        }

        .sidebar ul li a.active {
            background-color: #3498db;
        }
        
        body {
            font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
            line-height: 1.6;
            color: #333;
            background: #f5f5f5;
            padding: 20;
            margin: 0;
        }

        .container {
            max-width: 1400px;
            margin-left: 210px;
            background: white;
            border-radius: 10px;
            box-shadow: 0 10px 30px rgba(0,0,0,0.1);
            overflow: hidden;
        }

        .header {
            background: linear-gradient(135deg, #2c3e50 0%, #3498db 100%);
            color: white;
            padding: 2rem;
            text-align: center;
        }

        .header h1 {
            font-size: 2.5rem;
            margin-bottom: 0.5rem;
        }

        .main-content {
            display: grid;
            grid-template-columns: 400px 1fr;
            gap: 0;
        }

        .input-section {
            padding: 2rem;
            background: #f8f9fa;
            border-right: 1px solid #e1e5e9;
            max-height: 100vh;
            overflow-y: auto;
        }

        .results-section {
            padding: 2rem;
        }

        .form-group {
            margin-bottom: 1.5rem;
        }

        label {
            display: block;
            margin-bottom: 0.5rem;
            font-weight: 600;
            color: #2c3e50;
            font-size: 0.95rem;
        }

        input, select {
            width: 100%;
            padding: 10px 12px;
            border: 2px solid #e1e5e9;
            border-radius: 6px;
            font-size: 0.95rem;
            transition: border-color 0.3s ease;
        }

        input:focus, select:focus {
            outline: none;
            border-color: #3498db;
        }

        .account-section {
            border: 1px solid #e1e5e9;
            border-radius: 8px;
            padding: 1rem;
            margin-bottom: 1rem;
            background: white;
        }

        .account-header {
            font-weight: 600;
            color: #2c3e50;
            margin-bottom: 1rem;
            padding-bottom: 0.5rem;
            border-bottom: 1px solid #e1e5e9;
        }

        .account-row {
            display: grid;
            grid-template-columns: 1fr 100px;
            gap: 1rem;
            align-items: center;
            margin-bottom: 0.5rem;
        }

        .priority-list {
            background: white;
            border: 1px solid #e1e5e9;
            border-radius: 6px;
            padding: 1rem;
        }

        .priority-item {
            display: flex;
            justify-content: space-between;
            align-items: center;
            padding: 0.5rem;
            border-bottom: 1px solid #f0f0f0;
            cursor: move;
        }

        .priority-item:last-child {
            border-bottom: none;
        }

        .calculate-btn {
            width: 100%;
            padding: 15px;
            background: linear-gradient(135deg, #3498db 0%, #2c3e50 100%);
            color: white;
            border: none;
            border-radius: 8px;
            font-size: 1.1rem;
            font-weight: 600;
            cursor: pointer;
            margin-top: 1rem;
        }

        .calculate-btn:hover {
            opacity: 0.9;
        }

        .results-grid {
            display: grid;
            grid-template-columns: 1fr 1fr 1fr;
            gap: 1.5rem;
            margin-bottom: 2rem;
        }

        .chart-container {
            grid-column: 1 / -1;
            height: 400px;
            margin-bottom: 2rem;
        }

        .summary-card {
            background: linear-gradient(135deg, #3498db 0%, #2c3e50 100%);
            color: white;
            padding: 1.5rem;
            border-radius: 10px;
            text-align: center;
            display: flex;
            flex-direction: column;
        }

        .summary-title {
            font-size: 1.125rem;
            font-weight: 600;
            margin-bottom: 0.5rem;
        }

        .summary-value {
            font-size: 2rem;
            font-weight: bold;
            margin-bottom: 0.5rem;
        }

        .summary-detail {
            font-size: 0.875rem;
            margin-top: 0.25rem;
        }

        .summary-detail-small {
            font-size: 0.75rem;
            opacity: 0.8;
            margin-top: 0.25rem;
        }
        
        .table-container {
            overflow-x: auto;
            margin-top: 2rem;
        }

        table {
            width: 100%;
            border-collapse: collapse;
            background: white;
            border-radius: 8px;
            overflow: hidden;
            box-shadow: 0 4px 15px rgba(0,0,0,0.1);
        }

        th, td {
            padding: 12px;
            text-align: right;
            border-bottom: 1px solid #e1e5e9;
        }

        th {
            background: #f8f9fa;
            font-weight: 600;
            color: #2c3e50;
        }
        #earningsTable th:nth-child(3) {
            text-align: right;
            padding-left: 50px;
        }

        #earningsTable input[type="number"] {
            text-align: right;
            width:80%;
            box-sizing: border-box;
        }

        .warning {
            background: #fff3cd;
            border: 1px solid #ffeaa7;
            color: #856404;
            padding: 1rem;
            border-radius: 8px;
            margin: 1rem 0;
        }
        .disclaimer {
            grid-column: 1 / -1;
            background: #f8f9fa;
            border-top: 2px solid #e1e5e9;
            padding: 1.5rem 2rem;
            margin-top: 2rem;
            font-size: 0.9rem;
            color: #666;
            line-height: 1.6;
        }

        .disclaimer h3 {
            color: #2c3e50;
            font-size: 1rem;
            margin-bottom: 0.5rem;
        }

        .disclaimer p {
            margin-bottom: 0.5rem;
        }
        @media (max-width: 1200px) {
            .main-content {
                grid-template-columns: 1fr;
            }
            
            .input-section {
                max-height: none;
                border-right: none;
                border-bottom: 1px solid #e1e5e9;
            }
        }
        /* Add this new one for mobile sidebar */
       @media (max-width: 768px) {
            .sidebar {
                position: fixed;
                top: 0;
                left: -200px; /*  sidebar width */
                height: 100vh;
                transition: left 0.3s ease;
                z-index: 1000;
            }
            
            .sidebar.open {
                left: 0;
            }
            .container {
                margin-left: 0 !important; 
            }
        
            .main-content {
                grid-template-columns: 1fr !important;
                margin-left: 0 !important;
                width: 100% !important;
                padding: 0 !important;
            }
                /* Remove max-height from input section on mobile */
            .input-section {
                max-height: none;
                border-right: none;
                border-bottom: 1px solid #e1e5e9;
                width: 100% !important;
                padding: 1rem !important;
            }
            .menu-toggle {
                display: block;
                position: fixed;
                top: 1rem;
                left: 1rem;
                z-index: 1001;
                background: white;
                border: none;
                padding: 0.5rem;
                cursor: pointer;
                border-radius: 4px;
                box-shadow: 0 2px 4px rgba(0,0,0,0.1);
            }
            
            .sidebar-overlay {
                display: none;
                position: fixed;
                top: 0;
                left: 0;
                right: 0;
                bottom: 0;
                background: rgba(0,0,0,0.5);
                z-index: 999;
            }

            .calculate-btn {
                width: 100% !important;
            }
            .sidebar-overlay.active {
                display: block;
            }

            /* Ensure results section stays full width */
            .results-section {
                width: 100% !important;
                padding: 1rem !important;
            }
            
            #results {
                width: 100% !important;
            }
            .results-grid {
                 grid-template-columns: 1fr !important;
                 gap: 1rem;
            }
             /* Make chart horizontally scrollable */
            .chart-container {
                overflow-x: auto;
                -webkit-overflow-scrolling: touch;
                width: 100% !important;
            }
            
            .chart-container canvas {
                min-width: 600px;
            }
            
            .table-container {
                overflow-x: visible;
                width: 100% !important;
            }
            
            table {
                min-width: 100%;
                width: 100%;
                font-size: 0.85rem; /*smalller for mobile */
            }
            th,td {
                padding: 8px 4px;
                font-size: 0.85rem;
            }
            #earningsTable th:first-child,
            #earningsTable td:first-child {
                width: 20%; /* Year column */
            }
            
            #earningsTable th:nth-child(2),
            #earningsTable td:nth-child(2) {
                width: 20%; /* Age column */
            }
            
            /* Earnings input takes remaining space */
            #earningsTable input[type="number"] {
                font-size: 0.85rem;
                padding: 8px;
            }

            /*calculate-btn issue */
            body {
                overflow-x: hidden !important;
            }
            
            .content-page.active .container {
                width: 100% !important;
                max-width: 100vw !important;
                margin: 0 !important;
            }
            
            .content-page.active .main-content {
                width: 100% !important;
                max-width: 100vw !important;
            }
            
            .content-page.active .input-section,
            .content-page.active .results-section {
                width: 100% !important;
                max-width: 100vw !important;
            }
            
            /* Force all form elements to stay contained */
            form, form * {
                max-width: 100% !important;
            }
            
            .account-section,
            .account-row {
                width: 100% !important;
                max-width: 100% !important;
            }
               #earningsTable  {
                max-width: 60px;
            }
        }
        @media (min-width: 769px) {
            .menu-toggle {
                display: none;
            }



        }