/* Shared CTA feedback; hover effects only run with a precise pointer. */
html:not([lang="ru"]) body :is(.btn, .package-action, .cart-button, [data-add-cart], .item-details, .nav-links a, .nav-trigger) {
  transition: color 180ms ease, background-color 180ms ease, border-color 180ms ease, box-shadow 180ms ease !important;
}

@media (hover: hover) and (pointer: fine) {
  html:not([lang="ru"]) body :is(.btn-primary, .package-action.primary, .cart-button, [data-add-cart], .topbar .cta):not(:disabled):not([aria-disabled="true"]):hover {
    border-color: #8fae35 !important;
    background: #1a1d21 !important;
    color: #f5f7f8 !important;
    box-shadow: 0 0 0 1px #8fae35, 0 0 0 4px rgba(143, 174, 53, 0.12) !important;
    transform: none !important;
  }

  html:not([lang="ru"]) body :is(.btn-soft, .hero-secondary-link, .item-details, .package-action:not(.primary), .nav-links a:not(.btn-primary), .nav-trigger):not(:disabled):hover {
    color: #637d20 !important;
    transform: none !important;
  }
}

html:not([lang="ru"]) body :is(.btn-primary, .package-action.primary, .cart-button, [data-add-cart]):focus-visible {
  outline: 2px solid #8fae35 !important;
  outline-offset: 3px !important;
}

html:not([lang="ru"]) body :is(.btn-soft, .hero-secondary-link, .item-details, .package-action:not(.primary), .nav-links a:not(.btn-primary), .nav-trigger):focus-visible {
  color: #637d20 !important;
}

@media (hover: none), (pointer: coarse) {
  html:not([lang="ru"]) body :is(.btn, .package-action, .cart-button, [data-add-cart]):hover {
    transform: none !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html:not([lang="ru"]) body :is(.btn, .package-action, .cart-button, [data-add-cart], .item-details, .nav-links a, .nav-trigger) {
    transition: none !important;
  }
}
