.mega-menu-overlay {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.3);
    z-index: 40;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}

.mega-menu-overlay.active {
    opacity: 1;
    visibility: visible;
}

[data-testid="navigation-products-submenu"],
[data-testid="navigation-learn-submenu"] {
    transition: opacity 0.3s ease, transform 0.3s ease;
    transform: translateY(-10px);
}

[data-testid="navigation-products-submenu"].flex,
[data-testid="navigation-learn-submenu"].flex {
    transform: translateY(0);
    opacity: 1;
}

[data-testid="@icon/CaretDown"] {
    transition: transform 0.3s ease;
}

[data-testid="navigation-products-submenu"] a,
[data-testid="navigation-learn-submenu"] a {
    transition: background-color 0.2s ease, transform 0.2s ease;
}

[data-testid="navigation-products-submenu"] a:hover,
[data-testid="navigation-learn-submenu"] a:hover {
    transform: translateX(4px);
}

.text-gray1000 {
    color: #1a1a1a;
}

.text-gray-900 {
    color: #111827;
}

.text-gray800 {
    color: #1f2937;
}

.text-gray700 {
    color: #666666;
}

.text-gray-700 {
    color: #374151;
}

.text-gray-600 {
    color: #4b5563;
}

.text-gray500 {
    color: #999999;
}

.bg-gray100 {
    background-color: #f5f5f5;
}

.bg-gray-100 {
    background-color: #f3f4f6;
}

.bg-gray200 {
    background-color: #e5e5e5;
}

.bg-gray-200 {
    background-color: #e5e7eb;
}

.bg-gray300 {
    background-color: #d4d4d4;
}

.bg-gray-50 {
    background-color: #f9fafb;
}

.border-gray-200 {
    border-color: #e5e7eb;
}

.border-gray-300 {
    border-color: #d1d5db;
}

.hover\:bg-gray100:hover {
    background-color: #f5f5f5;
}

.hover\:bg-gray200:hover {
    background-color: #e5e5e5;
}

.hover\:bg-gray-50:hover {
    background-color: #f9fafb;
}

.hover\:bg-gray-200:hover {
    background-color: #e5e7eb;
}

.hover\:border-gray-300:hover {
    border-color: #d1d5db;
}

nav[data-testid="nav-header"] {
    position: sticky;
    top: 0;
    z-index: 100;
}

[data-testid="navigation-products-submenu"] .group:hover img,
[data-testid="navigation-learn-submenu"] .group:hover img {
    transform: scale(1.05);
    transition: transform 0.3s ease;
}

html {
    scroll-behavior: smooth;
}

[data-testid="navigation"] button:focus-visible,
[data-testid="navigation"] a:focus-visible {
    outline: 2px solid #0f6148;
    outline-offset: 2px;
    border-radius: 4px;
}

@keyframes fadeInDown {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

[data-testid="navigation-products-submenu"].flex,
[data-testid="navigation-learn-submenu"].flex {
    animation: fadeInDown 0.3s ease;
}

@media (max-width: 1024px) {
    [data-testid="navigation-products-submenu"],
    [data-testid="navigation-learn-submenu"] {
        position: fixed;
        top: 5rem;
        left: 1rem;
        right: 1rem;
        max-height: calc(100vh - 6rem);
        overflow-y: auto;
    }
}

[data-testid="navigation-products-submenu"]::-webkit-scrollbar,
[data-testid="navigation-learn-submenu"]::-webkit-scrollbar {
    width: 8px;
}

[data-testid="navigation-products-submenu"]::-webkit-scrollbar-track,
[data-testid="navigation-learn-submenu"]::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 10px;
}

[data-testid="navigation-products-submenu"]::-webkit-scrollbar-thumb,
[data-testid="navigation-learn-submenu"]::-webkit-scrollbar-thumb {
    background: #888;
    border-radius: 10px;
}

[data-testid="navigation-products-submenu"]::-webkit-scrollbar-thumb:hover,
[data-testid="navigation-learn-submenu"]::-webkit-scrollbar-thumb:hover {
    background: #555;
}
