.linkagi-qq-hero { cursor: pointer; }
.linkagi-qq-hero svg { width: 16px; height: 16px; }
.linkagi-qq-footer {
  padding: 0;
  border: 0;
  background: none;
  color: inherit;
  font: inherit;
  cursor: pointer;
}
.linkagi-qq-footer:hover { text-decoration: underline; text-underline-offset: 3px; }
.linkagi-qq-footer:focus-visible { outline: 2px solid #419bdd; outline-offset: 4px; border-radius: 3px; }
#linkagi-qq-dialog {
  box-sizing: border-box;
  margin: auto;
  padding: 28px 24px 16px;
  width: min(390px, calc(100vw - 32px));
  max-height: calc(100dvh - 32px);
  overflow: auto;
  border: 1px solid var(--border, #e5e7eb);
  border-radius: 20px;
  background: var(--background, #fff);
  color: var(--foreground, #171717);
  box-shadow: 0 24px 80px rgb(0 0 0 / 20%);
  text-align: center;
  font-family: inherit;
}
#linkagi-qq-dialog::backdrop { background: rgb(15 23 42 / 42%); backdrop-filter: blur(3px); }
#linkagi-qq-dialog h2 { margin: 0 18px 8px; font-size: 21px; line-height: 1.4; font-weight: 600; }
#linkagi-qq-description { margin: 0 0 18px; color: var(--muted-foreground, #6b7280); font-size: 13px; }
#linkagi-qq-dialog button { font-family: inherit; cursor: pointer; }
#linkagi-qq-dialog button:focus-visible,
#linkagi-qq-dialog a:focus-visible { outline: 2px solid #419bdd; outline-offset: 3px; }
#linkagi-qq-dialog .linkagi-qq-close {
  position: absolute;
  top: 8px;
  right: 8px;
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  padding: 0;
  border: 0;
  border-radius: 10px;
  background: transparent;
  color: var(--muted-foreground, #6b7280);
  font-size: 25px;
  line-height: 1;
}
#linkagi-qq-dialog .linkagi-qq-close:hover { background: var(--muted, #f3f4f6); }
.linkagi-qq-code { display: block; width: min(100%, 264px); margin: auto; border-radius: 12px; overflow: hidden; background: #fff; }
.linkagi-qq-code img { display: block; width: 100%; height: auto; }
.linkagi-qq-number-row { display: flex; justify-content: center; align-items: center; gap: 14px; flex-wrap: wrap; margin-top: 20px; font-size: 14px; }
.linkagi-qq-number-row strong { font-weight: 600; font-variant-numeric: tabular-nums; user-select: text; }
#linkagi-qq-dialog .linkagi-qq-copy { padding: 8px 12px; border: 1px solid var(--border, #e5e7eb); border-radius: 9px; background: var(--muted, #f5f7fa); color: inherit; font-size: 13px; }
#linkagi-qq-dialog .linkagi-qq-copy:hover { filter: brightness(.96); }
.linkagi-qq-feedback { min-height: 18px; margin: 9px 0 0; font-size: 12px; color: var(--muted-foreground, #6b7280); }
.linkagi-qq-copy-buffer { position: fixed; left: 0; top: 0; width: 1px; height: 1px; opacity: 0; }
@media (max-height: 580px) {
  #linkagi-qq-dialog { padding-top: 20px; }
  .linkagi-qq-code { width: min(100%, 190px); }
}

.linkagi-qq-nav { background: transparent; border: 0; cursor: pointer; white-space: nowrap; }
.linkagi-qq-auth { position: absolute; top: 20px; right: 16px; z-index: 10; border: 1px solid var(--border,#e5e7eb); border-radius: 8px; padding: 7px 10px; background: var(--background,#fff); color: var(--foreground,#171717); font: inherit; font-size: 13px; cursor: pointer; }
@media (min-width:640px) { .linkagi-qq-auth { top: 34px; right: 32px; } }
.linkagi-qq-join { display: block; margin: 18px auto 0; padding: 10px 20px; border-radius: 10px; background: #137fb5; color: #fff; font-size: 14px; text-decoration: none; width: fit-content; }
.linkagi-qq-join:hover { background: #116f9e; }
