/* ARTIZS.SAY v0.5.15 — 1s deliberate hover + upper-right message actions */

/*
 * Desktop message actions no longer sit below a message. JavaScript positions
 * this overlay beside/above the actual bubble or media and reveals it only
 * after a one-second stationary hover. Nothing is added to normal chat flow.
 */
.msg-actions,
.msg-actions.no-persistent-actions{
  position:absolute!important;
  left:var(--message-action-left,0)!important;
  top:var(--message-action-top,0)!important;
  right:auto!important;
  bottom:auto!important;
  z-index:72!important;
  width:max-content!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
  display:flex!important;
  align-items:center!important;
  gap:4px!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transform:translateY(-2px) scale(.985);
  transform-origin:center;
  transition:opacity .14s ease,transform .14s ease,visibility .14s ease!important;
}

/* Keyboard focus remains immediate for accessibility. Touch uses actions-open. */
.message.actions-visible .msg-actions,
.message.actions-open .msg-actions,
.message:focus-within .msg-actions{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  transform:translateY(0) scale(1);
}

/* Important: a plain desktop hover must NOT bypass the 1 second timer. */
@media (hover:hover) and (pointer:fine){
  .message:hover .msg-actions:not(:focus-within),
  .message:not(.actions-visible):not(.actions-open):hover .msg-actions{
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translateY(-2px) scale(.985)!important;
  }
  .message.actions-visible:hover .msg-actions,
  .message.actions-open:hover .msg-actions,
  .message:focus-within .msg-actions{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translateY(0) scale(1)!important;
  }
}

/* Slightly more separation between message rows now that actions are floating. */
.message{padding-top:10px!important;padding-bottom:10px!important}

/* The popup remains attached to the neutral reaction button, not the chat row. */
.message-reaction-picker{z-index:110!important}
.message-more-menu{z-index:110!important}

@media (hover:none){
  .message:not(.actions-open):not(:focus-within) .msg-actions{
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }
  .message.actions-open .msg-actions,
  .message:focus-within .msg-actions{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translateY(0) scale(1)!important;
  }
}
