  /* Ctrl-to-reveal pattern for destructive controls (inventory + my-games tiles).
     Hidden by default; fade in only while user is holding Ctrl. Hover on host
     card brightens to full opacity (handled by per-context rules above). */
  .danger-reveal {
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.18s ease, transform 0.18s ease;
  }
  body.ctrl-on .danger-reveal {
    opacity: 0.85;
    pointer-events: auto;
  }
  body.ctrl-on .inv-card:hover .danger-reveal,
  body.ctrl-on .my-tile:hover .danger-reveal {
    opacity: 1;
  }

  /* Touch / no-hover devices: Ctrl key is unavailable, so always show
     destructive controls. Desktop behaviour (Ctrl-toggle) is preserved
     because (hover:none) is false on real pointer devices. */
  @media (hover: none), (pointer: coarse) {
    .danger-reveal {
      opacity: 1;
      pointer-events: auto;
    }
  }
