Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
173 changes: 86 additions & 87 deletions src/styles/scroll-navigation.css
Original file line number Diff line number Diff line change
Expand Up @@ -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;
}
}

Expand Down
Loading