.zkl-pop,.zkl-desk{--zkl-ink:#20262b;--zkl-muted:#505b63;--zkl-line:#dcdcde;--zkl-red:#bf1722;color:var(--zkl-ink);font:14px/1.5 system-ui,"Microsoft YaHei",sans-serif}
.zkl-pop{position:fixed;right:20px;bottom:20px;width:min(390px,calc(100vw - 24px));max-height:calc(100dvh - 24px);z-index:99990;box-shadow:0 12px 38px #0003;background:#fff;border-top:4px solid var(--zkl-red);overflow:auto}
.zkl-pop[hidden]{display:none}
.zkl-launcher{position:fixed;right:20px;bottom:20px;z-index:99989;display:flex;align-items:center;gap:9px;min-height:46px;padding:8px 14px;border:1px solid #111518;border-radius:4px;background:#111518;color:#fff;font:700 14px/1.45 system-ui,"Microsoft YaHei",sans-serif;box-shadow:0 6px 20px #0003;cursor:pointer}
.zkl-launcher:hover{background:#262c31}
.zkl-launcher:focus-visible{outline:2px solid #075c9c;outline-offset:3px}
.zkl-launcher-unread,.zkl-launcher-unread:hover{background:#bf1722;border-color:#bf1722}
.zkl-launcher-status{padding:2px 7px;border-radius:3px;background:#fff;color:#20262b;font-size:12px;white-space:nowrap}
.zkl-launcher[hidden],.zkl-launcher-status[hidden]{display:none}
.zkl-desk{display:grid;grid-template-columns:minmax(150px,235px) minmax(0,1fr);background:#fff;border:1px solid var(--zkl-line)}
.zkl-panel{min-width:0;background:#fff}
.zkl-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 14px;background:#111518;color:#fff}
.zkl-head h2{margin:0;font-size:17px;color:inherit}
.zkl-list{background:#f3f4f5;padding:14px;border-right:1px solid var(--zkl-line);max-height:630px;overflow:auto}
.zkl-list h3{margin:8px 0 6px;color:var(--zkl-muted);font-size:13px}
.zkl-log{height:clamp(110px,36vh,330px);padding:12px;overflow:auto;display:flex;flex-direction:column;gap:8px;background:#f3f4f5}
.zkl-message{align-self:flex-start;max-width:84%;padding:7px 10px;background:#fff;border:1px solid var(--zkl-line);white-space:pre-wrap;overflow-wrap:anywhere}
.zkl-own{align-self:flex-end;background:#fcebed}
.zkl-message small,.zkl-muted{color:var(--zkl-muted)}
.zkl-form{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:6px 8px;padding:12px}
.zkl-form label,.zkl-status{grid-column:1/-1}
.zkl-form textarea{box-sizing:border-box;width:100%;min-height:44px;margin:0;padding:6px 8px;border:1px solid #858e94;border-radius:0;background:#fff;color:var(--zkl-ink);font:inherit;resize:vertical}
.zkl-form button,.zkl-close,.zkl-thread{border:1px solid transparent;border-radius:0;font:inherit;min-height:44px;padding:6px 12px;cursor:pointer}
.zkl-close{background:#fff;color:var(--zkl-ink)}
.zkl-send,.zkl-thread[aria-pressed="true"]{background:var(--zkl-red);color:#fff}
.zkl-send:hover:not(:disabled){background:#9e111b}
.zkl-send:disabled{background:#e8e9eb;color:#555;cursor:not-allowed}
.zkl-thread{display:block;width:100%;margin-bottom:5px;text-align:left;background:#fff;color:var(--zkl-ink);border-color:var(--zkl-line);overflow-wrap:anywhere}
.zkl-thread:hover:not([aria-pressed="true"]){background:#fff1f2}
.zkl-thread{display:flex;align-items:center;justify-content:space-between;gap:6px}
.zkl-thread-label{min-width:0}
.zkl-pending{flex:none;padding:3px 8px;border:1px solid transparent;border-radius:4px;background:var(--zkl-red);color:#fff;font-size:13px;font-weight:700;white-space:nowrap}
.zkl-thread[aria-pressed="true"] .zkl-pending{border-color:#fff}
.zkl-status{min-height:1.5em;margin:0;color:var(--zkl-muted);font-size:13px}
.zkl-desk :focus-visible,.zkl-pop :focus-visible{outline:2px solid #075c9c;outline-offset:2px}
.zkl-badge:not(:empty){background:#bf1722;color:#fff;padding:2px 7px;margin-left:4px;border-radius:99px}
.zcm-tabs .active .zkl-badge:not(:empty){background:#fff;color:#a5121d}
@media(max-width:620px){.zkl-pop,.zkl-launcher{right:12px;bottom:12px}.zkl-desk{grid-template-columns:minmax(0,1fr)}.zkl-list{border-right:0;border-bottom:1px solid var(--zkl-line);max-height:180px}}
.zkl-launcher,.zkl-pop{right:clamp(12px,2vw,24px);bottom:clamp(72px,15vh,132px)}
.zkl-pop{max-height:calc(100dvh - clamp(72px,15vh,132px) - 12px)}
.zkl-launcher{box-sizing:border-box;min-height:56px;gap:10px;padding:10px 17px;border:1px solid #bf1722;border-radius:10px;background:#bf1722;color:#fff;font-size:16px;box-shadow:0 6px 20px #20262b38}
.zkl-launcher::before{content:"";width:24px;height:24px;flex:none;background:center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 4h14a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2H9l-5 4v-4a2 2 0 0 1-1-2V6a2 2 0 0 1 2-2Z'/%3E%3Cpath d='M8 10.5h.1m3.9 0h.1m3.9 0h.1' stroke-width='2.2'/%3E%3C/svg%3E")}
.zkl-launcher:hover,.zkl-launcher-unread{background:#a5121d;border-color:#a5121d}
.zkl-launcher-status{color:#a5121d}
.zkl-pop .zkl-head{justify-content:flex-end}
.zkl-pop .zkl-head h2{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.zkl-pop .zkl-close{background:var(--zkl-red);color:#fff}
.zkl-pop .zkl-close:hover{background:#9e111b}
.zkl-hint,.zkl-file-chip,.zkl-attachment-error{grid-column:1/-1}
.zkl-hint{color:var(--zkl-muted);font-size:12px}
.zkl-add-file{justify-self:start;grid-column:1/-1}
.zkl-form .zkl-add-file,.zkl-file-chip button,.zkl-download{border:1px solid #858e94;background:#fff;color:var(--zkl-ink);font:inherit;cursor:pointer;padding:6px 10px}
.zkl-file-chip:not(:empty){display:flex;align-items:center;gap:8px;min-width:0;padding:4px 8px;background:#f3f4f5;border:1px solid var(--zkl-line);overflow-wrap:anywhere}
.zkl-file-chip img{width:36px;height:36px;object-fit:contain}
.zkl-file-chip span{min-width:0}.zkl-file-chip button{flex:none}
.zkl-file-chip:empty,.zkl-attachment-error:empty{display:none}
.zkl-attachment-error{margin:0;color:#a5121d}
.zkl-received{display:grid;gap:4px;justify-items:start;min-width:0;white-space:normal}
.zkl-received-image{display:block;max-width:min(100%,250px);max-height:160px;object-fit:contain}
.zkl-received-image[hidden]{display:none}
.zkl-download{text-align:left;overflow-wrap:anywhere;max-width:100%}
.zkl-download:disabled,.zkl-form .zkl-add-file:disabled{opacity:.55;cursor:not-allowed}
