/* 1) Pseudo-Overlay sauber ausrichten */
.button,
.actions .button {
  position: relative;            /* stellt Bezugspunkt sicher */
  box-sizing: border-box;
  transform: translateZ(0);      /* verhindert Subpixel-Zittern */
}

.button::before,
.actions .button::before {
  content: '';
  position: absolute;
  inset: 0;                      /* top/right/bottom/left: 0 — kein Versatz */
  border-radius: inherit;
  pointer-events: none;
  box-sizing: border-box;
  /* Falls das Theme hier transform/translate/scale setzt, neutralisieren: */
  transform: none !important;
}

/* 2) Wenn beim Hover die „Linie“ springt, lieber Schatten statt Border animieren */
.actions .button,
.button {
  border: 0;                     /* Border weglassen… */
  box-shadow: inset 0 0 0 2px currentColor;  /* …und durch Shadow ersetzen */
  transition: color .2s ease, background-color .2s ease, box-shadow .2s ease;
}

.actions .button:hover,
.button:hover {
  /* Nur die Stärke des Schattens ändern – kein Reflow/Versatz */
  box-shadow: inset 0 0 0 3px currentColor;
}

/* 3) (Optional) Fokus-Ring richtig platzieren – kein „outline-offset“ Versatz */
.actions .button:focus-visible,
.button:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 0;             /* verhindert verschobenen Ring */
}
