/*
 * Phase 3: Touch-Safe Hover & 44px Hit-Target Architecture
 *
 * 1. Capability-based media queries (@media (hover: hover) and (pointer: fine))
 *    prevent "stuck" double-tap hover states on touchscreens while keeping hover
 *    reveals smooth on mouse/trackpad devices.
 * 2. Primary actions are never hidden behind hover; secondary actions remain
 *    accessible on coarse-pointer / hoverless devices.
 * 3. Compact icon buttons keep their 16px-28px visual footprint while expanding
 *    their interactive tap area to at least 44x44px via a centered ::after
 *    pseudo-element.
 */

/* Enable hover reveals only when input supports true hover and fine pointers */
@media (hover: hover) and (pointer: fine) {
  .data-card .secondary-actions {
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.15s ease;
  }

  .data-card:hover .secondary-actions,
  .data-card:focus-within .secondary-actions {
    opacity: 1;
    visibility: visible;
  }
}

/* On touch/coarse pointers, keep actions visible or accessible without hover */
@media (hover: none), (pointer: coarse) {
  .data-card .secondary-actions,
  .action-btn-group,
  .admin-table .action-btn-group {
    opacity: 1;
    visibility: visible;
  }
}

/* Compact icon action button with 44x44px invisible hit expansion */
.icon-action-btn {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
}

.icon-action-btn,
.btn-icon,
.search-clear,
.modal-close,
.admin-bulk-checkbox,
.password-toggle-btn,
.gp-header-btn,
.gp-close-btn {
  position: relative;
}

/* Expands tap target to 44x44px without altering visual layout */
.icon-action-btn::after,
.btn-icon::after,
.search-clear::after,
.modal-close::after,
.admin-bulk-checkbox::after,
.password-toggle-btn::after,
.gp-header-btn::after,
.gp-close-btn::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 44px;
  height: 44px;
  transform: translate(-50%, -50%);
}
