/* v1.0.30 — independent centered publisher cards, full reader, swipe physics, clean Moments */
#chat-items .message-line.official-push-line{display:flex!important;width:100%!important;max-width:100%!important;justify-content:center!important;align-items:stretch!important;flex-direction:row!important;margin:14px 0 20px!important;padding:0!important;animation:none!important;box-sizing:border-box!important}
#chat-items .official-push-content{display:block!important;flex:none!important;width:min(370px,calc(100% - 24px))!important;max-width:370px!important;margin:0 auto!important;min-width:0!important}
#chat-items .official-push-content .qy-broadcast-card{display:flex!important;flex-direction:column!important;align-items:stretch!important;overflow:hidden!important;width:100%!important;min-width:0!important;max-width:none!important;white-space:normal!important;text-align:left!important;border:1px solid #e6eaf0!important;border-radius:5px!important;background:#fff!important;box-shadow:0 3px 14px #16274213!important;padding:0!important;margin:0!important;color:#25364c!important}
#chat-items .official-push-content button.qy-broadcast-card{font:inherit!important;cursor:pointer!important;-webkit-tap-highlight-color:transparent}
#chat-items .official-push-content button.qy-broadcast-card:active{transform:scale(.992);background:#fafbfe!important}
#chat-items .official-push-content button.qy-broadcast-card:focus-visible{outline:2px solid #376de0;outline-offset:3px}
#chat-items .official-push-content .qy-broadcast-cover{width:100%!important;aspect-ratio:2.35/1!important;max-height:205px!important;object-fit:cover!important;border-radius:0!important}
#chat-items .official-push-content .qy-broadcast-copy{display:block!important;padding:12px 14px 13px!important}
#chat-items .official-push-content .qy-broadcast-copy strong{display:block!important;font-size:14px!important;font-weight:680!important;line-height:1.5!important;color:#293342!important}
#chat-items .official-push-content .qy-broadcast-summary{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;margin-top:5px;font-size:12px;line-height:1.55;color:#8994a2}
#chat-items .official-push-content .qy-broadcast-caption{display:block!important;margin:0!important;padding:0 14px 12px!important;font-size:12px!important;line-height:1.55!important;color:#7d8998!important;white-space:pre-wrap!important}
#chat-items .official-push-content .msg-meta{display:flex!important;justify-content:center!important;text-align:center!important;margin:7px 0 0!important;color:#9ba5b3!important;font-size:10px!important}
/* Full reader: desktop gets a reading workspace; mobile gets a true native-size page. */
#modal-layer.qy-article-layer{padding:0!important;align-items:stretch!important;justify-content:center!important;background:#fff!important;backdrop-filter:none!important}
#modal-layer.qy-article-layer>.modal{display:flex!important;flex-direction:column!important;width:100%!important;max-width:none!important;min-width:0!important;height:100dvh!important;max-height:100dvh!important;margin:0!important;border:0!important;border-radius:0!important;padding:0!important;overflow:hidden!important;background:#fff!important;box-shadow:none!important}
.qy-reader-head{height:calc(58px + env(safe-area-inset-top));flex:none;display:grid;grid-template-columns:56px 1fr 56px;align-items:center;padding:env(safe-area-inset-top) 12px 0;border-bottom:1px solid #f0f1f3;background:#fff}
.qy-reader-head button{display:grid;place-items:center;border:0;background:none;color:#243248;width:42px;height:42px;cursor:pointer}
.qy-reader-head button .ico{height:23px;width:23px}
.qy-reader-head>span{text-align:center;font-size:15px;font-weight:650;color:#253145}
.qy-reader{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;width:100%;max-width:800px;margin:0 auto;padding:46px 28px max(72px,env(safe-area-inset-bottom));background:#fff;scrollbar-width:thin}
.qy-reader-intro h1{margin:0 0 17px;font-size:30px;line-height:1.38;letter-spacing:-.6px;font-weight:750;color:#1f2733;overflow-wrap:anywhere}
.qy-reader-byline{display:flex;align-items:center;gap:14px;flex-wrap:wrap;font-size:13px;line-height:1.5}
.qy-reader-publisher{color:#3661a2;font-weight:640}.qy-reader-byline time{color:#a0a6b0;font-size:12px}
.qy-reader-summary{margin:34px 0 0;background:#f6f7f9;border-left:3px solid #b6c7e1;padding:15px 18px;font-size:15px;line-height:1.85;color:#677486;white-space:pre-wrap;overflow-wrap:anywhere}
.qy-reader-body{margin:36px 0 0;font-size:17px;line-height:2.05;letter-spacing:.1px;color:#333944;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}
.qy-reader-end{display:flex;justify-content:space-between;gap:12px;padding:20px 0;margin:65px 0 0;border-top:1px solid #edf0f4;color:#69809e;font-size:12px}
.qy-reader-end small{color:#a1a9b6}
@media(max-width:760px){.qy-reader{padding:29px 20px max(56px,env(safe-area-inset-bottom))}.qy-reader-intro h1{font-size:24px;line-height:1.43}.qy-reader-body{font-size:16px;line-height:1.95}.qy-reader-summary{margin-top:25px;padding:12px 14px;font-size:14px}.qy-reader-end{margin-top:42px}}
/* Moments cover contains no slogan; profile sits on the cover edge, name then avatar. */
.moments-app .moments-cover{overflow:visible!important;isolation:isolate}
.moments-app .moments-cover-caption{display:none!important}
.moments-app .moments-profile{position:absolute;right:24px;bottom:-28px;z-index:3;display:flex;align-items:center;justify-content:flex-end;gap:13px;max-width:calc(100% - 40px)}
.moments-app .moments-profile-name{font-size:16px;font-weight:700;color:#fff;text-shadow:0 1px 6px #172b50a6;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-bottom:20px}
.moments-app .moments-profile .moments-author-avatar{margin:0!important;width:66px!important;height:66px!important;flex:none!important;border:3px solid #fff!important;border-radius:6px!important;box-shadow:0 3px 13px #17223525!important;background:var(--moments-avatar-bg,#d9e5f9)!important;color:#314866!important}
.moments-app .moments-feed{padding-top:49px!important}
@media(max-width:440px){.moments-app .moments-profile{right:16px;bottom:-24px}.moments-app .moments-profile .moments-author-avatar{width:61px!important;height:61px!important}.moments-app .moments-feed{padding-top:47px!important}}
/* Swipe follows touch displacement. Only settle/rebound is animated. */
.conversation-swipe .conversation{transform:translate3d(var(--swipe-offset,0px),0,0)!important;transition:transform .26s cubic-bezier(.2,.8,.24,1),background .16s!important;will-change:transform;backface-visibility:hidden;touch-action:pan-y!important}
.conversation-swipe.is-open .conversation{transform:translate3d(var(--swipe-offset,-80px),0,0)!important}
.conversation-swipe.is-dragging .conversation{transition:none!important}
.conversation-swipe.is-dragging .conversation-swipe-delete{visibility:visible!important}
.conversation-swipe .conversation:active{scale:none!important}
/* Send stays focused during consecutive taps; no blur / keyboard flicker. */
.composer .send-btn{touch-action:manipulation}
@media(prefers-reduced-motion:reduce){.conversation-swipe .conversation{transition:none!important}.official-push-content .qy-broadcast-card{transition:none!important}}
