/* Quiet feedback only. No card reveals, scroll effects or layout animation. */
.button { transition: transform 140ms ease, box-shadow 140ms ease; }
@media (hover: none), (pointer: coarse) {
  .button:hover { transform: none; box-shadow: none; }
}
@media (hover: hover) and (pointer: fine) {
  .button:not(:disabled):not(.ptl-loading):hover {
    transform: translateY(-1px);
    box-shadow: 0 5px 14px rgb(23 25 28 / 10%);
  }
}
.button:not(:disabled):not(.ptl-loading):active {
  transform: translateY(1px);
  box-shadow: none;
}
.button.ptl-loading { transform: none; box-shadow: none; cursor: progress; }
.faq-list summary span[aria-hidden="true"] {
  display: inline-block;
  transition: transform 160ms ease;
}
.faq-list details[open] summary span[aria-hidden="true"] { transform: rotate(45deg); }
.faq-list details[open] > p { animation: ptl-answer 180ms ease-out; }
@keyframes ptl-answer {
  from { opacity: 0; transform: translateY(-3px); }
  to { opacity: 1; transform: none; }
}
.ptl-loading::after {
  content: "";
  display: inline-block;
  flex-shrink: 0;
  width: 14px;
  height: 14px;
  border: 2px solid currentColor;
  border-inline-end-color: transparent;
  border-radius: 50%;
  animation: ptl-spin 700ms linear infinite;
}
@keyframes ptl-spin { to { transform: rotate(360deg); } }
.ptl-submit-status { margin-block: 12px 0; font-size: 14px; color: var(--muted); }
.delivery-form-status.ptl-pending-status { color: var(--muted); }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .button, .faq-list summary span[aria-hidden="true"] {
    transition: none !important;
    transform: none !important;
  }
  .faq-list details[open] > p, .ptl-loading::after { animation: none !important; }
}
