/* Website live chat (js/webchat.js). Sits above the mobile tab bar (--mrf-tab-h from site-chrome.css). */
.mrf-wc { --wc-brand: #0b6b78; --wc-ink: #0f172a; --wc-muted: #64748b; --wc-line: #e3e8f0; --wc-bg: #fff; --wc-soft: #f1f5f9;
  position: fixed; right: 16px; bottom: calc(var(--mrf-tab-h, 0px) + 16px); z-index: 1039; font-family: "Inter", "Rubik", system-ui, -apple-system, "Segoe UI", sans-serif; color: var(--wc-ink); }
.mrf-wc[dir="rtl"] { right: auto; left: 16px; }
@media (prefers-color-scheme: dark) { .mrf-wc { --wc-ink: #e2e8f0; --wc-muted: #94a3b8; --wc-line: #334155; --wc-bg: #0f172a; --wc-soft: #1e293b; } }
.mrf-wc-launch { position: relative; width: 56px; height: 56px; border: 0; border-radius: 50%; background: var(--wc-brand); color: #fff; cursor: pointer;
  display: grid; place-items: center; box-shadow: 0 10px 26px rgba(11,107,120,.35); transition: transform .15s ease; }
.mrf-wc-launch:hover { transform: translateY(-2px); }
.mrf-wc-launch:focus-visible, .mrf-wc button:focus-visible, .mrf-wc textarea:focus-visible, .mrf-wc input:focus-visible { outline: 3px solid #f59e0b; outline-offset: 2px; }
.mrf-wc-badge { position: absolute; top: -2px; right: -2px; min-width: 20px; height: 20px; padding: 0 6px; border-radius: 999px; background: #dc2626; color: #fff; font: 700 12px/20px system-ui, sans-serif; }
.mrf-wc-panel { position: absolute; bottom: 68px; right: 0; width: min(370px, calc(100vw - 32px)); height: min(540px, calc(100vh - var(--mrf-tab-h, 0px) - 120px));
  display: flex; flex-direction: column; background: var(--wc-bg); border: 1px solid var(--wc-line); border-radius: 18px; overflow: hidden; box-shadow: 0 20px 50px rgba(15,23,42,.25); }
.mrf-wc[dir="rtl"] .mrf-wc-panel { right: auto; left: 0; }
.mrf-wc-panel[hidden] { display: none; }
.mrf-wc-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 12px 14px; background: var(--wc-brand); color: #fff; }
.mrf-wc-head strong { display: block; font-size: 16px; }
.mrf-wc-head small { opacity: .85; font-size: 12.5px; }
.mrf-wc-x { width: 36px; height: 36px; border: 0; border-radius: 10px; background: rgba(255,255,255,.15); color: #fff; font-size: 22px; line-height: 1; cursor: pointer; }
.mrf-wc-log { flex: 1; overflow-y: auto; padding: 12px; display: flex; flex-direction: column; gap: 8px; background: var(--wc-soft); }
.mrf-wc-intro { margin: 0 0 4px; padding: 10px 12px; border-radius: 12px; background: var(--wc-bg); color: var(--wc-muted); font-size: 13.5px; }
.mrf-wc-msg { max-width: 82%; padding: 8px 11px; border-radius: 14px; font-size: 14.5px; line-height: 1.45; }
.mrf-wc-msg.is-you { align-self: flex-end; background: var(--wc-brand); color: #fff; border-end-end-radius: 4px; }
.mrf-wc-msg.is-team { align-self: flex-start; background: var(--wc-bg); border: 1px solid var(--wc-line); border-end-start-radius: 4px; }
.mrf-wc-msg.is-failed { background: #b91c1c; cursor: pointer; }
.mrf-wc-text { white-space: pre-wrap; overflow-wrap: anywhere; }
.mrf-wc-meta { display: block; margin-top: 2px; font-size: 11px; opacity: .75; }
.mrf-wc-form { padding: 10px; border-top: 1px solid var(--wc-line); background: var(--wc-bg); display: grid; gap: 8px; }
.mrf-wc-form[hidden] { display: none; }
.mrf-wc-name, .mrf-wc-input { width: 100%; box-sizing: border-box; padding: 9px 11px; border: 1px solid var(--wc-line); border-radius: 10px; background: var(--wc-bg); color: var(--wc-ink); font: inherit; font-size: 16px; }
.mrf-wc-input { resize: none; max-height: 120px; }
.mrf-wc-row { display: flex; gap: 8px; align-items: flex-end; }
.mrf-wc-send { flex: none; height: 42px; padding: 0 16px; border: 0; border-radius: 10px; background: var(--wc-brand); color: #fff; font-weight: 700; cursor: pointer; }
.mrf-wc-note { font-size: 12.5px; color: #b91c1c; }
.mrf-wc-note:empty { display: none; }
.mrf-wc-wa { font-size: 12.5px; color: var(--wc-brand); }
.mrf-wc-trap { position: absolute; left: -9999px; width: 1px; height: 1px; opacity: 0; }
@media (max-width: 480px) {
  .mrf-wc.is-open { left: 0; right: 0; bottom: var(--mrf-tab-h, 0px); }
  .mrf-wc.is-open .mrf-wc-launch { display: none; }
  .mrf-wc.is-open .mrf-wc-panel { position: fixed; left: 0; right: 0; bottom: var(--mrf-tab-h, 0px); top: 0; width: auto; height: auto; border-radius: 0; border: 0; }
}
@media (prefers-reduced-motion: reduce) { .mrf-wc-launch { transition: none; } }
