/* Uiverse.io by vinodjangid07: original back-to-top and delete geometry/motion. */
body .bx-icon-action {
  --bx-icon-action-face: rgb(20, 20, 20); --bx-icon-action-radius: 50%;
  width: 50px !important; height: 50px !important; min-width: 50px !important; min-height: 50px !important;
  max-width: 140px; padding: 0 !important; margin: 0; flex: 0 0 auto;
  border-radius: 50% !important; background: rgb(20, 20, 20) !important; border: none !important;
  font-family: inherit; font-weight: 600; display: inline-flex !important;
  align-items: center !important; justify-content: center !important;
  box-shadow: 0 0 20px rgb(0 0 0 / .164) !important;
  cursor: pointer; transition: width .3s, border-radius .3s, background-color .3s;
  overflow: hidden; position: relative; vertical-align: middle; text-decoration: none !important;
  color: white !important; gap: 0 !important; line-height: normal;
}
/* ERP submit skins keep their business classes; these buttons own their supplied skin. */
body.blackx-identity .bx-form button.bx-icon-action.bx-delete-action,
body.blackx-identity .bx-form button.bx-icon-action.bx-delete-action:hover:not(:disabled) {
  background: var(--bx-icon-action-face) !important; border: none !important;
  border-radius: var(--bx-icon-action-radius) !important; color: white !important;
}
body .bx-icon-action .bx-icon-action__svg {
  width: 12px; height: auto; max-height: none; flex: 0 0 auto; transition: width .3s, transform .3s;
  pointer-events: none;
}
body .bx-icon-action .bx-icon-action__svg path { fill: white !important; }
body .bx-icon-action::before {
  position: absolute; top: -20px; content: attr(data-bx-caption); color: white !important;
  font-size: 2px; transition: font-size .3s, transform .3s; white-space: nowrap; pointer-events: none;
}
body .bx-icon-action__original {
  position: absolute !important; width: 1px !important; height: 1px !important; overflow: hidden !important;
  clip-path: inset(50%); white-space: nowrap !important;
}
/* Reserve the expanded face within table action cells instead of clipping it. */
body .bx-delete-cell { min-inline-size: 164px; }
body .bx-icon-action:focus-visible { outline: 3px solid var(--bx-theme-link, #0d6044) !important; outline-offset: 5px; }
body .bx-icon-action:is(:disabled,[aria-disabled="true"]),
body .bx-icon-action:has(> input:disabled) { opacity: .5; cursor: not-allowed; }
body .bx-back-top {
  position: fixed; left: max(24px, env(safe-area-inset-left)); bottom: max(24px, env(safe-area-inset-bottom));
  z-index: 1040; box-shadow: 0 0 0 4px rgb(180 160 255 / .253) !important;
  touch-action: none; user-select: none; -webkit-user-select: none;
}
body .bx-back-top::before { top: auto; bottom: -20px; font-size: 0; }
body .bx-back-top.is-dragging { cursor: grabbing; transition: none; }
/* Keep genuine submit inputs, values and listeners intact (including Django admin). */
body .bx-delete-input > input {
  position: absolute; inset: 0; width: 100% !important; height: 100% !important; margin: 0 !important;
  padding: 0 !important; opacity: 0; z-index: 1; cursor: inherit;
}
body .bx-delete-input:has(> input:focus-visible) { outline: 3px solid var(--bx-theme-link, #0d6044); outline-offset: 5px; }
@media (hover: hover) {
  body .bx-icon-action:not(:disabled):not([aria-disabled="true"]):not(:has(> input:disabled)):not(.is-dragging):hover {
    --bx-icon-action-face: rgb(255, 69, 69); --bx-icon-action-radius: 50px;
    width: 140px !important; border-radius: 50px !important; background: rgb(255, 69, 69) !important;
  }
  body .bx-delete-action:not(:disabled):not([aria-disabled="true"]):not(:has(> input:disabled)):hover .bx-icon-action__svg { width: 50px; transform: translateY(60%); }
  body .bx-delete-action:not(:disabled):not([aria-disabled="true"]):not(:has(> input:disabled)):hover::before { font-size: 13px; opacity: 1; transform: translateY(30px); }
  body .bx-back-top:not(.is-dragging):hover { background: rgb(181, 160, 255) !important; }
  body .bx-back-top:not(.is-dragging):hover .bx-icon-action__svg { transform: translateY(-200%); }
  body .bx-back-top:not(.is-dragging):hover::before { font-size: 13px; opacity: 1; bottom: auto; }
}
@media (prefers-reduced-motion: reduce) {
  body .bx-icon-action, body .bx-icon-action::before, body .bx-icon-action .bx-icon-action__svg { transition: none; }
}
@media print { body .bx-back-top { display: none !important; } }
