@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap');

body {
    font-family: 'Inter', sans-serif;
}

#main-header {
    background-color: rgba(249, 250, 251, 0.8); /* bg-gray-50 with alpha */
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
    color: #374151; /* text-gray-700 */
}

#main-header.scrolled {
    background-color: rgba(249, 250, 251, 0.95); /* More opaque bg-gray-50 */
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.07);
}

#main-header.dark-mode-header {
    background-color: rgba(17, 24, 39, 0.85); /* bg-gray-900 with alpha */
    color: #e5e7eb; /* text-gray-200 */
}

#main-header.dark-mode-header.scrolled {
    background-color: rgba(17, 24, 39, 0.95); /* More opaque bg-gray-900 */
}

#main-header.dark-mode-header .nav-link {
    color: #e5e7eb; /* text-gray-200 for links in dark header */
}
#main-header.dark-mode-header .nav-link:hover {
    color: #f9fafb; /* text-gray-50 for hover in dark header */
}
#main-header.dark-mode-header a.text-2xl { /* Site title in dark header */
    color: #f9fafb; /* text-gray-50 */
}


#main-header:not(.dark-mode-header) .nav-link {
    color: #4b5563; /* text-gray-600 for links in light header */
}
#main-header:not(.dark-mode-header) .nav-link:hover {
    color: #1f2937; /* text-gray-800 for hover in light header */
}
#main-header:not(.dark-mode-header) a.text-2xl { /* Site title in light header */
    color: #1f2937; /* text-gray-800 */
}


.nav-link.active {
    font-weight: 600; /* Tailwind's font-semibold */
    position: relative;
}

.nav-link.active::after {
    content: '';
    position: absolute;
    bottom: -4px;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: currentColor; 
}

#main-header.dark-mode-header .nav-link.active {
    color: #f9fafb; /* text-gray-50 */
}
#main-header.dark-mode-header .nav-link.active::after {
     background-color: #f9fafb; /* text-gray-50 */
}

#main-header:not(.dark-mode-header) .nav-link.active {
    color: #1f2937; /* text-gray-800 */
}
#main-header:not(.dark-mode-header) .nav-link.active::after {
    background-color: #1f2937; /* text-gray-800 */
}


.hover-lift {
    transition: transform 0.3s ease-out, box-shadow 0.3s ease-out;
}

.hover-lift:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.08); /* Softer shadow */
}

.hover-lift-dark {
    transition: transform 0.3s ease-out, box-shadow 0.3s ease-out;
}

.hover-lift-dark:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.25); /* Softer dark shadow */
}

#experience .relative:last-child .border-l-2 {
    min-height: 50px; 
}


@media (max-width: 639px) { /* sm breakpoint in Tailwind */
    .nav-link.active::after {
        display: none; 
    }
    #mobile-menu .nav-link.active {
        background-color: #374151; /* gray-700 */
        border-radius: 0.25rem;
    }
}
