.chat-nav-btn{position:relative;display:inline-flex;align-items:center;gap:8px;height:36px;min-width:94px;padding:0 14px;border:0;border-radius:999px;color:#fff;font-weight:700;font-size:13px;letter-spacing:.3px;cursor:pointer;background:linear-gradient(135deg,#2f72d6,#1c5fbe);box-shadow:0 6px 16px rgba(28,95,190,.35);transition:transform .2s ease,box-shadow .2s ease,filter .2s ease}.chat-client-id,.chat-header-client-id{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}.chat-copy-btn{display:inline-flex;align-items:center;gap:6px;border:none;background:linear-gradient(135deg,#8b5cf6,#6366f1);color:#fff;border-radius:999px;padding:3px 10px;font-size:11px;font-weight:600;line-height:1.4;cursor:pointer;box-shadow:0 6px 14px rgba(99,102,241,.22);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease,color .18s ease}.chat-copy-btn:hover{background:linear-gradient(135deg,#7c3aed,#4f46e5);box-shadow:0 8px 18px rgba(79,70,229,.28);transform:translateY(-1px)}.chat-copy-btn i{font-size:13px}.chat-copy-btn.is-copied{background:linear-gradient(135deg,#34d399,#22c55e);color:#f0fdf4;box-shadow:0 8px 18px rgba(34,197,94,.24)}.chat-title-wrap{display:flex;flex-direction:column;gap:2px;min-width:0}.chat-header-client-id{font-size:11px;opacity:.95}.chat-copy-btn.is-header{background:linear-gradient(135deg,hsla(0,0%,100%,.3),rgba(219,234,254,.18));border:1px solid hsla(0,0%,100%,.42);border-color:hsla(0,0%,100%,.42);color:#fff;box-shadow:0 8px 18px rgba(20,66,148,.22);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.chat-copy-btn.is-header:hover{background:linear-gradient(135deg,hsla(0,0%,100%,.38),rgba(191,219,254,.24));border-color:hsla(0,0%,100%,.62);box-shadow:0 10px 22px rgba(20,66,148,.28)}.chat-copy-btn.is-header i{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:999px;background:hsla(0,0%,100%,.16);font-size:11px}.chat-copy-btn.is-header.is-copied{background:linear-gradient(135deg,rgba(52,211,153,.28),rgba(22,163,74,.24));border-color:rgba(187,247,208,.78);color:#effef5;box-shadow:0 10px 22px rgba(22,101,52,.26)}.chat-copy-btn.is-header.is-copied i{background:hsla(0,0%,100%,.2)}.chat-queue-list .chat-copy-btn{background:linear-gradient(135deg,#8b5cf6,#6366f1);color:#fff}.chat-nav-btn .icon{font-size:16px}.chat-nav-label{line-height:1}.chat-nav-btn:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(28,95,190,.45);filter:brightness(1.03)}.chat-nav-btn:active{transform:translateY(0)}.chat-badge-animated{position:absolute;top:0;right:0;transform:translate(45%,-45%);z-index:2;background:linear-gradient(135deg,#ff3860,#ff6384,#ff3860);color:#fff;font-weight:700;border-radius:999px;min-width:20px;height:20px;padding:0 6px;font-size:11px;display:inline-flex;align-items:center;justify-content:center;border:2px solid #fff;box-shadow:0 0 8px rgba(255,56,96,.7),0 0 15px rgba(255,56,96,.4);animation:popIn .4s ease,pulseGlow 2s infinite ease-in-out;transform-origin:center}@keyframes popIn{0%{transform:scale(0);opacity:0}60%{transform:scale(1.3);opacity:1}to{transform:scale(1)}}@keyframes pulseGlow{0%{box-shadow:0 0 6px rgba(255,56,96,.7),0 0 10px rgba(255,56,96,.4)}50%{box-shadow:0 0 14px #ff3860,0 0 20px rgba(255,56,96,.6);transform:scale(1.1)}to{box-shadow:0 0 6px rgba(255,56,96,.7),0 0 10px rgba(255,56,96,.4);transform:scale(1)}}.badge-bounce-enter-active,.badge-bounce-leave-active{transition:all .4s cubic-bezier(.175,.885,.32,1.275)}.badge-bounce-enter-from,.badge-bounce-leave-to{transform:scale(0);opacity:0}.chat-window{position:fixed;width:420px;height:500px;background:#fff;border-radius:14px;box-shadow:0 10px 25px rgba(0,0,0,.2);overflow:hidden;animation:slideUp .4s ease;display:flex;flex-direction:column}.chat-window-enter-active,.chat-window-leave-active{transition:opacity .25s ease,transform .25s ease}.chat-window-enter,.chat-window-leave-to{opacity:0;transform:translateY(10px)}@keyframes slideUp{0%{transform:translateY(40px) scale(.9);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.chat-header{background:linear-gradient(135deg,#3273dc,#4a90e2);color:#fff;padding:10px 14px;font-weight:600;font-size:15px;cursor:move;display:flex;justify-content:space-between;align-items:center}.chat-title{gap:8px}.chat-title,.minimized-unread-badge{display:inline-flex;align-items:center}.minimized-unread-badge{justify-content:center;min-width:18px;height:18px;padding:0 6px;border-radius:999px;font-size:11px;font-weight:700;color:#fff;background:#ff3860}.chat-header-actions{display:flex;align-items:center;gap:6px}.header-btn{background:transparent;border:none;color:#fff;font-size:16px;cursor:pointer;width:26px;height:26px;border-radius:4px}.header-btn:hover{background:hsla(0,0%,100%,.2)}.chat-body{flex:1;padding:10px;overflow-y:auto;background:#f8f9fb}.chat-queue-box{background:hsla(0,0%,100%,.95);border-radius:14px;padding:20px}.chat-queue-box h3{font-size:18px;font-weight:700;color:#2563eb;border-bottom:2px solid #2563eb;padding-bottom:8px;margin-bottom:12px}.chat-queue-list li{list-style:none;background:#f9fafc;border-radius:10px;padding:10px 14px;margin-bottom:8px;display:flex;justify-content:space-between;align-items:center}.chat-queue-list li p{margin:0;font-weight:600;color:#111827}.chat-queue-list li small{color:#6b7280;font-size:12px}.chat-queue-list button{background:linear-gradient(135deg,#8b5cf6,#6366f1);border:none;color:#fff;font-weight:600;border-radius:8px;padding:6px 14px;cursor:pointer}.chat-queue-list button:disabled{opacity:.7;cursor:not-allowed}.chat-open-actions{display:flex;gap:8px}.chat-close-btn{background:linear-gradient(135deg,#ff5e62,#ff3b6b)}.chat-empty-state{margin-top:8px;margin-bottom:14px;color:#6b7280;font-size:12px}.chat-window.is-minimized{width:320px;height:auto}.chat-window.is-minimized .chat-header{cursor:pointer}.minimized-overflow-indicator{position:fixed;right:16px;bottom:60px;height:30px;padding:0 12px;border:0;border-radius:999px;color:#fff;font-weight:700;font-size:12px;cursor:pointer;background:#1f2937;box-shadow:0 6px 14px rgba(0,0,0,.25);z-index:8000}.b-dialog{z-index:9999!important}@media (max-width:1023px){.chat-nav-btn{height:34px;min-width:84px;padding:0 12px;font-size:12px}.chat-window{width:calc(100vw - 16px);max-width:420px}.chat-window.is-minimized{width:calc(100vw - 16px);max-width:320px}}.chat-container{display:flex;flex-direction:column;height:100%;background:#f9fafc;border-radius:14px;overflow:hidden}.messages{flex:1;padding:10px;overflow-y:auto;background:linear-gradient(180deg,#fff,#f2f6fb);scroll-behavior:smooth}.message-wrapper{display:flex;margin-bottom:6px;max-width:90%}.message-wrapper.client{justify-content:flex-start}.message-wrapper.own{justify-content:flex-end}.message-wrapper.client .bubble{background:#e9edf5;color:#111;border-radius:14px 14px 14px 4px;box-shadow:0 1px 2px rgba(0,0,0,.08)}.message-wrapper.own .bubble{background:linear-gradient(135deg,#5a93f7,#3b82f6);color:#fff;border-radius:14px 14px 4px 14px;box-shadow:0 2px 6px rgba(91,141,239,.35)}.bubble{position:relative;padding:8px 12px 10px;font-size:14px;line-height:1.4;display:inline-block;max-width:80%;word-wrap:break-word;white-space:pre-wrap;animation:fadeIn .25s ease}.meta{font-size:12px;font-weight:600;opacity:.9}.meta,.text{margin-bottom:2px}.timestamp{font-size:11px;opacity:.7;text-align:right;margin-top:2px;display:block}.img-lightbox{position:fixed;background:rgba(0,0,0,.8);z-index:3000;display:flex;align-items:center;justify-content:center}.img-lightbox,.img-lightbox-bg{top:0;left:0;width:100%;height:100%}.img-lightbox-bg{position:absolute}.img-lightbox-content{max-width:90%;max-height:90%;border-radius:12px;box-shadow:0 0 25px rgba(0,0,0,.5);animation:zoomIn .25s ease}.chat-footer{display:flex;align-items:center;padding:8px;border-top:1px solid #ddd;background:#fff}.chat-input-wrapper{display:flex;align-items:center;position:relative;width:100%}.chat-input-wrapper input{flex:1;border:1px solid #ccc;border-radius:8px;padding:7px 9px;font-size:14px}.chat-input-wrapper button{background:linear-gradient(135deg,#4a90e2,#5b9dfc);border:none;color:#fff;border-radius:8px;padding:7px 10px;margin-left:8px;cursor:pointer;transition:transform .2s ease,background .2s ease}.chat-input-wrapper button:hover{transform:scale(1.05);background:linear-gradient(135deg,#3b82f6,#4a90e2)}.char-counter{position:absolute;top:-16px;right:12px;font-size:11px;opacity:.6;color:#555}.char-counter.warning{color:#eab308;opacity:.9}.chat-uploading{display:flex;align-items:center;justify-content:flex-start;gap:10px;background:#eef5ff;color:#004aad;padding:8px 14px;border-radius:12px;font-size:13px;margin:8px auto;width:fit-content;box-shadow:0 2px 6px rgba(0,0,0,.1);animation:fadeIn .3s ease}.chat-uploading .spinner{width:18px;height:18px;border:2px solid #c7d8ff;border-top:2px solid #004aad;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.upload-text{font-weight:500}.fade-out{opacity:0;transform:translateY(-5px);transition:opacity .4s ease,transform .4s ease}.drag-overlay{position:absolute;background:rgba(0,0,0,.4);font-size:18px;border-radius:10px}.drag-inner{padding:25px 40px;background:hsla(0,0%,100%,.1)}.text img{cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;border-radius:8px;display:block;width:320px!important;max-width:100%!important;height:auto!important;box-shadow:0 2px 6px rgba(0,0,0,.15)}.text img:hover{transform:scale(1.05);box-shadow:0 0 8px rgba(0,0,0,.3)}.img-overlay{position:fixed;inset:0;background:rgba(0,0,0,.85);display:flex;justify-content:center;align-items:center;z-index:10000;animation:fadeIn .2s ease}.img-overlay img{max-width:90%;max-height:90%;border-radius:10px;box-shadow:0 0 20px hsla(0,0%,100%,.2)}.drag-overlay,.img-overlay.fade-out{opacity:0;transition:opacity .3s ease}.drag-overlay{position:fixed;inset:0;background:rgba(0,0,0,.45);display:flex;align-items:center;justify-content:center;color:#fff;font-size:20px;font-weight:500;text-align:center;pointer-events:none;z-index:9999}.drag-overlay.visible{opacity:1;pointer-events:all}.drag-inner{border:2px dashed #fff;border-radius:12px;padding:30px 50px;background:hsla(0,0%,100%,.15);text-shadow:0 2px 6px rgba(0,0,0,.3)}.img-overlay img{animation:zoomIn .25s ease}@keyframes zoomIn{0%{transform:scale(.85);opacity:0}to{transform:scale(1);opacity:1}}