/* swipe.css - iOS Mail-style swipe-row-actions */

.swipe-row {
  position: relative;
  overflow: hidden;
  touch-action: pan-y;
  user-select: none;
  -webkit-user-select: none;
}

.swipe-row-content {
  position: relative;
  background: var(--bg-card, #fff);
  transition: transform .25s ease;
  will-change: transform;
  z-index: 2;
  touch-action: pan-y;
}

.swipe-row.is-dragging .swipe-row-content {
  transition: none;
}

.swipe-row-actions {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  display: flex;
  z-index: 1;
}

.swipe-act {
  border: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 60px;
  padding: 0 12px;
  font-size: 18px;
  cursor: pointer;
  color: #fff;
  transition: filter .15s ease;
}

.swipe-act-edit { background: #2563eb; }
.swipe-act-delete { background: #dc2626; }

.swipe-act:hover { filter: brightness(1.1); }
.swipe-act:active { filter: brightness(0.95); }
.swipe-act:focus-visible {
  outline: 2px solid #fff;
  outline-offset: -4px;
}

@media (hover: hover) {
  .swipe-row-content { cursor: grab; }
  .swipe-row.is-dragging .swipe-row-content { cursor: grabbing; }
}
