/* Shared navigation, touch controls, and device-safe spacing. */
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; scroll-padding-top: 6rem; }
body { min-width: 0; }
button, a, input, select, textarea { touch-action: manipulation; }
button, a { -webkit-tap-highlight-color: rgba(52,84,209,.15); }
img, video, canvas { max-width: 100%; }
:focus-visible { outline: 3px solid #3454d1; outline-offset: 4px; }
.skip-link { position: fixed; top: 8px; left: 8px; transform: translateY(-150%); padding: 12px 16px; background: #fff; color: #171717; z-index: 300; border: 2px solid currentColor; }
.skip-link:focus { transform: none; }
.site-links, .tool-navigation { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 20px; }
.site-links a, .tool-navigation a { display: inline-flex; align-items: center; min-height: 44px; font-size: 14px; font-weight: 600; }
.site-links a:hover, .tool-navigation a:hover { text-decoration: underline; text-underline-offset: 4px; }
@media (max-width: 650px) {
  .site-links, .tool-navigation { gap: 4px 14px; }
  .tool-navigation a { font-size: 14px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto !important; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
}
