/* Custom styles for the portfolio website */

/* Hyperlink styling */
.hyperlink {
    color: #2563eb;
    text-decoration: underline;
    cursor: pointer;
    transition: color 0.2s ease;
}

.hyperlink:hover {
    color: #1d4ed8;
}

/* Button styling */
.btn-external {
    display: inline-block;
    background-color: #2563eb;
    color: white;
    padding: 0.5rem 1rem;
    border-radius: 0.375rem;
    text-decoration: none;
    font-weight: 500;
    transition: background-color 0.2s ease;
    margin: 0.5rem 0.5rem 0.5rem 0;
}

.btn-external:hover {
    background-color: #1d4ed8;
}

/* Right content area styling */
#rightContent {
    min-height: 400px;
}

/* Center the default message on desktop */
@media (min-width: 1025px) {
    #rightContent .text-center {
        display: flex;
        align-items: center;
        justify-content: center;
        height: 100%;
        min-height: 400px;
    }
}

/* Plain white background everywhere */
main {
    background: #ffffff;
}

/* No gradient - just plain white */
.lg\:w-2\/5 {
    background: #ffffff;
}

/* Ensure both sides have same height and bottom alignment */
main > div {
    display: flex;
    flex-direction: column;
}

main > div > div {
    flex: 1;
    display: flex;
    flex-direction: column;
}

/* Prevent left side from shrinking during window resize */
.lg\:w-2\/5 {
    flex-shrink: 0;
    flex-basis: 605px; /* Fixed pixel width - NEVER changes (20% larger total) */
    width: 605px; /* Force exact 605px width */
    min-width: 605px;
    max-width: 605px; /* Prevent any width changes */
}

.lg\:w-3\/5 {
    flex-shrink: 1;
    flex-basis: auto; /* Take remaining space */
    min-width: 0; /* Allow right side to shrink completely */
    width: auto; /* Flexible width */
}

/* Responsive adjustments for 40/60 layout */
@media (max-width: 1024px) {
    .lg\:w-2\/5 {
        width: 100%;
        min-width: 100%; /* Full width on mobile */
        flex-shrink: 0; /* Prevent left side from shrinking */
        padding: 1.5rem 1rem; /* Better padding on mobile */
    }
    
    .lg\:w-3\/5 {
        width: 100%;
        min-width: 100%; /* Full width on mobile */
        flex-shrink: 1; /* Allow right side to shrink */
        padding: 1.5rem 1rem; /* Better padding on mobile */
    }
    
    .lg\:flex-row {
        flex-direction: column;
    }
    
    .lg\:border-l {
        border-left: none;
        border-top: 1px solid #e5e7eb;
    }
    
    /* Reset gradient on mobile for better performance */
    main {
        background: #ffffff;
    }
    
    /* Better mobile spacing */
    .p-6.lg\:p-12 {
        padding: 1.5rem 1rem;
    }
}

/* Desktop to mobile transition - allow right side to squeeze */
@media (min-width: 1025px) and (max-width: 1400px) {
    .lg\:w-3\/5 {
        min-width: 300px; /* Allow right side to squeeze more on smaller desktop windows */
    }
}

/* Additional responsive breakpoints */
@media (max-width: 768px) {
    .lg\:w-2\/5 {
        min-width: 100%;
        padding: 1.5rem 1rem;
    }
    
    .lg\:w-3\/5 {
        min-width: 100%;
        padding: 1.5rem 1rem;
    }
    
    /* Mobile navigation - compact and no wasted space */
    .lg\:w-3\/5 .absolute.top-8.right-8 {
        position: relative;
        top: auto;
        right: auto;
        margin-bottom: 0.5rem; /* Reduced from 1.5rem */
    }
    
    .lg\:w-3\/5 .flex.space-x-4 {
        flex-wrap: wrap;
        gap: 0.5rem; /* Reduced from 0.75rem */
        justify-content: flex-start;
        margin: 0; /* Remove any default margins */
    }
    
    .lg\:w-3\/5 .flex.space-x-4 a {
        font-size: 0.9rem; /* Slightly smaller to save space */
        padding: 0.1rem 0; /* Minimal padding */
        white-space: nowrap; /* Prevent text wrapping */
        text-decoration: underline;
        color: #2563eb;
        margin: 0; /* Remove any default margins */
    }
    
    /* Mobile typography improvements */
    h1 {
        font-size: 2.5rem !important;
        line-height: 1.2;
        margin-bottom: 1.5rem;
    }
    
    .space-y-6 {
        gap: 1.5rem;
    }
    
    .space-y-6 p {
        font-size: 1rem;
        line-height: 1.6;
    }
    
    /* Mobile email section improvements */
    .mt-12 {
        margin-top: 2rem;
    }
    
    .mt-12 .p-6 {
        padding: 1.5rem;
    }
    
    /* Mobile content area improvements */
    #rightContent {
        padding: 0.5rem; /* Reduced from 1rem */
    }
    
    #rightContent .text-center {
        padding: 1rem 0.5rem; /* Reduced from 2rem 1rem */
    }
}

/* Custom scrollbar for the right content */
#rightContent::-webkit-scrollbar {
    width: 6px;
}

#rightContent::-webkit-scrollbar-track {
    background: #f1f1f1;
}

#rightContent::-webkit-scrollbar-thumb {
    background: #c1c1c1;
    border-radius: 3px;
}

#rightContent::-webkit-scrollbar-thumb:hover {
    background: #a8a8a8;
}
