/* Florian Matthias Support-Bot */
.fmsb-launcher{position:fixed;right:20px;bottom:20px;width:56px;height:56px;border:0;border-radius:50%;
  background:#2563eb;color:#fff;font-size:24px;cursor:pointer;box-shadow:0 4px 14px rgba(0,0,0,.25);z-index:99998}
.fmsb-launcher:hover{filter:brightness(1.08)}

.fmsb-panel{display:flex;flex-direction:column;background:#fff;color:#111;border:1px solid #e2e2e2;
  border-radius:14px;overflow:hidden;box-shadow:0 10px 40px rgba(0,0,0,.18);font-size:15px;line-height:1.45}

.fmsb-floating-panel{position:fixed;right:20px;bottom:88px;width:360px;max-width:calc(100vw - 32px);
  height:520px;max-height:calc(100vh - 120px);z-index:99999;display:none}
body.fmsb-open .fmsb-floating-panel{display:flex}

.fmsb-inline-panel{height:480px;width:100%;margin:16px 0}

.fmsb-header{background:#2563eb;color:#fff;padding:12px 14px;font-weight:600;display:flex;
  align-items:center;justify-content:space-between}
.fmsb-close{background:transparent;border:0;color:#fff;font-size:22px;line-height:1;cursor:pointer}

.fmsb-log{flex:1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:10px;background:#f7f8fa}
.fmsb-msg{padding:10px 12px;border-radius:12px;max-width:85%;white-space:pre-wrap;word-wrap:break-word}
.fmsb-user{align-self:flex-end;background:#2563eb;color:#fff;border-bottom-right-radius:4px}
.fmsb-bot{align-self:flex-start;background:#fff;border:1px solid #e2e2e2;border-bottom-left-radius:4px}
.fmsb-thinking{opacity:.6}

.fmsb-form{display:flex;gap:8px;padding:10px;border-top:1px solid #eee;background:#fff}
.fmsb-input{flex:1;padding:10px;border:1px solid #ccc;border-radius:8px;font-size:15px}
.fmsb-send{padding:10px 14px;border:0;border-radius:8px;background:#2563eb;color:#fff;cursor:pointer}
.fmsb-send:disabled{opacity:.5;cursor:default}

@media (prefers-color-scheme: dark){
  .fmsb-panel{background:#1e1f22;color:#eee;border-color:#333}
  .fmsb-log{background:#181a1d}
  .fmsb-bot{background:#26282c;border-color:#3a3d42}
  .fmsb-form{background:#1e1f22;border-top-color:#333}
  .fmsb-input{background:#26282c;color:#eee;border-color:#3a3d42}
}
