diff --git a/src/styles/scroll-navigation.css b/src/styles/scroll-navigation.css index f15f750..2dfc275 100644 --- a/src/styles/scroll-navigation.css +++ b/src/styles/scroll-navigation.css @@ -27,116 +27,115 @@ html { } .scroll-section { - scroll-snap-align: start; - scroll-margin-top: 100px; - } + scroll-snap-align: start; + scroll-margin-top: 100px; +} - /* Hide scrollbar for cleaner appearance while maintaining functionality */ - .custom-scrollbar { - scrollbar-width: thin; - scrollbar-color: rgba(75, 85, 99, 0.5) transparent; - } +/* Hide scrollbar for cleaner appearance while maintaining functionality */ +.custom-scrollbar { + scrollbar-width: thin; + scrollbar-color: rgba(75, 85, 99, 0.5) transparent; +} - .custom-scrollbar::-webkit-scrollbar { - width: 8px; - } +.custom-scrollbar::-webkit-scrollbar { + width: 8px; +} - .custom-scrollbar::-webkit-scrollbar-track { - background: transparent; - } +.custom-scrollbar::-webkit-scrollbar-track { + background: transparent; +} - .custom-scrollbar::-webkit-scrollbar-thumb { - background-color: rgba(75, 85, 99, 0.5); - border-radius: 10px; - border: 2px solid transparent; - } +.custom-scrollbar::-webkit-scrollbar-thumb { + background-color: rgba(75, 85, 99, 0.5); + border-radius: 10px; + border: 2px solid transparent; +} - .custom-scrollbar::-webkit-scrollbar-thumb:hover { - background-color: rgba(75, 85, 99, 0.8); - } +.custom-scrollbar::-webkit-scrollbar-thumb:hover { + background-color: rgba(75, 85, 99, 0.8); +} - /* Progress indicator animations */ - .progress-dot { - transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); - } +/* Progress indicator animations */ +.progress-dot { + transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); +} - .progress-dot:hover { - transform: scale(1.2); - } +.progress-dot:hover { + transform: scale(1.2); +} - .progress-dot.active { - animation: pulse 2s infinite; - } +.progress-dot.active { + animation: pulse 2s infinite; +} - @keyframes pulse { - 0%, 100% { - opacity: 1; - } - 50% { - opacity: 0.8; - transform: scale(1.05); - } +@keyframes pulse { + 0%, 100% { + opacity: 1; } - - /* Scroll direction indicators */ - .scroll-arrow { - transition: all 0.3s ease; + 50% { + opacity: 0.8; + transform: scale(1.05); } +} + +/* Scroll direction indicators */ +.scroll-arrow { + transition: all 0.3s ease; +} + +.scroll-arrow:hover { + transform: translateY(-2px); +} + +.scroll-arrow:disabled { + opacity: 0.3; + cursor: not-allowed; +} - .scroll-arrow:hover { - transform: translateY(-2px); +/* Mobile optimizations */ +@media (max-width: 768px) { + html { + scroll-padding-top: 80px; } - .scroll-arrow:disabled { - opacity: 0.3; - cursor: not-allowed; + .scroll-section { + scroll-margin-top: 80px; } +} - /* Mobile optimizations */ - @media (max-width: 768px) { - html { - scroll-padding-top: 80px; - } +/* Reduced motion preferences */ +@media (prefers-reduced-motion: reduce) { + html { + scroll-behavior: auto; + } - .scroll-section { - scroll-margin-top: 80px; - } + .section-transition, + .progress-dot, + .scroll-arrow { + transition: none; } - /* Reduced motion preferences */ - @media (prefers-reduced-motion: reduce) { - html { - scroll-behavior: auto; - } - - .section-transition, - .progress-dot, - .scroll-arrow { - transition: none; - } - - .progress-dot.active { - animation: none; - } + .progress-dot.active { + animation: none; } +} - /* Focus management for keyboard navigation */ - .scroll-navigation-focus:focus-visible { - outline: 2px solid #06b6d4; - outline-offset: 2px; +/* Focus management for keyboard navigation */ +.scroll-navigation-focus:focus-visible { + outline: 2px solid #06b6d4; + outline-offset: 2px; +} + +/* High contrast mode support */ +@media (prefers-contrast: high) { + .progress-dot { + border: 2px solid currentColor; } - /* High contrast mode support */ - @media (prefers-contrast: high) { - .progress-dot { - border: 2px solid currentColor; - } - - .scroll-arrow { - background-color: Canvas; - border: 1px solid CanvasText; - color: CanvasText; - } + .scroll-arrow { + background-color: Canvas; + border: 1px solid CanvasText; + color: CanvasText; } }