[data-contact]:enabled { cursor: pointer; }
#wechat-contact {
  position: fixed; inset: auto; z-index: 110;
  box-sizing: border-box; margin: 0; width: min(278px, calc(100vw - 24px));
  overflow-y: auto; overscroll-behavior: contain; padding: 17px;
  color: #202024; background: #fff; color-scheme: light;
  border: 1px solid #dedee2; border-radius: 20px;
  box-shadow: 0 14px 50px #15151c24, 0 2px 8px #15151c0d;
  text-align: left; font-family: inherit;
}
#wechat-contact[hidden] { display: none; }
#wechat-contact::backdrop { background: transparent; pointer-events:none; }
.wc-head { display:flex; gap:10px; align-items:center; }
.wc-avatar { display:grid; place-items:center; width:38px; height:38px; border-radius:50%; background:#f2f2f4 center/cover; overflow:hidden; flex:none; }
.wc-context,.wc-guide,.wc-message { color:#65656e; font-size:13px; line-height:1.5; margin:0; }
#contact-name { font-size:17px; font-weight:600; line-height:1.4; margin:0; overflow-wrap:anywhere; }
.wc-close { margin-left:auto; align-self:flex-start; width:32px; height:32px; border-radius:50%; color:#595960; background:#f4f4f5; font:22px/1 system-ui; flex:none; }
.wc-body { margin-top:15px; }
.wc-code { display:block; width:100%; max-height:min(230px,38dvh); object-fit:contain; height:auto; background:#fff; }
.wc-guide { text-align:center; margin:7px 0 14px; }
.wc-actions { display:flex; gap:2px 10px; align-items:center; flex-wrap:wrap; border-top:1px solid #ededf0; padding-top:6px; }
.wc-account { flex:1 1 6em; min-width:0; }
.wc-id { min-width:0; max-width:100%; overflow-wrap:anywhere; user-select:text; font-size:14px; line-height:1.4; color:#303036; }
.wc-links { display:flex; align-items:center; gap:10px; margin-left:auto; }
.wc-links > button,.wc-links > a { display:inline-flex; align-items:center; justify-content:center; min-height:32px; padding:0; border:0; background:transparent; color:#265b8a; font-family:inherit; font-weight:500; font-size:13px; line-height:1.5; text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:3px; cursor:pointer; }
.wc-copy { min-width:3em; }
@media (hover:hover) { .wc-links > :hover { color:#153e65; } }
@media (pointer:coarse) { .wc-links > * { min-width:44px; } .wc-links > button,.wc-links > a { min-height:44px; } }
.wc-retry { font-family:inherit; font-size:13px; font-weight:500; line-height:1.5; color:#35353b; padding:5px 0; cursor:pointer; text-decoration:underline; }
#wechat-contact :focus-visible { outline:2px solid #3477bf; outline-offset:2px; }
@media (prefers-reduced-motion:no-preference) {
  #wechat-contact.wc-open { animation:wc-enter .15s ease-out; }
  @keyframes wc-enter { from { opacity:0; transform:translateY(3px); } to { opacity:1; transform:none; } }
}
