:root { --avqm-width-closed: 48px; --avqm-radius: 6px; --avqm-shadow: 0 6px 16px rgba(0,0,0,.16); }
.avqm { position: fixed; z-index: 9999; pointer-events: none; }
.avqm .avqm-list { list-style:none; margin:0; padding:0; }
.avqm .avqm-item { margin:8px 0; }
.avqm .avqm-link {
  pointer-events:auto;
  display:flex; align-items:center; gap:10px;
  text-decoration:none;
  background: var(--avqm-bg, #111827);
  color:#fff;
  border-radius: var(--avqm-radius);
  box-shadow: var(--avqm-shadow);
  padding: 12px 14px;
  transform: translateX(0);
  transition: transform .28s ease, opacity .2s ease;
  opacity:.96;
  white-space:nowrap;
  will-change: transform;
}
.avqm .avqm-link:hover, .avqm .avqm-link:focus { opacity:1; }
.avqm .dashicons { font-size:20px; width:20px; height:20px; line-height:20px; }
.avqm .avqm-label { display:inline-block; max-width: 260px; transition: opacity .18s ease, margin .18s ease; }

/* Positioning */
.avqm.avqm--right { right: 0; top:0; bottom:0; display:flex; }
.avqm.avqm--left  { left: 0;  top:0; bottom:0; display:flex; }
.avqm.avqm--right .avqm-list, .avqm.avqm--left .avqm-list { margin:auto 0; }
.avqm.avqm--right.avqm-align--top, .avqm.avqm--left.avqm-align--top { align-items:flex-start; }
.avqm.avqm--right.avqm-align--middle, .avqm.avqm--left.avqm-align--middle { align-items:center; }
.avqm.avqm--right.avqm-align--bottom, .avqm.avqm--left.avqm-align--bottom { align-items:flex-end; }

/* Closed state: only icon peeks in, fills to the edge (rectangular, not pill) */
.avqm.avqm--right .avqm-link { transform: translateX(calc(100% - var(--avqm-width-closed))); border-top-right-radius: 0; border-bottom-right-radius:0; }
.avqm.avqm--left  .avqm-link { transform: translateX(calc(-100% + var(--avqm-width-closed))); border-top-left-radius: 0; border-bottom-left-radius:0; }

/* Hide labels until open */
.avqm .avqm-label { opacity: 0; margin-left: 0; max-width: 0; overflow: hidden; }
.avqm:hover .avqm-label, .avqm.avqm-open .avqm-label { opacity: 1; margin-left: 6px; max-width: 260px; }

/* Open state */
.avqm:hover .avqm-link, .avqm.avqm-open .avqm-link { transform: translateX(0); }

/* Click trigger handle zone to make it easy on touch */
.avqm.avqm-trigger--click { pointer-events:auto; }
.avqm.avqm-trigger--click::after {
  content:"";
  position:absolute; top:0; bottom:0; width: var(--avqm-width-closed);
  right:0;
}
.avqm.avqm--left.avqm-trigger--click::after { left:0; right:auto; }
