/*
  Interaction Consistency Layer
  - Keine Layout-, Farb- oder Shadow-Overrides
  - Nur transform-basierte Hover-States für echte interaktive Elemente
  - Touch-Geräte bleiben ruhig/native, damit iPad & Mobile nicht künstlich skalieren
*/

@media (hover: hover) and (pointer: fine) {
  a[href]:where([class*="rounded"]),
  button:where([class*="rounded"]),
  summary:where([class*="rounded"]),
  [role="button"]:where([class*="rounded"]),
  [data-premium-hover] {
    transform: translateZ(0);
    transform-origin: center center;
    transition-property: transform, background-color, color, border-color, opacity;
    transition-duration: 500ms;
    transition-timing-function: cubic-bezier(0.22, 1, 0.36, 1);
    backface-visibility: hidden;
  }

  a[href]:where([class*="rounded"]):hover,
  button:where([class*="rounded"]):hover,
  summary:where([class*="rounded"]):hover,
  [role="button"]:where([class*="rounded"]):hover,
  [data-premium-hover]:hover {
    transform: translateZ(0) scale(1.02);
  }

  [data-no-hover],
  [data-no-hover]:hover,
  [data-no-hover] *:hover {
    transform: none !important;
  }
}

@media (hover: none), (pointer: coarse), (prefers-reduced-motion: reduce) {
  a[href],
  button,
  summary,
  [role="button"],
  [data-premium-hover] {
    transform: none !important;
  }
}
