/* Global page transition overlay styles */
.page-transition-overlay { position: fixed; inset: 0; background: rgba(255,255,255,0.85); display: none; align-items: center; justify-content: center; z-index: 2000; }
.page-transition-overlay.show { display: flex; flex-direction: column; }
.loader { display: flex; gap: 10px; }
.dot { width: 12px; height: 12px; border-radius: 50%; background: var(--accent-fill-rest, #0F6CBD); animation: dotBounce 1s infinite ease-in-out; }
.dot1 { animation-delay: 0s; }
.dot2 { animation-delay: 0.2s; }
.dot3 { animation-delay: 0.4s; }
@keyframes dotBounce { 0%, 80%, 100% { transform: scale(0); } 40% { transform: scale(1); } }
.loading-text { margin-top: 8px; color: #333; font-weight: 500; }
