/* Shared POS / Staff contract: close icons have an invisible touch target.
   Use .dp-close-icon for new icon-only close controls. Do not use this class
   for delete, quantity, maximize, or full-width text action buttons.
   Explicit selectors cover legacy controls; no text-content matching. */
html body :is(
  .dp-close-icon,
  .menu-close-btn,
  .dpw-x,
  .dpp-x,
  .dp-close-btn,
  .dpk-close,
  .dprp-x,
  .dprw-x,
  .dp-legal-x,
  .dp-fiscal-window-close,
  .dd-order-popup-close,
  .ka-tbl-close,
  .ka-opt-close,
  .me-modal-close[data-action="close-modal"],
  .tf-modal-close[data-action="close-edit"],
  .picker-close,
  .st-opt-close,
  .sfc-close,
  .install-banner .ib-close,
  #offlineBannerClose,
  #btwClose,
  #btwSpClose,
  #dzClose,
  #checkoutDeliveryChoice button[data-action="cancel"][aria-label="Sluiten"],
  button[aria-label="Bon sluiten"],
  button[aria-label="Bestelling sluiten"],
  button[data-calc-close],
  button[onclick="dpCloseOrderCustomer()"],
  #uurroosterShiftModal > div > div:first-child > button[onclick="closeShiftModal()"],
  #uurMinStaffModal > div > div:first-child > button[onclick="uurCloseMinStaff()"],
  button[onclick="_tcClosePin()"],
  button[onclick="document.getElementById('inventoryModal').remove()"],
  button[onclick="document.getElementById('discountModal').remove()"],
  button[onclick="document.getElementById('shiftModal').remove()"],
  button[onclick="document.getElementById('managerPinModal').remove();pendingCancelOrderId=null"]
) {
  appearance:none!important;
  -webkit-appearance:none!important;
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  outline:none!important;
  /* Keep existing placement and glyph colour, including white receipt cards. */
  box-sizing:border-box!important;
  min-width:44px!important;
  min-height:44px!important;
  flex-shrink:0!important;
  cursor:pointer;
}
/* Keyboard focus marks the glyph itself; it must not restore a square frame. */
html body :is(
  .dp-close-icon,.menu-close-btn,.dpw-x,.dpp-x,.dp-close-btn,.dpk-close,
  .dprp-x,.dprw-x,.dp-legal-x,.dp-fiscal-window-close,.dd-order-popup-close,
  .ka-tbl-close,.ka-opt-close,.me-modal-close[data-action="close-modal"],
  .tf-modal-close[data-action="close-edit"],.picker-close,.st-opt-close,
  .sfc-close,.install-banner .ib-close,#offlineBannerClose,#btwClose,
  #btwSpClose,#dzClose,
  #checkoutDeliveryChoice button[data-action="cancel"][aria-label="Sluiten"],
  button[aria-label="Bon sluiten"],button[aria-label="Bestelling sluiten"],
  button[data-calc-close],button[onclick="dpCloseOrderCustomer()"],
  #uurroosterShiftModal > div > div:first-child > button[onclick="closeShiftModal()"],
  #uurMinStaffModal > div > div:first-child > button[onclick="uurCloseMinStaff()"],
  button[onclick="_tcClosePin()"],
  button[onclick="document.getElementById('inventoryModal').remove()"],
  button[onclick="document.getElementById('discountModal').remove()"],
  button[onclick="document.getElementById('shiftModal').remove()"],
  button[onclick="document.getElementById('managerPinModal').remove();pendingCancelOrderId=null"]
):focus-visible {
  outline:none!important;
  text-decoration:underline!important;
  text-decoration-thickness:2px!important;
  text-underline-offset:4px!important;
}
/* The former red hover tile used white text; retain a readable standalone X. */
html body .dpw-x:hover,
html body .dpw-x:active {
  color:var(--text-primary,#333)!important;
}
