/* Shared administrator contact; the supplied QR stays on an opaque white surface. */
.admin-contact-entry {
  display:inline-flex; align-items:center; justify-content:flex-start; gap:8px;
  min-height:44px; padding:6px 0; color:var(--accent); font:inherit; font-size:13px;
  border-radius:7px; white-space:nowrap;
}
.admin-contact-entry svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.7; flex:none; }
.admin-contact-entry:hover { color:var(--text); }
.admin-contact-entry:focus-visible,.admin-contact-dialog button:focus-visible,.admin-contact-dialog a:focus-visible {
  outline:2px solid var(--accent); outline-offset:3px;
}
.admin-contact-mobile { display:none; }
:root #admin-contact-dialog {
  width:min(410px,calc(100vw - 28px)); max-height:calc(var(--mobile-viewport-height,100dvh) - 28px);
  padding:20px; background:var(--surface); backdrop-filter:none; -webkit-backdrop-filter:none;
  overscroll-behavior:contain;
}
.admin-contact-dialog .dialog-heading { margin-bottom:4px; }
.admin-contact-dialog .icon-button { width:44px; height:44px; }
.admin-contact-dialog p { margin:8px 0 16px; color:var(--muted); font-size:13px; line-height:1.7; }
.admin-contact-qr {
  display:block; width:min(270px,100%); height:auto; margin:0 auto 16px;
  background:#fff; border:1px solid var(--line); border-radius:8px;
}
.admin-contact-desktop-help,.admin-contact-phone-help { text-align:center; }
.admin-contact-phone-help { display:none; }
.admin-contact-actions { display:flex; flex-wrap:wrap; justify-content:center; gap:10px; }
.admin-contact-actions a,.admin-contact-actions button {
  display:inline-flex; justify-content:center; align-items:center; min-height:44px;
  padding:8px 16px; border:1px solid var(--control-border); border-radius:8px; font-size:13px;
}
.admin-contact-actions a { border-color:var(--action); text-decoration:none; }
@media(max-width:760px) {
  :root[data-mobile-workbench="true"] .topbar { grid-template-columns:44px minmax(0,1fr) auto 44px; gap:4px; }
  .admin-contact-mobile { display:flex; justify-content:center; grid-column:3; grid-row:1; }
  .admin-contact-mobile .admin-contact-entry { padding:6px 4px; font-size:12px; }
  .admin-contact-mobile .admin-contact-entry svg { display:none; }
  #mobile-new-chat { grid-column:4; }
  .admin-contact-desktop-help { display:none; }
  .admin-contact-phone-help { display:block; }
  :root #admin-contact-dialog { padding:16px; }
}
