html, body {
    background-color: #FFFFFF; 
    color: #1f2937; 
}
html.dark, html.dark body {
    background-color: #121212; 
    color: #f3f4f6; 
}
.border { 
    border-color: #d4d4d8; 
}
html.dark .border {
    border-color: #374151; 
}
.carousel-item {
    display: inline-block;
    margin: 0 1rem;
}            
.flex {
    display: flex;
}
.flex-col {
    flex-direction: column;
}

@media (min-width: 768px) {
    .md\:flex-row {
        flex-direction: row;
    }
}

.tech-carousel {
    overflow: hidden;
    width: 100%;
    padding: 1rem 0;
}

.carousel-track {
    white-space: nowrap;
}

:root {
    color-scheme: light dark;
}

.tech-icon {
    filter: grayscale(100%) brightness(200%);
    transition: all 0.3s ease;
}
.tech-icon:hover {
    filter: none;
}

@keyframes scroll {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-100%);
    }
}

.tech-carousel {
    width: 100%;
    padding: 1rem 0;
}

.tech-track {
    width: fit-content;
    animation: scroll 20s linear infinite;
}

.tech-track:hover {
    animation-play-state: paused;
}

.tech-slide {
    float: left;
}

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

.language-switcher {
    position: relative;
    display: inline-block;
}

.language-switcher-btn {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    cursor: pointer;
}

.language-dropdown {
    display: none;
    position: absolute;
    background-color: var(--bg-secondary);
    min-width: 120px;
    box-shadow: 0 8px 16px rgba(0,0,0,0.1);
    z-index: 1;
    border-radius: 0.5rem;
    overflow: hidden;
}

.language-switcher:hover .language-dropdown {
    display: block;
}

.language-dropdown a {
    padding: 0.75rem 1rem;
    display: block;
    text-decoration: none;
    transition: background-color 0.2s;
}

.language-dropdown a:hover {
    background-color: rgba(0,0,0,0.05);
}

.dark .language-dropdown a:hover {
    background-color: rgba(255,255,255,0.05);
}

.language-active {
    font-weight: 600;
}