/* Travnik Theme — interaction and accessibility layer.
 * Loaded after layout.css so pointer, keyboard and motion preferences are
 * resolved in one predictable place.
 */

/* --------------------------------------------------------------------------
   Pointer / touch focus
   -------------------------------------------------------------------------- */

a,
button,
summary,
[role="button"] {
  -webkit-tap-highlight-color: transparent;
}

/* Pointer/touch focus should not leave a persistent browser ring. Keyboard
   users still receive the explicit :focus-visible treatment below. */
a:focus:not(:focus-visible),
button:focus:not(:focus-visible),
summary:focus:not(:focus-visible),
[role="button"]:focus:not(:focus-visible) {
  outline: none;
  box-shadow: none;
}

/* --------------------------------------------------------------------------
   Keyboard focus
   -------------------------------------------------------------------------- */

.tn-catalog-overlay__close,
.tn-header__search-toggle,
.tn-catalog-toggle,
.tn-home__catalog .tn-cat,
main a {
  outline-offset: 3px;
}

.tn-catalog-overlay__close:focus-visible,
.tn-header__search-toggle:focus-visible,
.tn-catalog-toggle:focus-visible,
.tn-home__catalog .tn-cat:focus-visible,
main a:focus-visible {
  outline: 2px solid var(--wp--preset--color--accent, #3f7a54);
}

/* --------------------------------------------------------------------------
   Motion preferences
   -------------------------------------------------------------------------- */

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
}
