.dm-launch{position:fixed;right:20px;bottom:20px;z-index:9998;display:flex;align-items:center;gap:10px;background:#0f0f0f;color:#f2e6c9;border:1px solid #c9a24a;border-radius:999px;padding:10px 18px 10px 12px;font:500 13px/1 'IBM Plex Mono',monospace;letter-spacing:.5px;cursor:pointer;box-shadow:0 10px 30px -12px rgba(0,0,0,.6)}
.dm-launch:hover{background:#1c1a15}
.dm-launch svg{width:22px;height:22px;color:#c9a24a;flex:none}
.dm-launch[hidden]{display:none}
.dm-panel{position:fixed;right:20px;bottom:20px;z-index:9999;width:370px;max-width:calc(100vw - 32px);height:560px;max-height:calc(100vh - 40px);display:flex;flex-direction:column;background:#0f0f0f;color:#e8e1d0;border:1px solid #3a3220;border-radius:14px;overflow:hidden;box-shadow:0 24px 60px -20px rgba(0,0,0,.7);font-family:Archivo,system-ui,sans-serif}
.dm-panel[hidden]{display:none}
.dm-head{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid #3a3220}
.dm-badge{width:34px;height:34px;border-radius:50%;border:1px solid #c9a24a;display:flex;align-items:center;justify-content:center;color:#c9a24a;flex:none}
.dm-badge svg{width:18px;height:18px}
.dm-title{flex:1;min-width:0}
.dm-title b{display:block;font:500 17px/1.2 Fraunces,Georgia,serif;color:#f2e6c9}
.dm-title span{font:400 11px/1.4 'IBM Plex Mono',monospace;color:#a89a7a}
.dm-x{background:none;border:0;color:#a89a7a;font-size:22px;line-height:1;cursor:pointer;padding:4px 6px}
.dm-x:hover{color:#f2e6c9}
.dm-log{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:10px}
.dm-msg{font-size:14px;line-height:1.55;padding:10px 12px;border-radius:10px;max-width:86%;white-space:pre-wrap;word-wrap:break-word}
.dm-bot{background:#1c1a15;color:#e8e1d0;align-self:flex-start}
.dm-you{background:#c9a24a;color:#1a1408;align-self:flex-end}
.dm-bot a{color:#e6c46f;text-decoration:underline}
.dm-typing{color:#a89a7a;font:400 12px 'IBM Plex Mono',monospace;align-self:flex-start}
.dm-chips{display:flex;flex-wrap:wrap;gap:6px}
.dm-chip{background:none;border:1px solid #c9a24a;color:#c9a24a;font:400 12px/1 Archivo,sans-serif;padding:7px 11px;border-radius:999px;cursor:pointer}
.dm-chip:hover{background:#c9a24a;color:#1a1408}
.dm-form{background:#1c1a15;border:1px solid #3a3220;border-radius:10px;padding:12px;display:flex;flex-direction:column;gap:8px;align-self:stretch}
.dm-form p{margin:0;font-size:13px;color:#f2e6c9}
.dm-form input[type=text],.dm-form input[type=email],.dm-form input[type=tel]{background:#0f0f0f;border:1px solid #3a3220;color:#e8e1d0;border-radius:8px;padding:9px 10px;font:400 14px Archivo,sans-serif}
.dm-form label.dm-consent{display:flex;gap:8px;font-size:10.5px;line-height:1.45;color:#a89a7a}
.dm-form label.dm-consent a{color:#c9a24a}
.dm-form button{background:#c9a24a;color:#1a1408;border:0;border-radius:8px;padding:10px;font:600 13px Archivo,sans-serif;cursor:pointer}
.dm-err{color:#f09595;font-size:12px;margin:0}
.dm-input{display:flex;gap:8px;padding:10px 12px;border-top:1px solid #3a3220}
.dm-input textarea{flex:1;resize:none;background:#1c1a15;border:1px solid #3a3220;color:#e8e1d0;border-radius:8px;padding:9px 10px;font:400 14px/1.4 Archivo,sans-serif;max-height:96px}
.dm-input textarea::placeholder{color:#7d735e}
.dm-send{width:38px;border-radius:8px;border:0;background:#c9a24a;color:#1a1408;cursor:pointer;font-size:18px}
.dm-send:disabled{opacity:.5;cursor:default}
.dm-foot{margin:0;padding:0 12px 10px;color:#7d735e;font:400 10.5px/1.4 'IBM Plex Mono',monospace;text-align:center}
@media (max-width:600px){
  .dm-launch{right:14px;bottom:14px;padding:10px}
  .dm-launch span{display:none}
  .dm-panel{right:0;bottom:0;width:100vw;max-width:100vw;height:100%;max-height:100%;border-radius:0}
}
