#zjAuthDialog{width:440px;max-width:calc(100vw - 28px);max-height:calc(100dvh - 32px);margin:auto;padding:0;border:1px solid #e8eaee;border-radius:12px;background:#fff;color:#222630;font:14px/1.6 "Microsoft YaHei","PingFang SC",system-ui,sans-serif;box-shadow:0 20px 70px #22263026;overflow:auto;color-scheme:light}
#zjAuthDialog::backdrop{background:#22263066}
.zj-auth-sdk-backdrop{position:fixed;inset:0;z-index:999900;background:#22263066}
/* 原生 dialog 在 iOS 15.4 以前不可用；旧版手机沿用白色弹窗。 */
dialog:not([open]){display:none!important}
.zj-dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(28,37,58,.47)}
dialog.zj-dialog-fallback[open]{display:block;position:fixed;top:50%;top:var(--zj-dialog-mid,50%);right:0;bottom:auto;left:0;transform:translateY(-50%);margin:0 auto;width:calc(100% - 24px);max-width:620px;max-height:calc(100vh - 24px);max-height:calc(var(--zj-dialog-height,100vh) - 24px);overflow:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;box-sizing:border-box}
dialog.detail-dialog.zj-dialog-fallback[open]{max-width:960px}
dialog.photo-dialog.zj-dialog-fallback[open]{max-width:calc(100% - 24px)}
dialog.photo-dialog.zj-dialog-fallback img{max-height:calc(100vh - 100px);max-height:calc(var(--zj-dialog-height,100vh) - 100px);max-width:100%;object-fit:contain}
dialog.zj-dialog-fallback .icon-button{min-width:44px;min-height:44px}
dialog.photo-dialog.zj-dialog-fallback>.icon-button{position:sticky;float:right;top:0;right:0;margin-top:-36px;z-index:3}
dialog.filter-dialog.zj-dialog-fallback[open]{top:auto;bottom:0;transform:none;width:100%;max-width:100%;max-height:87vh;max-height:calc(var(--zj-dialog-height,100vh) * .87)}
dialog.zjt-chat.zj-dialog-fallback[open]{display:flex;max-width:1020px;height:calc(100vh - 24px);height:calc(var(--zj-dialog-height,100vh) - 24px);overflow:hidden}
@media(max-width:700px){dialog.zj-dialog-fallback[open]{max-width:calc(100% - 24px)}dialog.zjt-dialog.zj-dialog-fallback[open]{width:100%;max-width:100%;border-radius:0;max-height:100vh;max-height:var(--zj-dialog-height,100vh)}dialog.zjt-chat.zj-dialog-fallback[open]{height:100vh;height:var(--zj-dialog-height,100vh)}}
#zjAuthDialog [id^="zjAuth"],#zjAuthDialog [class^="zj-auth-"]{box-sizing:border-box}
#zjAuthDialog [hidden]{display:none!important}
#zjAuthDialog .zj-auth-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:20px 24px;border-bottom:1px solid #e8eaee}
#zjAuthDialog #zjAuthTitle{margin:0;font-size:19px;font-weight:700;line-height:1.4;letter-spacing:0}
#zjAuthDialog .zj-auth-close{display:grid;place-items:center;flex:none;width:34px;height:34px;padding:7px;border:0;border-radius:5px;background:transparent;color:#5c6370;cursor:pointer}
#zjAuthDialog .zj-auth-close:hover{background:#f5f6f8;color:#222630}
#zjAuthDialog .zj-auth-close svg,#zjAuthDialog .zj-auth-slider-handle svg{width:20px;height:20px;stroke-linecap:round;stroke-linejoin:round}
#zjAuthDialog .zj-auth-body{padding:22px 24px 26px}
#zjAuthDialog .zj-auth-intro{margin:0 0 22px;color:#5c6370;font-size:13px;line-height:1.8}
#zjAuthDialog .zj-auth-label{display:block;margin:18px 0 7px;font-size:13px;font-weight:600;color:#222630}
#zjAuthDialog .zj-auth-label:first-child{margin-top:0}
#zjAuthDialog .zj-auth-input,#zjAuthDialog .zj-auth-button,#zjAuthDialog .zj-auth-close,#zjAuthDialog .zj-auth-text-button,#zjAuthDialog .zj-auth-slider-handle{font:inherit}
#zjAuthDialog .zj-auth-input{display:block;min-width:0;width:100%;height:44px;border:1px solid #cfd3da;border-radius:5px;padding:10px 12px;background:#fff;color:#222630;caret-color:#b7430a;font-size:14px;line-height:22px;transition:border-color .15s}
#zjAuthDialog .zj-auth-input::placeholder{color:#686e79;opacity:1}
#zjAuthDialog .zj-auth-input:hover{border-color:#969dab}
#zjAuthDialog .zj-auth-input:disabled{background:#f5f6f8;color:#5c6370}
#zjAuthDialog .zj-auth-input:read-only{background:#f5f6f8}
#zjAuthDialog .zj-auth-code-row,#zjAuthDialog .zj-auth-captcha-row{display:grid;grid-template-columns:minmax(0,1fr) 126px;gap:10px}
#zjAuthDialog .zj-auth-captcha-image{height:44px;min-width:0;border:1px solid #cfd3da;border-radius:5px;padding:0;background:#f5f6f8;overflow:hidden;cursor:pointer;color:#5c6370;font-size:12px}
#zjAuthDialog .zj-auth-captcha-image img{display:block;width:100%;height:100%;object-fit:contain}
#zjAuthDialog .zj-auth-help{margin:6px 0 0;color:#686e79;font-size:12px}
#zjAuthDialog .zj-auth-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border:1px solid #cfd3da;border-radius:5px;padding:9px 14px;background:#fff;color:#222630;font-size:13px;font-weight:600;cursor:pointer;line-height:1.5;transition:background .15s,border-color .15s}
#zjAuthDialog .zj-auth-button:hover{border-color:#d9a789;background:#fff8f2;color:#b7430a}
#zjAuthDialog .zj-auth-send{white-space:nowrap;padding-inline:8px;font-variant-numeric:tabular-nums}
#zjAuthDialog .zj-auth-primary{width:100%;min-height:46px;margin-top:18px;border-color:#ff7d2e;background:#ff7d2e;color:#331d0d;font-size:15px}
#zjAuthDialog .zj-auth-primary:hover{border-color:#f46e1c;background:#f46e1c;color:#331d0d}
#zjAuthDialog .zj-auth-button:disabled,#zjAuthDialog .zj-auth-close:disabled,#zjAuthDialog .zj-auth-text-button:disabled,#zjAuthDialog .zj-auth-slider-handle:disabled{border-color:#e3e5e9!important;background:#eceef1!important;color:#686e79!important;cursor:not-allowed}
#zjAuthDialog .zj-auth-consent{display:flex;align-items:flex-start;gap:9px;margin:20px 0 0;font-size:12px;line-height:1.9;color:#5c6370;cursor:pointer}
#zjAuthDialog .zj-auth-consent input{flex:none;width:16px;height:16px;min-height:16px;margin:3px 0 0;accent-color:#b7430a;cursor:pointer}
#zjAuthDialog .zj-auth-consent a{color:#b7430a;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
#zjAuthDialog .zj-auth-message{margin:16px 0 0;padding:11px 12px;border:1px solid #d5e7db;border-radius:5px;background:#edf6f0;color:#28724e;font-size:13px;line-height:1.7;overflow-wrap:anywhere}
#zjAuthDialog .zj-auth-message.is-error{border-color:#edc9c3;background:#fff0ee;color:#aa2d22}
#zjAuthDialog .zj-auth-test-code{margin-top:12px;padding:9px 12px;border:1px dashed #d9a789;border-radius:5px;background:#fff1e7;color:#b7430a;font-size:12px}
#zjAuthDialog .zj-auth-profile>span{display:block;color:#686e79;font-size:12px}
#zjAuthDialog .zj-auth-profile>strong{display:block;margin-top:7px;font-size:25px;line-height:1.5;font-weight:700;font-variant-numeric:tabular-nums}
#zjAuthDialog .zj-auth-profile>p{margin:10px 0 22px;font-size:13px;color:#5c6370}
#zjAuthDialog .zj-auth-profile>.zj-auth-button{width:100%;margin-top:10px}
#zjAuthDialog .zj-auth-logout{color:#aa2d22}
#zjAuthDialog [id^="zjAuth"]:focus-visible,#zjAuthDialog .zj-auth-consent a:focus-visible{outline:3px solid #a84316;outline-offset:3px}
#zjAuthDialog ::selection{background:#ffd8bb;color:#642600}
#zjAuthDialog{scrollbar-color:#bdc2cb #f0f1f4}
#zjAuthDialog .zj-auth-slider-step{margin:0}
#zjAuthDialog .zj-auth-slider-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 4px}
#zjAuthDialog .zj-auth-slider-heading h3{margin:0;color:#222630;font-size:16px;line-height:1.5}
#zjAuthDialog .zj-auth-text-button{min-height:44px;padding:8px 0;border:0;background:transparent;color:#a13d0b;font-size:13px;line-height:1.6;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
#zjAuthDialog .zj-auth-slider-scene{position:relative;width:300px;max-width:100%;margin:16px auto 0;border:1px solid #d9dde3;border-radius:6px;overflow:hidden;background:#f5f6f8;user-select:none;-webkit-user-select:none;pointer-events:none}
#zjAuthDialog .zj-auth-slider-scene>img:first-child{display:block;width:100%;height:auto;margin:0}
#zjAuthDialog .zj-auth-slider-piece{position:absolute;height:auto;max-width:none;filter:drop-shadow(0 2px 3px #22263040)}
#zjAuthDialog .zj-auth-slider-status{margin:16px 0;color:#5c6370;font-size:13px;line-height:1.6}
#zjAuthDialog .zj-auth-slider-step .zj-auth-consent{margin:16px 0 14px}
#zjAuthDialog .zj-auth-slider-track{position:relative;width:300px;max-width:100%;height:46px;margin:12px auto 0;border:1px solid #cfd3da;border-radius:6px;background:#f0f1f4;touch-action:none;overscroll-behavior:contain;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}
#zjAuthDialog .zj-auth-slider-fill{position:absolute;top:0;bottom:0;left:0;max-width:100%;border-radius:5px;background:#ffe4d1;pointer-events:none}
#zjAuthDialog .zj-auth-slider-caption{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding-left:40px;color:#5c6370;font-size:12px;line-height:1.5;pointer-events:none}
#zjAuthDialog .zj-auth-slider-handle{position:absolute;top:0;left:0;display:grid;place-items:center;width:44px;height:44px;min-height:44px;margin:0;padding:10px;border:0;border-right:1px solid #d79260;border-radius:5px;background:#fff1e7;color:#933409;cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none;will-change:transform}
#zjAuthDialog .zj-auth-slider-handle:active{cursor:grabbing;background:#ffdbbf}
#zjAuthDialog .zj-auth-slider-handle:disabled{border-right:1px solid #d4d9e1!important}
#zjAuthDialog .zj-auth-slider-refresh{display:block;margin:4px auto 0}
@media(max-width:700px){#zjAuthDialog{width:calc(100vw - 28px);border-radius:10px}#zjAuthDialog .zj-auth-head{padding:17px 20px}#zjAuthDialog #zjAuthTitle{font-size:18px}#zjAuthDialog .zj-auth-body{padding:20px}#zjAuthDialog .zj-auth-input{font-size:16px}#zjAuthDialog .zj-auth-consent{font-size:12px}#zjAuthDialog .zj-auth-code-row,#zjAuthDialog .zj-auth-captcha-row{grid-template-columns:minmax(0,1fr) 116px}}
@media(max-width:360px){#zjAuthDialog .zj-auth-head,#zjAuthDialog .zj-auth-body{padding-inline:16px}#zjAuthDialog .zj-auth-code-row,#zjAuthDialog .zj-auth-captcha-row{grid-template-columns:minmax(0,1fr) 108px;gap:8px}#zjAuthDialog .zj-auth-send{font-size:12px}}
/* 将操作轨道收进弹窗，避免手指从手机屏幕边缘开始；仅轨道隔离拖动。 */
@media(max-width:700px){#zjAuthDialog .zj-auth-slider-step{padding-inline:12px}#zjAuthDialog .zj-auth-slider-track{height:50px}#zjAuthDialog .zj-auth-slider-handle{width:48px;height:48px;min-height:48px}#zjAuthDialog .zj-auth-slider-heading{gap:8px}#zjAuthDialog .zj-auth-slider-heading h3{font-size:15px}#zjAuthDialog .zj-auth-slider-heading .zj-auth-text-button{flex:none;font-size:12px}}
@media(prefers-reduced-motion:reduce){html:not([data-motion="full"]) #zjAuthDialog *{transition:none!important}}
/* 交易、客服和茶坛共用表情面板；颜色延用白底与交易橙。 */
.zj-emoji-tools{position:relative;min-width:0;margin:8px 0;font:14px/1.5 "Microsoft YaHei","PingFang SC",system-ui,sans-serif;color:#222630;text-align:left}
.zj-emoji-tools *{box-sizing:border-box}
.zj-emoji-tools [hidden]{display:none!important}
.zj-emoji-tools button{width:auto;min-height:44px;margin:0;border:1px solid transparent;border-radius:5px;padding:7px 10px;background:#fff;color:#515866;font:inherit;line-height:1.4;cursor:pointer;box-shadow:none}
.zj-emoji-tools .zj-emoji-trigger{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;border-color:#d9dde3;padding:7px 12px;color:#515866}
.zj-emoji-trigger svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.zj-emoji-tools button:hover{background:#fff1e7;color:#a13d0b}
.zj-emoji-tools button:disabled{opacity:.55;cursor:not-allowed;background:#f3f4f6;color:#686e79}
.zj-emoji-tools :focus{outline:2px solid #b7430a;outline-offset:2px}
.zj-emoji-tools :focus:not(:focus-visible){outline:none}
.zj-emoji-tools .zj-emoji-panel{display:flex;flex-direction:column;gap:8px;width:400px;max-width:100%;margin:8px 0 0;padding:12px;border:1px solid #d9dde3;border-radius:8px;background:#fff;box-shadow:0 8px 24px #22263014;max-height:340px;overflow:auto;-webkit-overflow-scrolling:touch}
.zj-emoji-head{display:flex;align-items:center;justify-content:space-between;flex-shrink:0;gap:12px;min-height:32px}
.zj-emoji-head strong{font-size:14px;font-weight:600}
.zj-emoji-tools .zj-emoji-dismiss{min-height:32px;padding:4px 8px;font-size:12px}
.zj-emoji-tools .zj-emoji-search{display:block;flex-shrink:0;margin:0;width:100%}
.zj-emoji-tools .zj-emoji-search input{display:block;width:100%;min-width:0;min-height:40px;margin:0;border:1px solid #d9dde3;border-radius:5px;padding:8px 10px;background:#f8f9fb;color:#222630;font:14px/1.5 "Microsoft YaHei","PingFang SC",system-ui,sans-serif;caret-color:#b7430a;box-shadow:none}
.zj-emoji-search input::placeholder{color:#686e79;opacity:1}
.zj-emoji-categories{display:flex;flex-shrink:0;gap:2px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
.zj-emoji-tools .zj-emoji-categories button{flex:1 0 auto;min-height:38px;padding:6px 8px;white-space:nowrap;font-size:12px}
.zj-emoji-tools .zj-emoji-categories button[aria-pressed="true"]{background:#fff1e7;color:#a13d0b;font-weight:600}
.zj-emoji-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(44px,1fr));gap:3px;min-height:44px;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scrollbar-color:#bdc2cb #f0f1f4}
.zj-emoji-tools .zj-emoji-choice{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:3px;font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;font-size:25px;line-height:1.3}
.zj-emoji-tools .zj-emoji-status{flex-shrink:0;margin:0;color:#686e79;font-size:12px;line-height:1.6;overflow-wrap:break-word}
.zj-emoji-status:empty{display:none}
.zj-emoji-sr{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.zj-emoji-tools ::selection{background:#ffd8bb;color:#642600}
.zjt-chat-compose{position:relative}
.zjt-chat-compose .zj-emoji-tools{position:static;display:inline-flex;margin:0}
.zjt-chat-compose .zj-emoji-panel{position:absolute;bottom:calc(100% - 60px);left:14px;z-index:5;margin:0;max-width:calc(100% - 28px);max-height:calc(100vh - 230px);max-height:calc(var(--zj-dialog-height,100vh) - 230px)}
@media(max-width:700px){.zj-emoji-tools .zj-emoji-search input{font-size:16px}.zj-emoji-tools .zj-emoji-panel{padding:10px;gap:6px}.zj-emoji-tools .zj-emoji-trigger{min-height:44px}.zjt-chat-compose .zj-emoji-panel{max-height:calc(100vh - 210px);max-height:calc(var(--zj-dialog-height,100vh) - 210px)}}
@media(max-height:480px){.zjt-chat-compose .zj-emoji-head{display:none}.zjt-chat-compose .zj-emoji-panel{gap:4px;padding:6px;max-height:calc(100vh - 230px);max-height:calc(var(--zj-dialog-height,100vh) - 230px)}.zjt-chat-compose .zj-emoji-search input{min-height:34px;padding:4px 8px}.zjt-chat-compose .zj-emoji-categories button{min-height:32px;padding:3px 6px}}
@media(max-height:480px){.zjt-chat .zjt-conversation-head{padding:6px 14px}.zjt-chat .zjt-conversation-head p{display:none}.zjt-chat .zjt-messages{min-height:0;padding:4px 14px}.zjt-chat .zjt-room{max-height:64px}.zjt-chat .zjt-head p{display:none}}

/* 区服是交易和组队的关键条件：明确标签、加粗实值，允许长服名完整换行。 */
.zj-server-badge{display:inline-flex;align-items:baseline;gap:6px;max-width:100%;padding:4px 9px;border:1px solid #e7b591;border-radius:5px;background:#fff1e7;color:#933409;font-size:13px;font-weight:700;line-height:1.6;vertical-align:middle;box-sizing:border-box;text-align:left;white-space:normal}
.zj-server-badge .zj-server-caption{flex:none;color:#933409;font-size:11px;font-weight:500;line-height:inherit;white-space:nowrap}
.zj-server-badge strong{min-width:0;color:#933409;font-size:inherit;font-weight:700;line-height:inherit;overflow-wrap:anywhere;word-break:break-word}
.zj-server-line{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin:8px 0}
.zj-server-field,.zj-server-title{color:#933409;font-weight:600}
.zj-server-field select,select.zj-server-select{border:1px solid #d79260;background-color:#fff8f2;color:#7e2c08;font-weight:700}
.zj-server-field select:disabled,select.zj-server-select:disabled{border-color:#d4d9e1;background-color:#f4f5f7;color:#686e79}
.zj-server-field select:focus,select.zj-server-select:focus{outline:2px solid #a84316;outline-offset:2px}
.product-kinds{flex-wrap:wrap;gap:7px;min-height:30px}
.product-kinds>.zj-server-badge{border:1px solid #e7b591;padding:4px 8px}
.post-facts>.zj-server-fact{grid-column:1/-1}
.zj-server-fact dd{display:flex;align-items:flex-start;flex-wrap:wrap;gap:7px}
.region-cell .zj-server-badge{display:inline-flex;color:#933409;font-size:13px;margin:4px 0 0}
.region-cell .zj-server-caption{display:inline;color:#933409;font-size:11px;margin:0}
@media(max-width:700px){.zj-server-badge{font-size:12px;padding:4px 7px;gap:5px}.zj-server-badge .zj-server-caption{font-size:10px}.product-kinds{gap:5px;min-height:28px}.product-kinds>.zj-server-badge{padding:3px 6px}.region-cell .zj-server-badge{font-size:12px}.zj-server-line{gap:6px}}

.zjt-dialog .zj-server-badge{font-size:13px}
.zjt-dialog .zj-server-badge strong{display:inline;font-size:inherit;line-height:inherit;color:inherit;max-height:none;overflow:visible;-webkit-line-clamp:unset}
.zjt-room .zj-server-badge{align-self:flex-start;flex-shrink:0}
.zjt-dialog .zj-server-badge .zj-server-caption{font-size:11px}
@media(max-width:700px){.zjt-dialog .zj-server-badge{font-size:12px}.zjt-room{max-height:none}.zjt-rooms{max-height:140px}.zjt-dialog .zj-server-badge .zj-server-caption{font-size:10px}}
