:root { --action-bar-height: 0px; }
.skip-link { position: fixed; left: 1rem; top: .5rem; z-index: 9999; transform: translateY(-160%); background: #fff; color: #1a1c23; padding: .75rem 1rem; border-radius: .5rem; font-weight: 700; box-shadow: 0 4px 20px rgba(0,0,0,.25); }
.skip-link:focus { transform: translateY(0); }
:focus-visible { outline: 3px solid #ef4444 !important; outline-offset: 3px; }
.mobile-actions { display: none; }
@media (max-width: 767px) {
  :root { --action-bar-height: 4.25rem; }
  body { padding-bottom: var(--action-bar-height); }
  .mobile-actions { position: fixed; display: grid; grid-template-columns: repeat(3, 1fr); left: 0; right: 0; bottom: 0; z-index: 70; min-height: var(--action-bar-height); padding: .35rem max(.35rem, env(safe-area-inset-right)) calc(.35rem + env(safe-area-inset-bottom)) max(.35rem, env(safe-area-inset-left)); background: #111216; border-top: 1px solid rgba(255,255,255,.15); box-shadow: 0 -6px 20px rgba(0,0,0,.2); }
  .mobile-actions a { min-height: 3.35rem; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: .15rem; color: #fff; border-radius: .4rem; font-size: .75rem; font-weight: 700; text-align: center; }
  .mobile-actions a:hover, .mobile-actions a:focus-visible { background: #b91c1c; }
  #ad-cookie-notice { bottom: calc(var(--action-bar-height) + .5rem) !important; }
}
@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; }
  .reveal { opacity: 1 !important; transform: none !important; }
}
main:focus { outline: none; }
img { height: auto; }
input, select, textarea, button { font: inherit; }
@media (max-width: 640px) { input, select, textarea { font-size: 16px !important; } }
