.kmv-fab{position:fixed;right:20px;bottom:20px;z-index:99990;display:flex;align-items:center;gap:10px;background:#0f1e3d;color:#fff;border:0;border-radius:999px;padding:10px 18px 10px 10px;box-shadow:0 10px 30px rgba(15,30,61,.35);cursor:pointer;font:700 14px/1 inherit}
.kmv-fab.hide{display:none}
.kmv-fab-ic{width:40px;height:40px;border-radius:50%;background:#c2410c;display:flex;align-items:center;justify-content:center;animation:kmvp 2.4s infinite}
.kmv-fab-ic svg,.kmv-mic svg{width:22px;height:22px;flex-shrink:0;display:block}
@keyframes kmvp{0%{box-shadow:0 0 0 0 rgba(194,65,12,.55)}70%{box-shadow:0 0 0 14px rgba(194,65,12,0)}100%{box-shadow:0 0 0 0 rgba(194,65,12,0)}}
.kmv-panel{position:fixed;right:20px;bottom:20px;z-index:99991;width:380px;max-width:calc(100vw - 24px);height:600px;max-height:calc(100vh - 40px);background:#fff;border-radius:20px;box-shadow:0 20px 60px rgba(15,30,61,.3);display:none;flex-direction:column;overflow:hidden;font-size:14px;color:#1b2433}
.kmv-panel.open{display:flex}
.kmv-head{display:flex;align-items:center;gap:8px;padding:12px 14px;background:#0f1e3d;color:#fff}
.kmv-brand{display:flex;align-items:center;gap:10px;flex:1}
.kmv-brand b{width:34px;height:34px;border-radius:9px;background:#fff;color:#0f1e3d;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:13px}
.kmv-brand strong{display:block;font-size:15px}.kmv-brand small{opacity:.7;font-size:11px;letter-spacing:.08em}
.kmv-langs{display:flex;background:rgba(255,255,255,.12);border-radius:999px;padding:2px}
.kmv-lang{background:none;border:0;color:#fff;padding:5px 10px;border-radius:999px;font-weight:700;cursor:pointer;font-size:12px}
.kmv-lang.on{background:#fff;color:#0f1e3d}
.kmv-x{background:none;border:0;color:#fff;font-size:24px;line-height:1;cursor:pointer;padding:0 4px}
.kmv-log{flex:1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:8px;background:#f6f7fb}
.kmv-b{max-width:85%;padding:9px 13px;border-radius:16px;line-height:1.45;white-space:pre-wrap}
.kmv-b.bot{background:#fff;align-self:flex-start;border-bottom-left-radius:4px;box-shadow:0 1px 3px rgba(0,0,0,.06)}
.kmv-b.user{background:#0f1e3d;color:#fff;align-self:flex-end;border-bottom-right-radius:4px}
.kmv-b.hint{align-self:center;background:#fff4ed;color:#9a3412;border:1px dashed #c2410c;font-weight:700;text-align:center}
.kmv-b.typing i{display:inline-block;width:6px;height:6px;margin:0 2px;border-radius:50%;background:#9aa3b2;animation:kmvt 1s infinite}
.kmv-b.typing i:nth-child(2){animation-delay:.15s}.kmv-b.typing i:nth-child(3){animation-delay:.3s}
@keyframes kmvt{50%{transform:translateY(-4px);opacity:.5}}
.kmv-chips{display:flex;flex-wrap:wrap;gap:6px}
.kmv-chips button{background:#fff;border:1px solid #dfe3ea;border-radius:999px;padding:6px 11px;cursor:pointer;font-size:13px;color:#0f1e3d}
.kmv-cards{display:flex;gap:10px;overflow-x:auto;padding-bottom:4px}
.kmv-card{flex:0 0 190px;background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 2px 10px rgba(15,30,61,.08)}
.kmv-card img{width:100%;height:130px;object-fit:cover;display:block;background:#f2f4f7}
.kmv-cb{padding:9px 10px 11px}
.kmv-cn{display:block;font-weight:700;color:#0f1e3d;text-decoration:none;font-size:13px;line-height:1.3;min-height:34px}
.kmv-cp{color:#c2410c;font-weight:800;margin:4px 0 6px}
.kmv-opts select{width:100%;margin-bottom:5px;font-size:12px;padding:4px;border-radius:6px;border:1px solid #dfe3ea}
.kmv-opts.warn select{border-color:#c2410c}
.kmv-add{width:100%;background:#0f1e3d;color:#fff;border:0;border-radius:999px;padding:8px;font-weight:800;cursor:pointer;font-size:12px}
.kmv-form{display:none;flex-direction:column;gap:6px;padding:10px 14px;border-top:1px solid #e6e9ee;max-height:48%;overflow-y:auto;background:#fff}
.kmv-form.open{display:flex}
.kmv-form input,.kmv-form select,.kmv-form textarea{width:100%;border:1px solid #dfe3ea;border-radius:9px;padding:8px 10px;font-size:13px;box-sizing:border-box}
.kmv-sum{font-size:12px;background:#f6f7fb;border-radius:9px;padding:8px 10px;line-height:1.5}
.kmv-sum:empty{display:none}
.kmv-form.ready{box-shadow:inset 0 3px 0 #15803d}
.kmv-bar{display:flex;gap:8px;align-items:center;padding:10px 12px;border-top:1px solid #e6e9ee;background:#fff}
.kmv-mic{flex:none;width:44px;height:44px;min-width:44px;padding:0;margin:0;line-height:1;border-radius:50%;border:0;background:#c2410c;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer}
.kmv-mic.rec{background:#dc2626;animation:kmvp 1.2s infinite}
.kmv-in{flex:1;border:1px solid #dfe3ea;border-radius:999px;padding:10px 14px;font-size:14px;min-width:0}
.kmv-send{flex:none;width:44px;height:44px;min-width:44px;padding:0;margin:0;line-height:1;display:flex;align-items:center;justify-content:center;border-radius:50%;border:0;background:#0f1e3d;color:#fff;cursor:pointer;font-size:16px}
.kmv-done{align-self:center;background:#15803d;color:#fff !important;padding:9px 16px;border-radius:999px;font-weight:800;text-decoration:none}
@media(max-width:480px){.kmv-panel{right:0;bottom:0;width:100vw;max-width:100vw;height:100%;max-height:100%;border-radius:0}.kmv-fab-tx{display:none}.kmv-fab{padding:6px}}