.agentPwdForm[data-v-5a7fbaf6]{flex-direction:column;gap:12px;display:flex}.adminLoginFooter[data-v-5ffef083]{justify-content:space-between;gap:12px;display:flex}select.adminFieldInput[data-v-5ffef083]{appearance:auto}:root{--bg:#ededed;--bg2:#f7f7f7;--text:#111;--muted:#00000085;--line:#0000001a;--wechat-green:#95ec69;--bubble:#fff;--rpx:calc(100vw / 750);--composer-bottom:calc(10 * var(--rpx))}*{box-sizing:border-box}html,body{touch-action:pan-x pan-y;width:100%;max-width:100%;height:100%;overflow-x:hidden}body{background:var(--bg);color:var(--text);-webkit-text-size-adjust:100%;overscroll-behavior-x:none;margin:0;font-family:ui-sans-serif,system-ui,-apple-system,PingFang SC,Microsoft YaHei,Segoe UI,Roboto,Arial}a{color:inherit}button,input,textarea{font:inherit}.app{touch-action:pan-x pan-y;width:100%;max-width:100%;height:100dvh;overflow-x:hidden}.wechat{background:var(--bg);touch-action:pan-x pan-y;flex-direction:column;width:100%;max-width:min(980px,100%);height:100dvh;margin:0 auto;display:flex;overflow-x:hidden}.wcTop{height:52px;padding:env(safe-area-inset-top) 12px 0;background:var(--bg2);border-bottom:1px solid var(--line);grid-template-columns:1fr auto 1fr;align-items:flex-end;gap:8px;min-width:0;display:grid}.wcTopSide{align-items:center;min-width:0;height:52px;display:flex}.wcTopLeft{justify-content:flex-start}.wcTopRight{justify-content:flex-end;gap:8px}.wcTopTitle{text-align:center;text-overflow:ellipsis;white-space:nowrap;pointer-events:none;justify-content:center;align-items:center;max-width:100%;height:52px;font-size:16px;font-weight:600;display:flex;overflow:hidden}.wcBack{width:34px;height:34px;color:var(--muted);cursor:pointer;background:0 0;border:0;flex-shrink:0;place-items:center;padding:0;font-size:22px;display:grid}.wcBack:active{opacity:.65}.wcConn{color:var(--muted);border:1px solid var(--line);background:#fff;border-radius:999px;padding:6px 10px;font-size:12px}.wcConn.on{color:#0a7a2f;border-color:#0a7a2f38}.wcUnreadBadge{color:#fff;background:#f44336;border-color:#f44336}.wcSeatBadge{color:#0a7a2f;text-overflow:ellipsis;white-space:nowrap;background:#95ec6933;border-color:#0a7a2f38;max-width:42vw;overflow:hidden}.wcNav{text-decoration:none}.wcMain{flex-direction:column;flex:1;min-height:0;display:flex}.agentLayout{flex-direction:row}.chatPanel{flex-direction:column;flex:1;min-width:0;display:flex}.agentSeatPicker .seatPickerMain{min-height:0;padding:16px max(12px, env(safe-area-inset-right)) 24px max(12px, env(safe-area-inset-left));flex:1;overflow-y:auto}.seatPickerHint{color:var(--muted);margin:0 0 12px;font-size:13px}.seatPickerError{color:#b71c1c;background:#fff5f5;border:1px solid #ffcdd2;border-radius:8px;margin-bottom:12px;padding:10px 12px;font-size:13px}.seatGrid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;display:grid}.seatCard{border:1px solid var(--line);text-align:left;cursor:pointer;background:#fff;border-radius:10px;flex-direction:column;align-items:flex-start;gap:6px;padding:14px 12px;display:flex}.seatCard strong{font-size:15px}.seatCard span{color:#0a7a2f;font-size:12px}.seatCard.occupied span{color:var(--muted)}.seatCard.occupied,.seatCard:disabled{opacity:.72;cursor:not-allowed;background:#f5f5f5}.seatCard:not(:disabled):active{background:#f0f0f0}.seatFullOverlay{z-index:40;background:#00000073;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.seatFullCard{text-align:center;background:#fff;border-radius:12px;width:min(320px,100%);padding:20px 16px;box-shadow:0 8px 24px #0000001f}.seatFullCard strong{margin-bottom:8px;font-size:16px;display:block}.seatFullCard p{color:var(--muted);margin:0 0 14px;font-size:13px;line-height:1.5}.transferReason{width:100%;margin-top:8px}.transferError{color:#b71c1c;margin:8px 0 0;font-size:12px}.transferBar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:6px;display:flex}.transferHint{color:var(--muted);font-size:12px}.transferBar .quickBtn:disabled{opacity:.45;cursor:not-allowed}.transferPanel{border:1px solid var(--line);background:#fff;border-radius:10px;margin-bottom:8px;padding:8px}.ticketRemarkInput{resize:vertical;width:100%;min-height:56px;margin-top:8px}.ticketReplyBox{background:linear-gradient(#0d8f4f0f 0%,#0d8f4f05 100%);border:1px solid #0d8f4f24;border-radius:12px;margin-top:14px;padding:14px}.ticketReplyBox--compact{margin-top:12px;padding:12px}.ticketReplyBox-label{color:#0d8f4f;letter-spacing:.02em;margin:0 0 8px;font-size:12px;font-weight:600;display:block}.ticketReplyBox-textarea{box-sizing:border-box;resize:vertical;background:#fff;border:1px solid #0000001a;border-radius:10px;width:100%;min-height:72px;padding:10px 12px;font-family:inherit;font-size:14px;line-height:1.5;transition:border-color .15s,box-shadow .15s;display:block}.ticketReplyBox-textarea::placeholder{color:#00000059}.ticketReplyBox-textarea:focus{border-color:#0d8f4f;outline:none;box-shadow:0 0 0 3px #0d8f4f1f}.ticketReplyBox-foot{justify-content:flex-end;margin-top:10px;display:flex}.ticketReplyBox-btn{color:#fff;cursor:pointer;background:linear-gradient(#2aae67 0%,#0d8f4f 100%);border:0;border-radius:10px;min-width:108px;height:36px;padding:0 18px;font-size:14px;font-weight:600;transition:box-shadow .15s,transform .12s,opacity .15s;box-shadow:0 2px 8px #0d8f4f4d}.ticketReplyBox-btn:hover:not(:disabled){box-shadow:0 4px 12px #0d8f4f61}.ticketReplyBox-btn:active:not(:disabled){transform:scale(.98)}.ticketReplyBox-btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.ticketToolbar{background:#f6f7f8;border:1px solid #0000000f;border-radius:12px;flex-wrap:wrap;align-items:flex-end;gap:12px;margin-top:12px;padding:12px 14px;display:flex}.ticketToolbar--compact{gap:10px;margin-top:10px;padding:10px 12px}.ticketToolbar-field{flex-direction:column;gap:6px;min-width:120px;display:flex}.ticketToolbar-fieldGrow{flex:1;min-width:140px}.ticketToolbar-label{color:var(--muted);text-transform:none;letter-spacing:.02em;font-size:11px;font-weight:600}.ticketToolbar-select{height:36px;color:var(--text,#222);appearance:none;cursor:pointer;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23999' d='M1 1l5 5 5-5'/%3E%3C/svg%3E") right 12px center no-repeat;border:1px solid #0000001a;border-radius:10px;padding:0 32px 0 12px;font-size:13px;transition:border-color .15s}.ticketToolbar-select:focus{border-color:#0d8f4f;outline:none}.ticketToolbar-btn{color:#000000c7;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #0000001f;border-radius:10px;flex-shrink:0;height:36px;padding:0 16px;font-size:13px;font-weight:600;transition:background .15s,border-color .15s}.ticketToolbar-btn:hover:not(:disabled){color:#0d8f4f;background:#fff;border-color:#0d8f4f}.ticketToolbar-btn:disabled{opacity:.5;cursor:not-allowed}@media (width<=520px){.ticketToolbar{flex-direction:column;align-items:stretch}.ticketToolbar-field,.ticketToolbar-fieldGrow{width:100%;min-width:0}.ticketToolbar-btn{width:100%}.ticketReplyBox-foot{justify-content:stretch}.ticketReplyBox-btn{width:100%}}.ticketSaveRemarkBtn{margin-top:8px}.ticketBadge{color:var(--muted);background:#0000000f;border-radius:10px;padding:2px 8px;font-size:11px;font-weight:600}.ticketBadge.open{color:#e65100;background:#ff980026}.ticketBadge.processing{color:#1565c0;background:#2196f326}.ticketBadge.resolved{color:#0a7a2f;background:#2aae6726}.ticketBadge.closed{color:var(--muted);background:#00000014}.ticketPanel .ticketCurrent{padding:4px 0 2px}.ticketCurrentHead{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px;display:flex}.ticketNo{color:#0d8f4f;font-size:13px;font-weight:700}.ticketPill{background:#0000000f;border-radius:10px;padding:2px 8px;font-size:11px;font-weight:600}.ticketPill.urgent{color:#c62828;background:#f443361f}.ticketPill.high{color:#e65100;background:#ff98001f}.ticketPill.normal{color:var(--muted);background:#0000000f}.ticketPill.low{color:var(--muted);background:#0000000a}.ticketPill.open{color:#e65100;background:#ff98001f}.ticketPill.processing{color:#1565c0;background:#2196f31f}.ticketPill.resolved{color:#0a7a2f;background:#2aae671f}.ticketPill.closed{color:var(--muted);background:#0000000f}.ticketCurrentTitle{margin-bottom:4px;font-size:14px;font-weight:600}.ticketCurrentContent,.ticketCurrentMeta{color:var(--muted);margin:0 0 8px;font-size:12px}.ticketCurrentMeta{flex-wrap:wrap;gap:12px;display:flex}.userTicketPanel{-webkit-overflow-scrolling:touch;background:#fff;border-radius:16px;width:min(400px,100%);max-height:min(88vh,640px);padding:20px;overflow:auto;box-shadow:0 12px 40px #0003}.userTicketHead{align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.userTicketHeadIcon{background:#0d8f4f1a;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:20px;display:flex}.userTicketHeadText{flex:1;min-width:0}.userTicketTitle{margin:0;font-size:18px;font-weight:600;line-height:1.3}.userTicketSubtitle{color:var(--muted);margin:4px 0 0;font-size:13px;line-height:1.4}.userTicketBanner{border-radius:10px;margin-bottom:14px;padding:10px 12px;font-size:13px;line-height:1.4}.userTicketBannerWarn{color:#e65100;background:#ff98001f}.userTicketForm{flex-direction:column;gap:14px;display:flex}.userTicketLabel{color:var(--text,#222);flex-direction:column;gap:6px;font-size:13px;font-weight:500;display:flex}.userTicketLabel .req{color:#e53935;font-style:normal;font-weight:600}.userTicketRow{gap:10px;display:flex}.userTicketLabelHalf{flex:1;min-width:0}.userTicketInput{border:1px solid var(--line,#e5e5e5);box-sizing:border-box;background:#fafafa;border-radius:10px;width:100%;padding:10px 12px;font-size:15px;font-weight:400;transition:border-color .15s,background .15s}.userTicketInput:focus{background:#fff;border-color:#0d8f4f;outline:none}.userTicketInput:disabled{opacity:.65}.userTicketTextarea{resize:vertical;min-height:72px;font-family:inherit;line-height:1.45}.userTicketSelect{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23999' d='M1 1l5 5 5-5'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:32px}.userTicketCharCount{color:var(--muted);align-self:flex-end;font-size:11px;font-weight:400}.userTicketHistory{border-top:1px solid var(--line,#eee);margin-top:16px;padding-top:14px}.userTicketHistoryTitle{color:var(--muted);margin:0 0 10px;font-size:13px;font-weight:600}.userTicketHistoryScroll{-webkit-overflow-scrolling:touch;max-height:140px;overflow-y:auto}.userTicketHistoryItem{background:#f6f7f8;border-radius:10px;margin-bottom:8px;padding:10px 12px;font-size:13px}.userTicketHistoryItem:last-child{margin-bottom:0}.userTicketHistoryTop{justify-content:space-between;align-items:center;gap:8px;margin-bottom:4px;display:flex}.userTicketHistoryName{margin-bottom:4px;font-weight:500;line-height:1.35}.userTicketAssignee{color:var(--muted);font-size:12px}.userTicketAssignee.muted{font-style:italic}.userTicketError{background:#f4433614;border:1px solid #f4433633;border-radius:10px;align-items:flex-start;gap:10px;margin-top:14px;padding:12px;display:flex}.userTicketErrorIcon{color:#fff;background:#e53935;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:14px;font-weight:700;display:flex}.userTicketErrorText{color:#c62828;margin:0;font-size:13px;line-height:1.45}.userTicketRetryBtn{color:#0d8f4f;cursor:pointer;background:0 0;border:0;margin-top:8px;padding:0;font-size:13px;font-weight:600}.userTicketActions{gap:10px;margin-top:18px;display:flex}.userTicketBtnGhost,.userTicketBtnPrimary{cursor:pointer;border:none;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:8px;padding:12px 16px;font-size:15px;font-weight:600;display:inline-flex}.userTicketBtnGhost{color:var(--muted);background:#f0f0f0}.userTicketBtnPrimary{color:#fff;background:linear-gradient(#12a85c 0%,#0d8f4f 100%);box-shadow:0 2px 8px #0d8f4f59}.userTicketBtnPrimary:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.userTicketBtnBlock{width:100%;margin-top:8px}.userTicketSpinner{border:2px solid #ffffff59;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:.7s linear infinite userTicketSpin}@keyframes userTicketSpin{to{transform:rotate(360deg)}}.userTicketSuccess{text-align:center;padding:8px 0 4px}.userTicketSuccessTitle{margin:8px 0 6px;font-size:17px;font-weight:600}.userTicketSuccessHint{color:var(--muted);margin:0 0 12px;font-size:13px;line-height:1.45}.userTicketDoneNo{color:#0d8f4f;background:#0d8f4f14;border-radius:8px;margin:0 0 16px;padding:8px 12px;font-size:13px;font-weight:500;display:inline-block}.userTicketHistoryDesc{color:var(--muted);margin:0 0 4px;font-size:12px;line-height:1.4}.userTicketReplies{border-top:1px dashed #00000014;margin-top:8px;padding-top:8px}.userTicketReplyItem{background:#fff;border-left:3px solid #0d8f4f;border-radius:8px;margin-bottom:8px;padding:8px 10px}.userTicketReplyItem:last-child{margin-bottom:0}.userTicketReplyAuthor{color:#0d8f4f;margin-right:8px;font-size:12px;font-weight:600}.userTicketReplyTime{color:var(--muted);font-size:11px}.userTicketReplyText{white-space:pre-wrap;margin:4px 0 0;font-size:13px;line-height:1.45}.ticketEmptyHintLead{color:#0000008c;margin-bottom:8px;font-size:12px}.ticketEmptyHint{color:var(--muted);margin:0;padding:8px 0;font-size:13px;line-height:1.5}.ticketPickRow{margin-bottom:10px}.ticketReplyThread{background:#f6f7f8;border-radius:10px;margin:12px 0;padding:10px}.ticketReplyThreadTitle{color:var(--muted);margin:0 0 8px;font-size:12px;font-weight:600}.ticketReplyItem{background:#fff;border-radius:8px;margin-bottom:8px;padding:8px}.ticketReplyItem:last-child{margin-bottom:0}.ticketReplyItem.admin{border-left:3px solid #7b1fa2}.ticketReplyItem.agent{border-left:3px solid #0d8f4f}.ticketReplyMeta{justify-content:space-between;gap:8px;margin-bottom:4px;font-size:12px;display:flex}.ticketReplyAuthor{font-weight:600}.ticketReplyTime{color:var(--muted)}.ticketReplyContent{white-space:pre-wrap;margin:0;font-size:13px;line-height:1.45}.adminTicketReplies{background:#f8f9fa;border-radius:8px;margin:10px 0;padding:10px 12px}.adminTicketRepliesTitle{color:var(--muted);margin:0 0 8px;font-size:12px;font-weight:600}.adminTicketReplyItem{background:#fff;border-left:3px solid #0d8f4f;border-radius:6px;margin-bottom:8px;padding:8px}.adminTicketReplyItem.admin{border-left-color:#7b1fa2}.adminTicketReplyItem:last-child{margin-bottom:0}.adminTicketReplyAuthor{margin-right:8px;font-size:12px;font-weight:600}.adminTicketReplyTime{color:var(--muted);font-size:11px}.adminTicketReplyText{white-space:pre-wrap;margin:4px 0 0;font-size:13px;line-height:1.45}.ticketSuccess{color:#0a7a2f;margin:8px 0 0;font-size:12px}.adminPageLogin{background:linear-gradient(165deg,#e8f7ee 0%,#f0f4f2 38%,#ededed 100%)}.adminMainLogin{justify-content:center;align-items:center;min-height:100dvh;padding:0;display:flex}.adminLoginWrap{box-sizing:border-box;width:100%;max-width:440px;padding:24px 20px 32px}.adminLoginCard{background:#fff;border-radius:20px;padding:36px 32px 28px;box-shadow:0 4px 6px #00000005,0 16px 40px #0d8f4f1a,0 0 0 1px #0000000a}.adminLoginBrand{text-align:center;margin-bottom:28px}.adminLoginLogo{width:64px;height:64px;margin:0 auto 16px}.adminLoginLogo svg{filter:drop-shadow(0 6px 12px #0d8f4f40);width:100%;height:100%;display:block}.adminLoginTitle{color:#111;letter-spacing:.02em;margin:0 0 6px;font-size:22px;font-weight:700}.adminLoginSubtitle{color:#00000073;margin:0;font-size:13px;line-height:1.5}.adminLoginForm{flex-direction:column;gap:16px;display:flex}.adminField{flex-direction:column;gap:6px;display:flex}.adminFieldLabel{color:#000000a6;font-size:13px;font-weight:500}.adminFieldInput{box-sizing:border-box;background:#f7f8f7;border:1px solid #0000001a;border-radius:10px;outline:none;width:100%;height:44px;padding:0 14px;font-size:16px;transition:border-color .15s,background .15s,box-shadow .15s}.adminFieldInput::placeholder{color:#00000052}.adminFieldInput:focus{background:#fff;border-color:#0d8f4f8c;box-shadow:0 0 0 3px #2aae6726}.adminLoginBtn{color:#fff;letter-spacing:.12em;cursor:pointer;background:linear-gradient(#2aae67 0%,#0d8f4f 100%);border:0;border-radius:10px;width:100%;height:46px;margin-top:4px;font-size:16px;font-weight:600;transition:transform .12s,box-shadow .15s,opacity .15s;box-shadow:0 4px 14px #0d8f4f59}.adminLoginBtn:hover:not(:disabled){box-shadow:0 6px 18px #0d8f4f6b}.adminLoginBtn:active:not(:disabled){transform:scale(.98)}.adminLoginBtn:disabled{opacity:.65;cursor:not-allowed}.adminLoginError{color:#c62828;text-align:center;background:#fff5f5;border:1px solid #ffcdd2;border-radius:8px;margin:14px 0 0;padding:10px 12px;font-size:13px;line-height:1.45}.adminLoginFooter{text-align:center;border-top:1px solid #0000000f;margin-top:20px;padding-top:18px}.adminLoginLink{color:#00000073;font-size:13px;text-decoration:none;transition:color .15s}.adminLoginLink:hover{color:#0d8f4f}.adminTop .adminUserBadge{color:#0a7a2f;background:#95ec6933;border-color:#0a7a2f33}.adminTop .adminLogoutBtn{cursor:pointer}.adminPage{flex-direction:column;height:100dvh;display:flex}.adminPage .adminMain{background:linear-gradient(180deg, #f3faf5 0%, var(--bg) 120px);flex-direction:column;flex:1;padding:0;display:flex;overflow:hidden}.adminLayout{flex:1;min-height:0;display:flex;overflow:hidden}.adminSideNav{border-right:1px solid var(--line);background:#ffffffb8;flex-direction:column;flex-shrink:0;gap:4px;width:168px;padding:16px 0 16px 12px;display:flex;overflow-y:auto}.adminSideTab{color:#0000009e;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px 0 0 10px;align-items:center;gap:10px;width:100%;padding:12px 14px;font-size:14px;font-weight:500;transition:background .15s,color .15s;display:flex}.adminSideTab:hover{color:#0d8f4f;background:#2aae6714}.adminSideTab.active{color:#0d8f4f;background:#fff;font-weight:600;box-shadow:inset -2px 0 #0d8f4f,0 1px 4px #0000000a}.adminSideTabIcon{text-align:center;flex-shrink:0;width:20px;font-size:15px}.adminSideTabLabel{flex:1;min-width:0}.adminManageWrap{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;flex:1;width:auto;min-width:0;max-width:none;min-height:0;margin:0;padding:16px;overflow:hidden auto}.adminManageWrap .adminCard{max-width:980px;margin:0 auto}.adminManageCard{width:100%;box-shadow:0 2px 8px #00000008,0 12px 32px #0d8f4f0f}.adminCard{border:1px solid var(--line);background:#fff;border-radius:16px;padding:20px}.adminCardHead{border-bottom:1px solid #0000000f;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;padding-bottom:16px;display:flex}.adminCardTitle{color:#111;letter-spacing:.01em;font-size:18px;font-weight:700}.adminCardDesc{color:var(--muted);margin:6px 0 0;font-size:13px;line-height:1.5}.adminPrimaryBtn{color:#fff;cursor:pointer;white-space:nowrap;background:linear-gradient(#2aae67 0%,#0d8f4f 100%);border:0;border-radius:10px;flex-shrink:0;align-items:center;gap:4px;height:36px;padding:0 16px;font-size:13px;font-weight:600;transition:box-shadow .15s,transform .12s;display:inline-flex;box-shadow:0 2px 10px #0d8f4f47}.adminPrimaryBtn:hover:not(:disabled){box-shadow:0 4px 14px #0d8f4f61}.adminPrimaryBtn:active:not(:disabled){transform:scale(.98)}.adminPrimaryBtn:disabled{opacity:.55;cursor:not-allowed}.adminBtnIcon{font-size:16px;font-weight:400;line-height:1}.adminGhostBtn{color:#000000b8;cursor:pointer;background:#fff;border:1px solid #0000001f;border-radius:8px;height:34px;padding:0 14px;font-size:13px;transition:background .15s,border-color .15s}.adminGhostBtn:hover:not(:disabled){background:#f5f5f5;border-color:#0000002e}.adminGhostBtn:disabled{opacity:.5;cursor:not-allowed}.adminDangerBtn{color:#c62828;cursor:pointer;background:#fff5f5;border:1px solid #c6282840;border-radius:8px;height:32px;padding:0 12px;font-size:12px;font-weight:500;transition:background .15s}.adminDangerBtn:hover{background:#ffebee}.adminDangerBtnSm{height:28px;padding:0 10px;font-size:12px}.adminStats{grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:18px;display:grid}.adminStatItem{background:linear-gradient(145deg,#f6fcf8 0%,#f0f7f2 100%);border:1px solid #0d8f4f1f;border-radius:12px;flex-direction:column;align-items:center;gap:4px;padding:14px 12px;display:flex}.adminStatNum{color:#0d8f4f;font-size:26px;font-weight:700;line-height:1}.adminStatNum.adminStatOnline{color:#2aae67}.adminStatLabel{color:var(--muted);font-size:12px}.adminPageMsg{color:#0a6b35;background:#e8f7ee;border:1px solid #0d8f4f33;border-radius:10px;margin:0 0 14px;padding:10px 14px;font-size:13px;line-height:1.45}.adminPageMsg.error{color:#c62828;background:#fff5f5;border-color:#ffcdd2}.adminEmpty{text-align:center;color:var(--muted);background:#fafcfb;border:1px dashed #0d8f4f33;border-radius:12px;flex-direction:column;align-items:center;gap:16px;padding:40px 24px;font-size:14px;display:flex}.adminGroup{background:#fff;border:1px solid #00000014;border-radius:14px;margin-top:16px;padding:0;overflow:hidden;box-shadow:0 1px 4px #0000000a}.adminGroupHead{background:linear-gradient(#f8fcf9 0%,#f3f8f5 100%);border-bottom:1px solid #0000000f;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.adminGroupTitleWrap{flex-wrap:wrap;flex:1;align-items:center;gap:10px;min-width:200px;display:flex}.adminGroupIcon{font-size:18px;line-height:1}.adminGroupNameInput{flex:1;min-width:120px;max-width:280px;height:38px}.adminGroupBadge{color:#0a7a2f;background:#2aae6726;border-radius:20px;padding:3px 8px;font-size:11px;font-weight:600}.adminGroupBadge.off{color:var(--muted);background:#0000000f}.adminGroupBadge.region{color:#1d4ed8;background:#3b82f61f}.adminCardHeadActions{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.adminFieldInline{margin:0}.adminRegionSelect{min-width:120px;height:38px}.adminGroupActions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.adminSwitch{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;display:inline-flex}.adminSwitch input{opacity:0;width:0;height:0;position:absolute}.adminSwitchSlider{background:#00000026;border-radius:11px;flex-shrink:0;width:40px;height:22px;transition:background .2s;position:relative}.adminSwitchSlider:after{content:"";background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .2s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #0003}.adminSwitch input:checked+.adminSwitchSlider{background:#2aae67}.adminSwitch input:checked+.adminSwitchSlider:after{transform:translate(18px)}.adminSwitchText{color:var(--muted);font-size:12px}.adminSwitchCompact{gap:0}.adminTable{padding:0 12px 12px}.adminTableHead,.adminTableHeadPwd,.adminTableHeadActions{color:#00000073;letter-spacing:.02em;grid-template-columns:1.2fr .85fr 56px 56px 72px minmax(150px,1fr);gap:10px;padding:10px 8px 8px;font-size:12px;font-weight:600;display:grid}.adminTableEmpty{text-align:center;color:var(--muted);padding:20px;font-size:13px}.adminTableRow,.adminTableRowPwd,.adminTableRowActions{border-radius:10px;grid-template-columns:1.2fr .85fr 56px 56px 72px minmax(150px,1fr);align-items:center;gap:10px;padding:8px;transition:background .12s;display:grid}.adminTableRow:hover{background:#2aae670a}.adminTableInput{height:36px;font-size:14px}.adminStatusPill{border-radius:12px;justify-content:center;align-items:center;min-width:48px;height:24px;padding:0 8px;font-size:11px;font-weight:600;display:inline-flex}.adminStatusPill.online{color:#0a7a2f;background:#2aae672e}.adminStatusPill.offline{color:var(--muted);background:#0000000f}.adminAddRow{background:#fafcfb;border-top:1px dashed #00000014;border-radius:0 0 10px 10px;grid-template-columns:1.2fr .85fr 1fr auto;align-items:center;gap:10px;margin-top:8px;padding:12px 8px;display:grid}.adminAddRowSpanWide{grid-column:auto;justify-content:flex-end;display:flex}.adminAddRowSpan{grid-column:3;justify-content:flex-end;display:flex}.adminAddBtn{white-space:nowrap}.adminModalMask{z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000073;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.adminModal{background:#fff;border-radius:16px;width:100%;max-width:400px;overflow:hidden;box-shadow:0 8px 32px #0000001f,0 0 0 1px #0000000a}.adminModalHeader{justify-content:space-between;align-items:center;gap:12px;padding:18px 20px 0;display:flex}.adminModalTitle{color:#111;margin:0;font-size:17px;font-weight:700}.adminModalClose{color:#00000073;cursor:pointer;background:0 0;border:0;border-radius:8px;width:32px;height:32px;font-size:22px;line-height:1;transition:background .15s,color .15s}.adminModalClose:hover{color:#111;background:#0000000f}.adminRowActions{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.adminTableHeadActions>span:last-child,.adminTableHeadActions>span:nth-child(5){text-align:center;justify-self:center}.adminTableRowActions .adminColStatus,.adminTableRowActions .adminRowActions{justify-self:center}.adminGhostBtnSm{min-height:28px;padding:4px 10px;font-size:12px}.adminModalMessage{white-space:pre-line;color:#0000009e;margin:12px 20px 0;font-size:14px;line-height:1.55}.adminModalBody{padding:16px 20px 4px}.adminModalFooter{justify-content:flex-end;gap:10px;padding:16px 20px 20px;display:flex}.adminModalOk{min-width:88px}.adminModalFade-enter-active,.adminModalFade-leave-active{transition:opacity .2s}.adminModalFade-enter-active .adminModal,.adminModalFade-leave-active .adminModal{transition:transform .2s,opacity .2s}.adminModalFade-enter-from,.adminModalFade-leave-to{opacity:0}.adminModalFade-enter-from .adminModal,.adminModalFade-leave-to .adminModal{opacity:0;transform:scale(.96)translateY(8px)}@media (width<=720px){.adminLayout{flex-direction:column}.adminSideNav{border-right:0;border-bottom:1px solid var(--line);flex-direction:row;gap:8px;width:100%;padding:10px 12px;overflow:auto hidden}.adminSideTab{min-width:88px;box-shadow:none;border-radius:10px;flex:1 0 auto;justify-content:center;padding:10px 12px}.adminSideTab.active{box-shadow:0 0 0 1px #0d8f4f40}.adminSideTabIcon{display:none}.adminLoginCard{border-radius:16px;padding:28px 22px 24px}.adminLoginTitle{font-size:20px}.adminStats{grid-template-columns:repeat(3,1fr);gap:8px}.adminStatNum{font-size:22px}.adminCardHead{flex-direction:column;align-items:stretch}.adminCardHead .adminPrimaryBtn{justify-content:center;width:100%}.adminTableHead{display:none}.adminTableRow,.adminTableRowPwd,.adminTableRowActions{border:1px solid var(--line);grid-template-columns:1fr 1fr;grid-template-areas:"name emp""enable transfer""status status""action action";gap:8px;margin-bottom:8px;padding:12px}.adminTableRow .adminTableInput:first-child,.adminTableRowPwd .adminTableInput:first-child,.adminTableRowActions .adminTableInput:first-child{grid-area:name}.adminTableRow .adminTableInput:nth-child(2),.adminTableRowPwd .adminTableInput:nth-child(2),.adminTableRowActions .adminTableInput:nth-child(2){grid-area:emp}.adminTableRow .adminColEnable,.adminTableRowActions .adminColEnable{grid-area:enable}.adminTableRow .adminColTransfer,.adminTableRowActions .adminColTransfer{grid-area:transfer;justify-self:end}.adminTableRow .adminColStatus,.adminTableRowActions .adminColStatus{grid-area:status;justify-self:center}.adminTableRow .adminDangerBtn,.adminTableRow .adminRowActions,.adminTableRowActions .adminRowActions{grid-area:action;justify-content:center;width:100%}.adminTableRowActions .adminRowActions .adminGhostBtn,.adminTableRowActions .adminRowActions .adminDangerBtn{flex:0 auto}.adminAddRow{grid-template-columns:1fr}.adminAddRowSpan,.adminAddRowSpanWide{grid-column:1}.adminAddBtn{width:100%}.adminGroupHead{flex-direction:column;align-items:stretch}.adminGroupActions{justify-content:space-between}}.chatSidebar{border-right:1px solid var(--line);background:#f3f3f3;flex-direction:column;width:280px;display:flex;overflow:auto}.sidebarHead{z-index:2;border-bottom:1px solid var(--line);background:#f3f3f3;justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;display:flex;position:sticky;top:0}.sidebarTitle{color:var(--muted);font-size:13px}.sidebarSearchWrap{border-bottom:1px solid var(--line);padding:8px 10px}.sidebarSearch{border:1px solid var(--line);background:#fff;border-radius:8px;width:100%;height:30px;padding:0 10px;font-size:16px}.chatItem{text-align:left;border:0;border-bottom:1px solid var(--line);background:0 0;padding:10px 12px}.chatItem.active{background:#fff}.chatItemTop{justify-content:space-between;gap:8px;min-width:0;font-size:13px;display:flex}.chatItemTop strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.chatItemTop span{color:var(--muted)}.chatItemTopRight{align-items:center;gap:6px;display:inline-flex}.pinBtn{cursor:pointer;background:0 0;border:0;padding:0}.pinBtn.deleteBtn{color:#00000073;font-size:12px;line-height:1}.pinBtn.deleteBtn:hover{color:#e54d42}.chatItemMeta{color:#00000073;flex-wrap:wrap;gap:6px 10px;margin-top:4px;font-size:11px;display:flex}.chatItemBottom{color:var(--muted);justify-content:space-between;gap:8px;margin-top:4px;font-size:12px;display:flex}.chatItemBottom span{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.chatItemBottom em{color:#fff;background:#f44336;border-radius:999px;place-items:center;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-style:normal;display:grid}.wcList{background:radial-gradient(1200px 600px at 20% 0%, #0000000a, transparent 55%), var(--bg);flex:1;min-width:0;min-height:0;padding:12px 10px 10px;overflow:hidden auto}.wcItem{margin-bottom:10px}.wcTime{color:#00000073;text-align:center;background:#0000000f;border-radius:999px;width:fit-content;margin:6px auto 10px;padding:4px 10px;font-size:12px;display:block}.wcRow{align-items:flex-start;gap:8px;min-width:0;max-width:100%;display:flex}.wcRow.me{justify-content:flex-end}.wcAvatar{border:1px solid var(--line);color:#000000a6;background:#fff;border-radius:10px;flex:none;place-items:center;width:36px;height:36px;margin-top:2px;display:grid}.wcAvatar.me{background:#95ec6940;border-color:#95ec6973}.wcBubble{background:var(--bubble);border:1px solid #0000000f;border-radius:10px;min-width:0;max-width:min(680px,100% - 44px);padding:10px 12px;position:relative}.wcBubble:before{content:"";border-top:6px solid #0000;border-bottom:6px solid #0000;border-right:6px solid var(--bubble);filter:drop-shadow(-1px 0 #0000000f);width:0;height:0;position:absolute;top:12px;left:-6px}.wcBubble.me{background:var(--wechat-green);border-color:#00000014}.wcBubble.me:before{border-right:0;border-left:6px solid var(--wechat-green);filter:drop-shadow(1px 0 #00000014);left:auto;right:-6px}.wcText{white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere;font-size:15px;line-height:1.45}.wcMediaBtn{cursor:pointer;background:0 0;border:0;padding:0}.wcImg{border-radius:10px;width:min(280px,66vw);max-width:100%;display:block}.wcVideoWrap{position:relative}.wcVideo{background:#000;border-radius:10px;width:min(320px,70vw);max-width:100%;display:block}.wcBadge{color:#fff;background:#00000073;border-radius:999px;padding:4px 8px;font-size:12px;position:absolute;top:8px;right:8px}.wcComposer{background:var(--bg2);border-top:1px solid var(--line);padding:6px 10px calc(var(--composer-bottom) + env(safe-area-inset-bottom,0px));min-width:0;position:sticky;bottom:0;overflow-x:hidden}.wcUploadProgress{align-items:center;gap:8px;min-width:0;margin-bottom:6px;display:flex}.wcUploadProgressTrack{background:#00000014;border-radius:999px;flex:1;height:4px;overflow:hidden}.wcUploadProgressBar{background:var(--brand,#07c160);border-radius:999px;height:100%;transition:width .15s}.wcUploadProgressText{color:var(--muted);white-space:nowrap;flex-shrink:0;font-size:11px}.quickReplyBar{flex-wrap:wrap;gap:8px;margin-bottom:8px;display:flex}.quickBtn{border:1px solid var(--line);background:#fff;border-radius:8px;height:28px;padding:0 10px;font-size:12px}.quickPanel{border:1px solid var(--line);background:#fff;border-radius:10px;margin-bottom:8px;padding:8px}.quickTitle{color:var(--muted);margin-bottom:6px;font-size:12px}.quickAddRow{gap:8px;margin-bottom:8px;display:flex}.quickInput{border:1px solid var(--line);border-radius:8px;flex:1;height:28px;padding:0 10px;font-size:16px}.quickList{flex-direction:column;gap:6px;display:flex}.quickRow{gap:6px;display:flex}.quickItem{border:1px solid var(--line);text-align:left;background:#f9f9f9;border-radius:8px;flex:1;padding:6px 8px}.quickDel{color:#b71c1c;background:#fff5f5;border:1px solid #ffcdd2;border-radius:8px;padding:6px 8px}.wcBar{align-items:center;gap:8px;min-width:0;display:flex}.wcPlus,.wcEmojiBtn{border:1px solid var(--line);background:#fff;border-radius:9px;flex-shrink:0;place-items:center;width:32px;height:32px;padding:0;font-size:20px;line-height:1;display:grid}.wcEmojiBtn{font-size:18px}.wcEmojiBtn.active{background:#e8f5e9;border-color:#0a7a2f40}.wcInput{border:1px solid var(--line);background:#fff;border-radius:9px;outline:none;flex:1;width:0;min-width:0;height:32px;padding:0 12px;font-size:16px}.wcSend{border:1px solid var(--line);background:#fff;border-radius:9px;flex-shrink:0;height:32px;padding:0 12px}.wcSend:disabled{opacity:.55}.wcModeBtn.active,.wcEmojiBtn.active{background:#e8f5e9;border-color:#0a7a2f40}.wcVoiceBtn{border:1px solid var(--line);background:#fff;border-radius:9px;flex-shrink:0;place-items:center;width:32px;height:32px;padding:0;font-size:16px;line-height:1;display:grid}.wcVoiceHold{border:1px solid var(--line);color:#333;-webkit-user-select:none;user-select:none;touch-action:none;background:#fff;border-radius:9px;flex:1;min-width:0;height:32px;font-size:15px}.wcVoiceHold.active{background:#e8f5e9;border-color:#0a7a2f59}.wcVoiceHold.cancel{color:#c62828;background:#ffebee;border-color:#c6282859}.wcVoiceOverlay{z-index:1200;color:#fff;text-align:center;pointer-events:none;background:#000000b8;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;min-width:160px;padding:20px 24px;display:flex;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.wcVoiceOverlay.cancel{background:#c62828e0}.wcVoiceOverlayIcon{margin-bottom:6px;font-size:28px;line-height:1}.wcVoiceOverlayTime{font-variant-numeric:tabular-nums;text-align:center;letter-spacing:.02em;width:100%;font-size:32px;font-weight:600;line-height:1.2}.wcVoiceOverlayText{opacity:.9;margin-top:8px;font-size:13px;line-height:1.35}.wcBubble:has(.wcVoiceMsg){padding:5px 10px}.wcBubble:has(.wcVoiceMsg):before{top:9px}.wcVoiceMsg{cursor:pointer;background:0 0;border:0;border-radius:0;align-items:center;gap:6px;height:28px;min-height:0;padding:0 2px;line-height:1;display:flex}.wcBubble.me .wcVoiceMsg{background:0 0}.wcVoiceMsg.playing .wcVoiceWaves i{animation:.9s ease-in-out infinite wcVoiceWave}.wcVoiceMsg.playing .wcVoiceWaves i:nth-child(2){animation-delay:.15s}.wcVoiceMsg.playing .wcVoiceWaves i:nth-child(3){animation-delay:.3s}.wcVoiceIcon{flex-shrink:0;width:12px;font-size:10px}.wcVoiceWaves{flex:1;align-items:flex-end;gap:2px;height:12px;display:flex}.wcVoiceWaves i{background:#00000073;border-radius:1px;width:2px;height:5px;display:block}.wcVoiceWaves i:nth-child(2){height:8px}.wcVoiceWaves i:nth-child(3){height:6px}.wcBubble.me .wcVoiceWaves i{background:#00000080}.wcVoiceDur{color:#0000008c;flex-shrink:0;font-size:11px}@keyframes wcVoiceWave{0%,to{opacity:.65;transform:scaleY(.7)}50%{opacity:1;transform:scaleY(1.35)}}.wcMore{border:1px solid var(--line);background:#fff;border-radius:12px;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:8px;padding:10px;display:grid}.wcAction{border:1px solid var(--line);background:var(--bg2);border-radius:12px;flex-direction:column;align-items:center;gap:6px;padding:10px 8px;font-size:13px;display:flex}.wcActionIcon{font-size:18px}.wcMoreHint{color:#0000008c;grid-column:1/-1;font-size:12px}.wcEmojiPanel{border-top:1px solid var(--line);background:#f7f7f7;border-radius:12px 12px 0 0;margin-top:8px;overflow:hidden}.wcEmojiTabs{border-bottom:1px solid var(--line);background:#fff;gap:4px;padding:8px 10px 4px;display:flex}.wcEmojiTab{color:var(--muted);background:0 0;border:0;border-radius:8px;padding:6px 12px;font-size:13px}.wcEmojiTab.active{color:var(--text);background:#f0f0f0;font-weight:600}.wcEmojiGrid{-webkit-overflow-scrolling:touch;grid-template-columns:repeat(10,1fr);gap:0;max-height:200px;padding:4px 2px;display:grid;overflow-y:auto}.wcEmojiItem{background:0 0;border:0;border-radius:4px;place-items:center;width:100%;height:34px;margin:0;padding:0;font-size:24px;line-height:1;display:grid}.wcEmojiItem:active{background:#0000000f}.wcEmojiFooter{border-top:1px solid var(--line);background:#fff;justify-content:flex-end;padding:4px 10px 8px;display:flex}.wcEmojiBackspace{border:1px solid var(--line);background:#fff;border-radius:8px;place-items:center;width:52px;height:36px;padding:0;font-size:20px;line-height:1;display:grid}.wcHiddenInput{display:none}.wcPreview{z-index:50;background:#000000e0;flex-direction:column;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.wcPreviewClose{top:calc(12px + env(safe-area-inset-top));color:#fff;background:#ffffff1a;border:1px solid #ffffff40;border-radius:999px;padding:8px 12px;position:absolute;right:12px}.wcPreviewImg{border-radius:12px;max-width:min(980px,92vw);max-height:78vh}@media (width<=900px){:root{--composer-bottom:0px}.wechat,.wechat button,.wechat .chatItem,.wechat .wcMediaBtn,.wechat .wcRatingBtn,.wechat .wcAction,.wechat .pinBtn,.wechat .wcEmojiItem,.wechat .wcEmojiTab,.wechat .wcBack,.wechat .quickBtn,.wechat .quickItem{-webkit-tap-highlight-color:transparent;tap-highlight-color:transparent;-webkit-touch-callout:none}.wechat button,.wechat .chatItem,.wechat .wcMediaBtn,.wechat .wcRatingBtn,.wechat .wcAction,.wechat .pinBtn,.wechat .wcEmojiItem,.wechat .wcEmojiTab,.wechat .wcBack,.wechat .quickBtn,.wechat .quickItem{-webkit-user-select:none;user-select:none}.wechat .wcInput,.wechat .wcText,.wechat textarea,.wechat input[type=text],.wechat input[type=search]{-webkit-user-select:text;user-select:text}.wcBack:active,.wcEmojiItem:active,.seatCard:not(:disabled):active,.ticketReplyBox-btn:active:not(:disabled),.adminPrimaryBtn:active:not(:disabled),.adminLoginBtn:active:not(:disabled){opacity:1;filter:none}.wcEmojiItem:active{background:0 0}.seatCard:not(:disabled):active{background:#fff}.wechat button:focus,.wechat .chatItem:focus,.wechat .wcMediaBtn:focus{outline:none}.agentLayout{flex-direction:column;position:relative}.wechat.agentMode .chatSidebar{z-index:1;-webkit-overflow-scrolling:touch;flex:1;width:100%;max-width:100%;min-height:0;transition:none;position:relative;top:auto;bottom:auto;left:auto;transform:none}.wechat.agentMode.agentShowList .chatSidebar{display:flex}.wechat.agentMode.agentShowList .chatPanel,.wechat.agentMode.agentShowChat .chatSidebar{display:none}.wechat.agentMode.agentShowChat .chatPanel{flex:1;width:100%;max-width:100%;min-height:0;display:flex}.chatPanel{width:100%;max-width:100%}.wcTop{padding-left:max(8px, env(safe-area-inset-left));padding-right:max(8px, env(safe-area-inset-right))}.wcTopRight{gap:6px}.wcConn{white-space:nowrap;padding:5px 8px;font-size:11px}.wcTopTitle{padding:0 4px;font-size:15px}.sidebarHead,.sidebarSearchWrap{padding-left:max(12px, env(safe-area-inset-left));padding-right:max(12px, env(safe-area-inset-right))}.sidebarSearch{height:36px;font-size:16px}.chatItem{padding:12px max(12px, env(safe-area-inset-right)) 12px max(12px, env(safe-area-inset-left))}.pinBtn{place-items:center;min-width:36px;min-height:36px;display:grid}.wcBubble{max-width:min(680px,100vw - 68px)}.wcImg{width:min(240px,100vw - 88px)}.wcVideo{width:min(280px,100vw - 88px)}.chatPanel .wcList{padding-bottom:52px}.wcComposer{z-index:30;width:100%;max-width:min(980px,100%);padding-top:2px;padding-bottom:0;padding-left:max(8px, env(safe-area-inset-left));padding-right:max(8px, env(safe-area-inset-right));position:fixed;bottom:0;left:50%;transform:translate(-50%)}.wcVoiceOverlay{min-width:148px;padding:22px 28px;top:44%}.wcVoiceOverlayTime{font-size:40px}.wcVoiceOverlayText{font-size:14px}.wcPlus,.wcEmojiBtn,.wcVoiceBtn,.wcInput,.wcSend{min-height:36px}.wcVoiceBtn{width:36px;height:36px}.wcSend{padding:0 14px}.quickReplyBar{gap:6px}.quickBtn{min-height:32px}.quickAddRow{min-width:0}.quickInput{min-width:0;height:36px}.quickItem{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.wcMore{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.wcAction{padding:12px 6px;font-size:12px}.wcEmojiGrid{grid-template-columns:repeat(9,1fr);max-height:min(200px,32vh);padding:2px 1px}.wcEmojiItem{height:32px;font-size:22px}}.wcRatingBtn{color:#0d8f4f;cursor:pointer;background:0 0;border:0;flex-shrink:0;padding:4px 8px;font-size:13px;font-weight:600}.wcRatingBtn:hover{opacity:.8}.wcRatingDone{color:var(--muted);flex-shrink:0;font-size:12px}.ratingMask{z-index:1000;background:#00000073;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.ratingPanel{background:#fff;border-radius:16px;width:min(360px,100%);padding:20px;box-shadow:0 8px 32px #0000002e}.ratingHead{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.ratingTitle{margin:0;font-size:17px;font-weight:600}.ratingClose{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:0 4px;font-size:24px;line-height:1}.ratingHint{color:var(--muted);text-align:center;margin:0 0 16px;font-size:14px}.ratingStars{justify-content:center;gap:8px;margin-bottom:8px;display:flex}.ratingStar{color:#ddd;cursor:pointer;background:0 0;border:0;padding:0;font-size:36px;line-height:1;transition:color .15s,transform .15s}.ratingStar.active{color:#ffb800}.ratingStar:hover{transform:scale(1.1)}.ratingScoreLabel{text-align:center;color:var(--muted);min-height:20px;margin:0 0 16px;font-size:13px}.ratingComment{border:1px solid var(--line);resize:none;border-radius:10px;width:100%;margin-bottom:12px;padding:10px 12px;font-size:14px}.ratingComment:focus{border-color:#0d8f4f;outline:none}.ratingError{color:#e53935;text-align:center;margin:0 0 8px;font-size:13px}.ratingActions{gap:10px;display:flex}.ratingSkipBtn{border:1px solid var(--line);cursor:pointer;color:var(--muted);background:#fff;border-radius:10px;flex:1;padding:10px;font-size:14px}.ratingSubmitBtn{color:#fff;cursor:pointer;background:#0d8f4f;border:0;border-radius:10px;flex:1;padding:10px;font-size:14px;font-weight:600}.ratingSubmitBtn:disabled{opacity:.5;cursor:not-allowed}.ratingDone{text-align:center;padding:16px 0}.ratingDoneIcon{color:#0d8f4f;background:#e8f8ef;border-radius:50%;place-items:center;width:56px;height:56px;margin:0 auto 12px;font-size:28px;display:grid}.ratingDoneText{margin:0 0 20px;font-size:15px}.ratingFade-enter-active,.ratingFade-leave-active{transition:opacity .2s}.ratingFade-enter-from,.ratingFade-leave-to{opacity:0}.adminRatingsCard{margin-top:0}.adminStatRating{color:#ffb800}.adminRatingByAgent{background:var(--bg2);border-radius:10px;flex-direction:column;gap:8px;margin-bottom:16px;padding:12px;display:flex}.adminRatingAgentRow{align-items:center;gap:12px;font-size:14px;display:flex}.adminRatingAgentName{flex:1;font-weight:500}.adminRatingAgentScore{color:#ffb800;font-weight:600}.adminRatingAgentCount{color:var(--muted);font-size:13px}.adminRatingList{flex-direction:column;gap:10px;display:flex}.adminRatingItem{border:1px solid var(--line);background:#fff;border-radius:10px;padding:12px}.adminRatingItemHead{flex-wrap:wrap;align-items:center;gap:10px;font-size:13px;display:flex}.adminRatingStars{color:#ffb800;letter-spacing:1px}.adminRatingAgent{font-weight:500}.adminRatingTime{color:var(--muted);margin-left:auto}.adminRatingComment{color:var(--text);margin:8px 0 0;font-size:14px;line-height:1.5}.adminRatingEmpty{padding:24px 0}.adminTicketsCard{margin-top:0}.adminStatOpen{color:#e65100}.adminTicketFilter{min-width:120px;height:36px;font-size:13px}.adminTicketList{flex-direction:column;gap:14px;display:flex}.adminTicketItem{background:#fff;border:1px solid #00000014;border-radius:14px;padding:16px;box-shadow:0 1px 4px #0000000a}.adminTicketItemHead{border-bottom:1px solid #0000000d;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px;padding-bottom:10px;display:flex}.adminTicketNo{color:#0d8f4f;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;font-weight:700}.adminTicketItemHead .adminRatingTime{margin-left:auto}.adminTicketTitle{color:#111;margin-bottom:6px;font-size:15px;font-weight:600}.adminTicketContent{color:#000000b8;background:#fafafa;border-radius:8px;margin:0 0 10px;padding:8px 10px;font-size:13px;line-height:1.55}.adminTicketMeta{color:var(--muted);flex-wrap:wrap;gap:8px;margin-bottom:4px;font-size:12px;display:flex}.adminTicketMeta>span{background:#f0f2f3;border-radius:20px;padding:4px 10px}.adminTicketRemark{color:var(--muted);background:var(--bg2);border-radius:8px;margin:0 0 8px;padding:8px;font-size:12px}.adminTicketItemCompact .adminTicketContentClamp{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.adminTicketReplyBadge{color:#1565c0;background:#2196f31f;border-radius:10px;padding:2px 8px;font-size:11px;font-weight:600}.adminTicketListToolbar{flex-wrap:wrap;margin-top:12px}.adminTicketDetailLink{color:#fff;cursor:pointer;white-space:nowrap;background:linear-gradient(#2aae67 0%,#0d8f4f 100%);border:0;border-radius:10px;flex-shrink:0;height:36px;padding:0 14px;font-size:13px;font-weight:600;box-shadow:0 2px 8px #0d8f4f40}.adminTicketDetailLink:hover{box-shadow:0 4px 12px #0d8f4f59}.agentTicketDetailLinkSm{min-width:auto;height:32px;padding:0 12px;font-size:12px}.agentTicketList{flex-direction:column;gap:10px;display:flex}.agentTicketListItem{margin:0}.agentTicketListToolbar{margin-top:10px}.agentTicketDetail{max-height:min(70vh,520px);overflow-y:auto}.agentTicketDetailStatus{margin-bottom:8px}.adminTicketDetail{padding:4px 0}.adminTicketDetailHead{border-bottom:1px solid #00000014;margin-bottom:20px;padding-bottom:16px}.adminTicketDetailBack{color:#0d8f4f;cursor:pointer;background:0 0;border:0;padding:0 0 12px;font-size:14px;font-weight:600}.adminTicketDetailHeadMeta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.adminTicketDetailLoading{text-align:center;color:var(--muted);padding:40px}.adminTicketDetailBody{margin-bottom:20px}.adminTicketDetailTitle{margin:0 0 10px;font-size:18px;font-weight:600}.adminTicketDetailDesc{color:#000000c7;background:#f6f7f8;border-radius:10px;margin:0 0 12px;padding:12px;font-size:14px;line-height:1.6}.adminTicketDetailReplies{margin-bottom:20px}.adminTicketDetailSectionTitle{align-items:center;gap:8px;margin:0 0 12px;font-size:15px;font-weight:600;display:flex}.adminTicketDetailCount{color:var(--muted);background:#eee;border-radius:10px;padding:2px 8px;font-size:12px;font-weight:600}.adminTicketDetailError{color:#c62828;margin:8px 0 0;font-size:13px}.adminTicketDetailEmpty{text-align:center;padding:32px 16px}.adminTicketDetailEmptyTitle{color:#333;margin:0 0 8px;font-size:15px;font-weight:600}.adminTicketDetailEmptyHint{color:var(--muted);margin:0 0 16px;font-size:13px;line-height:1.5}.adminTicketReplyTarget{background:#fff;border-left:3px solid #0d8f4f;border-radius:8px;margin:0 0 8px;padding:8px 10px;font-size:12px}.adminTicketReplyTargetQuote{color:var(--muted);max-height:48px;margin-bottom:6px;line-height:1.4;display:block;overflow:hidden}.adminTicketReplyTargetCancel{color:#0d8f4f;cursor:pointer;background:0 0;border:0;padding:0;font-size:12px}.ticketThreadEmpty{text-align:center;color:var(--muted);background:#f8f9fa;border-radius:10px;margin:0;padding:16px;font-size:13px}.ticketThreadNode{margin-left:calc(var(--depth,0) * 16px);margin-bottom:10px}.ticketThreadNode .ticketThreadNode{border-left:2px solid #0d8f4f33;margin-top:8px;padding-left:12px}.ticketThreadItem{background:#fff;border:1px solid #00000014;border-radius:10px;padding:12px}.ticketThreadItem.admin{border-left:3px solid #7b1fa2}.ticketThreadItem.agent{border-left:3px solid #0d8f4f}.ticketThreadItem.user{border-left:3px solid #2196f3}.ticketThreadItemHead{justify-content:space-between;gap:8px;margin-bottom:6px;font-size:12px;display:flex}.ticketThreadAuthor{color:#111;font-weight:600}.ticketThreadTime{color:var(--muted);flex-shrink:0}.ticketThreadContent{white-space:pre-wrap;margin:0;font-size:14px;line-height:1.5}.ticketThreadReplyBtn{color:#0d8f4f;cursor:pointer;background:0 0;border:0;margin-top:8px;padding:0;font-size:12px;font-weight:600}.ticketThreadReplyBtn:hover{text-decoration:underline}.ticketReplyThreadWrap{max-height:240px;margin:12px 0;overflow-y:auto}.userTicketRepliesLabel{color:var(--muted);margin:8px 0 6px;font-size:11px;font-weight:600}.reportCharts{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:20px 0 8px;display:grid}.reportChartCard{background:linear-gradient(#fafbfc 0%,#fff 100%);border:1px solid #00000014;border-radius:14px;padding:16px;box-shadow:0 1px 4px #0000000a}.reportChartCardWide{grid-column:1/-1}.reportChartCardTitle{color:#111;margin:0 0 4px;font-size:15px;font-weight:600}.reportChartCardDesc{color:var(--muted);margin:0 0 14px;font-size:12px}.reportChartEmpty{color:var(--muted);text-align:center;margin:0;padding:24px 0;font-size:13px}.reportChartTip{color:#0d5c32;background:#0d8f4f1a;border:1px solid #0d8f4f38;border-radius:8px;margin:0 0 12px;padding:8px 12px;font-size:13px;font-weight:600;line-height:1.4}.reportComposeBar{background:#e8ecef;border-radius:8px;height:28px;display:flex;overflow:hidden}.reportComposeSeg{cursor:pointer;border:none;min-width:2px;padding:0;transition:width .35s,filter .15s,box-shadow .15s}.reportComposeSeg:hover,.reportComposeSeg.active{filter:brightness(1.08);box-shadow:inset 0 0 0 2px #ffffffd9}.reportComposeLegend li.active .reportComposeLegendBtn{background:#0d8f4f14;border-radius:6px}.reportComposeLegendBtn{cursor:pointer;text-align:left;width:100%;font:inherit;color:inherit;background:0 0;border:none;align-items:center;gap:6px;margin:-4px -6px;padding:4px 6px;display:flex}.reportComposeLegend{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px;margin:14px 0 0;padding:0;list-style:none;display:grid}.reportComposeLegend li{align-items:center;gap:6px;font-size:12px;display:flex}.reportComposeDot{border-radius:2px;flex-shrink:0;width:8px;height:8px}.reportComposeLabel{color:var(--muted);flex:1}.reportComposeVal{color:#111;font-weight:600}.reportComposePct{color:var(--muted);font-size:11px}.reportRingWrap{flex-wrap:wrap;justify-content:center;align-items:center;gap:20px;display:flex}.reportRing{cursor:pointer;border:2px solid #0000;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:120px;height:120px;padding:0;transition:box-shadow .15s,border-color .15s;display:flex}.reportRing:hover,.reportRing.active{border-color:#0d8f4f73;box-shadow:0 0 0 4px #0d8f4f1f}.reportRingStatBtn{cursor:pointer;width:100%;font:inherit;color:inherit;text-align:left;background:0 0;border:none;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:8px 10px;transition:background .15s;display:flex}.reportRingStatBtn:hover,.reportRingStatBtn.active{background:#0d8f4f14}.reportRingInner{background:#fff;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:84px;height:84px;display:flex;box-shadow:0 1px 6px #0000000f}.reportRingNum{color:#0d8f4f;font-size:22px;font-weight:700;line-height:1.1}.reportRingSub{color:var(--muted);margin-top:2px;font-size:10px}.reportRingStats{margin:0;padding:0;font-size:13px;list-style:none}.reportRingStats li{border-bottom:1px solid #0000000d;justify-content:space-between;gap:16px;padding:6px 0;display:flex}.reportRingStats li:last-child{border-bottom:0}.reportRingStats strong{color:#111}.reportTrendLegend{flex-wrap:wrap;gap:12px 16px;margin-bottom:12px;display:flex}.reportTrendLegendItem{color:var(--muted);align-items:center;gap:6px;font-size:12px;display:inline-flex}.reportTrendLegendItem i{border-radius:2px;width:10px;height:10px;display:inline-block}.reportTrendChart{align-items:stretch;gap:8px;display:flex}.reportTrendYAxis{color:var(--muted);text-align:right;box-sizing:border-box;flex-direction:column;flex-shrink:0;justify-content:space-between;width:32px;height:196px;padding:0 4px 24px 0;font-size:10px;display:flex}.reportTrendScroll{overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;border-radius:8px;flex:1;min-width:0;overflow:auto hidden}.reportTrendScroll::-webkit-scrollbar{height:6px}.reportTrendScroll::-webkit-scrollbar-thumb{background:#0000002e;border-radius:3px}.reportTrendPlot{box-sizing:border-box;border-bottom:1px solid #00000014;border-left:1px solid #00000014;align-items:flex-end;gap:6px;min-width:100%;padding:0 8px 0 4px;display:flex}.reportTrendGroup{flex-direction:column;flex:36px;align-items:center;min-width:36px;max-width:52px;display:flex}.reportTrendBars{justify-content:center;align-items:flex-end;gap:3px;width:100%;height:168px;display:flex}.reportTrendBar{cursor:pointer;border:none;border-radius:3px 3px 0 0;flex:1;min-width:4px;max-width:14px;min-height:4px;padding:0;transition:height .35s,box-shadow .15s,filter .15s}.reportTrendBar:hover,.reportTrendBar.active{filter:brightness(1.08);box-shadow:0 0 0 2px #00000026}.reportTrendLabel{color:var(--muted);white-space:nowrap;margin-top:8px;font-size:10px;line-height:1}.reportHBarList{flex-direction:column;gap:10px;display:flex}.reportHBarRow{border-radius:8px;transition:background .15s}.reportHBarRow.active{background:#0d8f4f0f}.reportHBarBtn{cursor:pointer;width:100%;font:inherit;color:inherit;text-align:left;background:0 0;border:none;grid-template-columns:72px 1fr 40px;align-items:center;gap:10px;padding:6px 8px;display:grid}.reportHBarBtn:hover .reportHBarFill{filter:brightness(1.06)}.reportHBarName{text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:500;overflow:hidden}.reportHBarTrack{background:#e8ecef;border-radius:5px;height:10px;overflow:hidden}.reportHBarTrackAlt{background:#0d8f4f1f}.reportHBarFill{background:linear-gradient(90deg,#2196f3,#64b5f6);border-radius:5px;min-width:2px;height:100%;transition:width .4s}.reportHBarFillAlt{background:linear-gradient(90deg,#0d8f4f,#2aae67)}.reportHBarNum{text-align:right;color:#111;font-size:12px;font-weight:600}@media (width<=720px){.reportCharts,.reportComposeLegend{grid-template-columns:1fr}.reportHBarBtn{grid-template-columns:56px 1fr 36px}}.adminReportsCard{margin-top:0;overflow:visible}.reportCharts,.reportChartCard{overflow:visible}.adminReportSection{margin-top:20px}.adminReportSectionTitle{color:#000000bf;margin-bottom:10px;font-size:14px;font-weight:600}.adminReportTableWrap{border:1px solid var(--line);background:#fff;border-radius:10px;overflow-x:auto}.adminReportTable{border-collapse:collapse;width:100%;min-width:640px;font-size:13px}.adminReportTable th,.adminReportTable td{text-align:left;border-bottom:1px solid var(--line);padding:10px 12px}.adminReportTable th{background:var(--bg2);color:#0000008c;white-space:nowrap;font-weight:600}.adminReportTable tbody tr:last-child td{border-bottom:0}.adminReportTable tbody tr:hover{background:#2aae670a}.adminReportOnline{color:var(--muted);font-size:11px;font-weight:600}.adminReportOnline.on{color:#0a7a2f}.adminReportFootnote{color:var(--muted);margin:16px 0 0;font-size:12px}.adminAccessForm{flex-direction:column;gap:14px;display:flex}.adminAccessSwitch{align-self:flex-start}.adminAccessHint{color:var(--muted);margin:0;font-size:13px}.adminAccessFields{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;display:grid}.adminAccessSaveBtn{align-self:flex-start}.regionHome{background:linear-gradient(165deg,#f0fdf4 0%,#ecfdf5 40%,#f8fafc 100%);justify-content:center;align-items:center;min-height:100dvh;padding:24px 16px;display:flex}.regionHomeCard{background:#fff;border:1px solid #2aae671f;border-radius:20px;width:100%;max-width:720px;padding:28px 24px 32px;box-shadow:0 12px 40px #0f172a14}.regionHomeTitle{color:#0f172a;text-align:center;margin:0 0 8px;font-size:22px;font-weight:700}.regionHomeDesc{color:var(--muted);text-align:center;margin:0 0 24px;font-size:14px}.regionHomeGrid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;display:grid}.regionHomeItem{color:inherit;background:#2aae670a;border:1px solid #2aae672e;border-radius:14px;flex-direction:column;align-items:center;gap:6px;padding:18px 12px;text-decoration:none;transition:transform .15s,box-shadow .15s,border-color .15s;display:flex}.regionHomeItem:hover{border-color:#2aae6759;transform:translateY(-2px);box-shadow:0 8px 24px #2aae671f}.regionHomeItemFlag{font-size:28px;line-height:1}.regionHomeItemName{color:#0f172a;font-size:15px;font-weight:700}.regionHomeItemHint{color:var(--muted);text-align:center;font-size:11px;line-height:1.35}.regionHomeFooter{text-align:center;margin-top:20px}.regionHomeLink{color:#0d8f4f;font-size:13px;text-decoration:none}.adminRegionLinks{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-bottom:16px;display:grid}.adminRegionLinkCard{background:#2aae670a;border:1px solid #2aae6726;border-radius:12px;padding:12px 14px}.adminRegionLinkHead{align-items:center;gap:8px;margin-bottom:10px;font-size:14px;display:flex}.adminRegionLinkFlag{font-size:20px}.adminRegionLinkRow{align-items:center;gap:8px;margin-top:6px;font-size:12px;display:flex}.adminRegionLinkLabel{color:var(--muted);min-width:32px}.adminRegionLinkUrl{color:#0d8f4f;word-break:break-all;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}
