#public-results-content { scroll-margin-top: 12px; }
#public-results-content:focus { outline: none; }
#public-navigation-status { position: fixed; bottom: 16px; left: 50%; transform: translateX(-50%); z-index: 100; max-width: calc(100vw - 32px); padding: 8px 14px; border-radius: 6px; background: #17263b; color: white; font-size: 13px; }
#public-navigation-status:empty { display: none; }
#public-navigation-status button { margin-left: 8px; text-decoration: underline; }
body:not(.public-navigation-pending) #public-navigation-status:not(:has(button)) { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip-path: inset(50%); }
.public-navigation-pending::before { content: ''; position: fixed; top: 0; left: 0; z-index: 200; height: 3px; width: 35%; background: #2563eb; animation: public-navigation-progress 1.2s ease-in-out infinite; }
.public-navigation-pending #public-results-content > :not(.public-race-navigation) { pointer-events: none; }
[data-public-navigation-pending] { outline: 2px solid #93c5fd; outline-offset: 2px; }
@keyframes public-navigation-progress { from { transform: translateX(-100%); } to { transform: translateX(390%); } }
@media (prefers-reduced-motion: reduce) { .public-navigation-pending::before { animation: none; width: 100%; } }
