.mts-widget { position:fixed;right:20px;left:auto;bottom:max(24px,var(--mts-keyboard,0px));z-index:100001;direction:rtl;font-family:inherit; }
.mts-widget,.mts-app { --mts-brand:#0167ad;--mts-deep:#014f86;--mts-gold:#fba830;--mts-ink:#0c1b2b; }
.mts-widget,.mts-widget * { box-sizing:border-box; }
.mts-launcher { display:flex;align-items:center;gap:10px;min-height:54px;padding:12px 19px;border:1px solid #ffffff40;border-radius:19px;background:linear-gradient(125deg,var(--mts-brand),var(--mts-deep));color:#fff;font-family:inherit;font-size:14px;font-weight:800;line-height:1.6;box-shadow:0 8px 28px #014f8633,0 0 0 4px #ffffff80;cursor:pointer;transition:box-shadow .18s ease,transform .18s ease; }
.mts-launcher svg { color:var(--mts-gold);flex:none; }
.mts-window { position:absolute;bottom:68px;right:0;left:auto;width:min(400px,calc(100vw - 24px));height:min(660px,calc(var(--mts-visible-height,100dvh) - 114px));max-height:calc(var(--mts-visible-height,100dvh) - 114px);display:flex;flex-direction:column;overflow:hidden;overscroll-behavior:contain;border:1px solid #dce5ec;border-radius:24px;background:#f7fafc;box-shadow:0 24px 72px #04223b30,0 4px 16px #04223b0d; }
.mts-widget [hidden], .mts-app [hidden] { display:none!important; }
.mts-header { flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:20px 18px;background:linear-gradient(115deg,var(--mts-deep),var(--mts-brand));border-bottom:3px solid var(--mts-gold);color:#fff; }
.mts-header-identity { display:flex;align-items:center;gap:12px;min-width:0; }
.mts-header-icon { display:grid;place-items:center;width:46px;height:46px;flex:none;border:1px solid #ffffff26;border-radius:15px;background:#ffffff12;color:var(--mts-gold); }
.mts-header strong,.mts-header small { display:block;line-height:1.8; }
.mts-header strong { font-size:18px;font-weight:800; }
.mts-header small { font-size:11px;color:#e1eff9;margin-top:2px; }
.mts-header button { width:44px;height:44px;flex:none;border:1px solid #ffffff26;border-radius:13px;color:#fff;background:#ffffff10;font-size:26px;cursor:pointer; }
.mts-tabs { flex-shrink:0;display:flex;gap:4px;margin:0 16px 12px;padding:4px;border-radius:12px;background:#f0f4f7; }
.mts-tabs button { flex:1;min-width:0;min-height:44px;padding:7px 6px;border:0;border-radius:9px;font:inherit;font-size:13px;font-weight:700;color:#516978;background:transparent;cursor:pointer; }
.mts-tabs button[aria-selected=true] { background:#fff;color:#0167ad;box-shadow:0 1px 4px #04223b12; }
.mts-tabs button span { display:block;font-size:9px;line-height:1.7;font-weight:400; }
.mts-pane { flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#c9ddeb transparent; }
.mts-ai-pane { display:flex;flex-direction:column;overflow:hidden; }
.mts-ai-note { flex-shrink:0;margin:0;padding:10px 16px;font-size:10px;line-height:1.9;color:#617787;background:#fff; }
.mts-ai-state { padding:20px;font-size:13px;line-height:2;color:#516978; }
.mts-ai-retry { min-height:44px;margin:0 16px 16px;border:1px solid #dce5ec;border-radius:10px;background:#f4f7f9;color:#0167ad;font:inherit;cursor:pointer; }
.mts-ai-mount { flex:1;min-height:0; }
/* The upstream client uses open Shadow DOM. Hide its standalone surface until
   our compatibility adapter mounts it, preventing a second floating launcher. */
#hamkalam-widget { display:none!important; }
.mts-ai-mount > #hamkalam-widget { display:block!important;width:100%;height:100%;font-family:inherit; }
.mts-app { padding:20px;min-width:0;max-width:100%;color:var(--mts-ink);font-size:14px;line-height:1.9;text-align:right; }
.mts-app p { margin:0 0 14px;line-height:1.9!important;text-align:inherit; }
.mts-app form { display:flex;flex-direction:column;gap:9px;margin:0; }
.mts-app label { display:block;font-size:12px;font-weight:750; }
.mts-welcome { margin:2px 0 10px; }
.mts-greeting { margin-bottom:14px;padding:13px 14px;border:1px solid #d9e8f3;border-inline-start:3px solid var(--mts-gold);border-radius:12px;background:#fff; }
.mts-greeting strong { display:block;color:var(--mts-deep);font-size:15px;line-height:1.9;overflow-wrap:anywhere; }
.mts-app .mts-greeting p { margin:5px 0 0;color:#5a7182;font-size:12px; }
.mts-welcome strong { display:block;font-size:15px;line-height:1.9;font-weight:800;margin-bottom:6px; }
.mts-app .mts-welcome p { font-size:12px;color:#5a7182;margin:0; }
.mts-app :is(input:not([type=checkbox]),textarea) { box-sizing:border-box;width:100%;min-height:48px;padding:11px 13px;border:1px solid #d3e1ea;border-radius:12px;background:#fff;color:var(--mts-ink);font:inherit;font-size:16px;line-height:1.8;resize:vertical;box-shadow:0 2px 4px #04223b03; }
.mts-app :is(input,textarea)::placeholder { color:#7c8c98;font-size:13px;opacity:1; }
.mts-app input+label { margin-top:5px; }
.mts-app button { min-height:46px;padding:11px 15px;border:0;border-radius:12px;background:var(--mts-brand);color:#fff;font:inherit;font-weight:750;line-height:1.7;cursor:pointer; }
.mts-app button[type=submit] { background:linear-gradient(110deg,#ffc265,var(--mts-gold));color:#33230c;font-weight:850;box-shadow:0 4px 10px #fba83020; }
.mts-app button:disabled { opacity:.55;cursor:wait; }
.mts-app .mts-secondary { margin-block:8px;background:#eef6fc;color:#0167ad; }
.mts-app :is(button,input,textarea,a):focus-visible,.mts-widget button:focus-visible { outline:3px solid #fba830;outline-offset:3px; }
.mts-app .mts-consent { display:flex;align-items:flex-start;gap:10px;font-size:12px;line-height:1.9;margin:8px 0; }
.mts-consent input { width:20px;height:20px;flex:none;margin-top:4px;accent-color:#0167ad; }
.mts-app a { color:#0167ad;text-decoration:underline;text-underline-offset:3px; }
.mts-app .mts-status { padding:10px 12px;border:1px solid #dae9f4;border-radius:11px;background:#edf5fb;color:#245779;font-size:12px; }
.mts-app .mts-status.is-error { background:#fff2ee;color:#9b2d15; }
.mts-conversation-bar { display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;font-size:12px; }
.mts-messages { display:flex;flex-direction:column;gap:12px;max-height:320px;overflow:auto;overscroll-behavior:contain;margin-bottom:16px;padding:3px; }
.mts-message { max-width:92%;padding:12px 14px;border-radius:16px;font-size:14px; }
.mts-message.is-user { align-self:flex-start;background:#eaf4fc;border:1px solid #d9eaf7;border-top-right-radius:5px; }
.mts-message.is-staff { align-self:flex-end;background:#fff;border:1px solid #e0e8ef;border-top-left-radius:5px;box-shadow:0 2px 6px #04223b05; }
.mts-message strong { display:block;margin-bottom:6px;font-size:11px; }
.mts-app .mts-message p { white-space:pre-wrap;overflow-wrap:anywhere;margin:0 0 8px; }
.mts-message time { display:block;font-size:10px;color:#536a7c; }
.mts-note { display:block;margin-top:12px;font-size:11px;line-height:1.9;color:#5a7182; }
.mts-app .mts-phone { display:block;font-size:11px;text-align:center;margin-top:18px;padding-top:13px;border-top:1px solid #e0e9f0; }
.mts-compose-actions { display:flex;align-items:center;justify-content:space-between;gap:10px; }
.mts-app .mts-emoji-toggle { display:flex;align-items:center;justify-content:center;width:46px;height:46px;padding:0;flex:none;background:#fff;border:1px solid #d3e1ea;color:var(--mts-deep); }
.mts-app .mts-send { flex:1;display:flex;align-items:center;justify-content:center;gap:14px; }
.mts-send span { font-size:20px;line-height:1; }
.mts-app [data-mts-compose] { position:relative; }
.mts-emoji-picker { position:absolute;bottom:calc(100% + 8px);inset-inline:0;z-index:10;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;max-height:min(196px,32dvh);overflow:auto;overscroll-behavior:contain;padding:8px;border:1px solid #d3e1ea;border-radius:14px;background:#fff;box-shadow:0 8px 30px #04223b25;scrollbar-width:thin; }
.mts-app .mts-emoji-picker button { min-width:0;min-height:44px;padding:6px;background:transparent;color:var(--mts-ink);font-family:"Apple Color Emoji","Segoe UI Emoji",sans-serif;font-size:23px;line-height:1.35;border-radius:9px; }
.mts-app .mts-emoji-picker button:hover,.mts-app .mts-emoji-picker button:focus-visible { background:#edf5fb; }
@media(hover:hover) { .mts-launcher:hover { transform:translateY(-2px);box-shadow:0 12px 32px #014f8640,0 0 0 4px #ffffff90; } }
@media(prefers-reduced-motion:reduce) { .mts-launcher { transition:none; } }
.mts-app[data-mts-app=dashboard] { border:1px solid #d4e4ef;border-radius:20px;background:#fff;max-width:900px;width:100%;margin-inline:auto; }
.mts-app[data-mts-app=dashboard] .mts-messages { max-height:480px; }
@media(max-width:767px) {
  .mts-widget { right:12px;left:auto;bottom:max(calc(92px + env(safe-area-inset-bottom,0px)),calc(var(--mts-keyboard,0px) + 12px)); }
  .mts-launcher { width:50px;min-height:50px;padding:12px;border-radius:17px; }
  .mts-launcher span { display:none; }
  .mts-window { bottom:60px;height:min(660px,calc(var(--mts-visible-height,100dvh) - 88px));max-height:calc(var(--mts-visible-height,100dvh) - 172px);border-radius:18px; }
  .mts-widget:has(.mts-window:not([hidden])) { bottom:max(calc(88px + env(safe-area-inset-bottom,0px)),calc(var(--mts-keyboard,0px) + 12px)); }
  .mts-widget:has(.mts-window:not([hidden])) .mts-window { bottom:0;max-height:calc(var(--mts-visible-height,100dvh) - 104px - env(safe-area-inset-bottom,0px)); }
  .mts-widget:has(.mts-window:not([hidden])) .mts-launcher { display:none; }
  .mts-app { padding:16px; }
  .mts-header { padding:15px 14px; }
  .mts-header strong { font-size:17px; }
  .mts-tabs { margin-inline:12px;margin-bottom:10px; }
  .mts-messages { max-height:240px; }
}
/* Compact chat surface: independent history scrolling and stable composer. */
.mts-app .mts-emoji-picker{grid-template-columns:repeat(8,minmax(0,1fr));gap:0;padding:6px;direction:ltr;contain:layout paint;}
.mts-app .mts-emoji-picker button{display:grid;place-items:center;width:100%;min-width:0;min-height:36px;height:36px;padding:0;border:0;border-radius:7px;background:transparent;box-shadow:none;font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;font-size:23px;line-height:1;transition:none;touch-action:manipulation;}
.mts-app .mts-emoji-picker button:hover,.mts-app .mts-emoji-picker button:focus-visible{background:#eaf3f9;outline:2px solid #0167ad;outline-offset:-2px;}
@media(pointer:coarse){.mts-app .mts-emoji-picker{grid-template-columns:repeat(6,minmax(0,1fr));}.mts-app .mts-emoji-picker button{height:44px;min-height:44px;}}
.mts-widget .mts-window{width:min(380px,calc(100vw - 24px));border-radius:20px;background:#f4f7fa}
.mts-widget .mts-header{padding:14px 16px;border-bottom:0;background:linear-gradient(110deg,#04223b,#0167ad);gap:8px}
.mts-widget .mts-header strong{font-size:16px}
.mts-widget .mts-header small{font-size:12px}
.mts-widget .mts-header-icon{width:42px;height:42px;border-radius:50%;color:#fba830}
.mts-widget .mts-header button{display:grid;place-items:center;padding:0;border:0;border-radius:50%;background:#ffffff12;line-height:1}
.mts-widget .mts-pane:not(.mts-ai-pane){display:flex;flex-direction:column;overflow:auto}
.mts-widget .mts-app{display:flex;flex-direction:column;flex:1;min-height:0;padding:14px;background:radial-gradient(circle at 8px 8px,#0167ad06 1px,transparent 2px) 0 0/24px 24px,#f5f8fb}
.mts-widget .mts-app:has([data-mts-conversation]:not([hidden])){overflow:hidden}
.mts-widget .mts-greeting{flex:none;margin:0 0 8px;padding:9px 12px;border:1px solid #e1eaf0;border-radius:14px;background:#fff}
.mts-widget .mts-greeting strong{font-size:13px}
.mts-widget .mts-greeting p{font-size:11px;margin-top:2px}
.mts-widget .mts-status{flex:none;font-size:11px;padding:5px 8px;margin:0 0 8px;border:0;background:transparent;color:#516978}
.mts-widget [data-mts-conversation]{display:flex;flex-direction:column;flex:1;min-height:0}
.mts-widget .mts-conversation-bar{flex:none;font-size:11px;margin:0 0 8px}
.mts-widget .mts-messages{flex:1;min-height:60px;max-height:none;margin:0;padding:4px 2px 14px;gap:10px}
.mts-widget .mts-message{max-width:88%;padding:10px 12px;border-radius:16px;line-height:1.9;font-size:13px}
.mts-widget .mts-message.is-user{background:#0167ad;color:#fff;border:0;border-bottom-right-radius:4px;border-top-right-radius:16px}
.mts-widget .mts-message.is-user time{color:#e0f0ff}
.mts-widget .mts-message.is-staff{border:1px solid #e5ebf0;border-bottom-left-radius:4px;border-top-left-radius:16px}
.mts-widget [data-mts-compose]{flex:none;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:6px;margin:0 -14px;padding:10px 12px;background:#fff;border-top:1px solid #e4ebf1}
.mts-widget [data-mts-compose]>label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.mts-widget [data-mts-compose] textarea{height:60px;min-height:44px;max-height:110px;resize:none;box-shadow:none;border:0;border-radius:0;padding:8px 4px;font-size:16px;line-height:1.8}
.mts-widget .mts-compose-actions{gap:4px;align-items:center}
.mts-widget .mts-emoji-toggle{width:40px;height:44px;min-height:44px;border:0;background:transparent;border-radius:50%;color:#526979}
.mts-widget .mts-send{width:44px;height:44px;min-height:44px;flex:none;padding:0;gap:0;border-radius:50%;background:#0167ad;color:#fff;font-size:0;box-shadow:none}
.mts-widget .mts-send span{display:block;font-size:24px;line-height:1}
.mts-widget .mts-emoji-picker{inset-inline:10px;bottom:calc(100% + 6px);max-height:min(196px,30dvh)}
.mts-widget .mts-note{flex:none;margin:0 -14px;padding:5px 12px;background:#fff;color:#667986;font-size:10px;line-height:1.7}
.mts-widget .mts-phone{flex:none;font-size:10px;border:0;padding:5px 0 0;margin:0}
@media(max-width:767px){
 .mts-widget .mts-window{width:calc(100vw - 24px);border-radius:18px}
 .mts-widget .mts-header{padding:12px}
 .mts-widget .mts-app{padding:12px}
 .mts-widget [data-mts-compose],.mts-widget .mts-note{margin-inline:-12px}
 .mts-widget .mts-greeting p{display:none}
}
/* Measured reference: full-width white tray, RTL 24px native emoji. */
.mts-app .mts-emoji-picker,.mts-widget .mts-emoji-picker{display:flex;flex-wrap:wrap;justify-content:center;align-content:flex-start;direction:rtl;gap:0 2px;padding:5px 0;inset-inline:0;bottom:100%;border:0;border-radius:0;max-height:min(251px,38dvh);background:#fff;box-shadow:0 -3px 12px #04223b14;}
.mts-app .mts-emoji-picker button{flex:0 0 30px;width:30px;height:37px;min-height:37px;padding:5px 3px;font-size:24px;line-height:27px;border-radius:0;}
.mts-app .mts-emoji-picker button>span{font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;font-size:24px;line-height:27px;}
/* Complete floating-chat layout; dashboard support retains its own layout. */
.mts-app .mts-send{display:inline-flex;align-items:center;justify-content:center;}
.mts-app .mts-send svg{display:block;flex:none;width:22px;height:22px;transform:rotate(180deg);}
.mts-widget .mts-window{bottom:0;width:min(380px,calc(100vw - 24px));height:min(660px,calc(var(--mts-visible-height,100dvh) - 40px));max-height:calc(var(--mts-visible-height,100dvh) - 40px);border:0;border-radius:12px;box-shadow:0 3px 18px #04223b26;background:#f3f5f7;}
.mts-widget .mts-launcher[aria-expanded=true]{visibility:hidden;pointer-events:none;}
.mts-widget .mts-header{min-height:76px;padding:12px 16px;background:#0167ad;border:0;}
.mts-widget .mts-header-identity{gap:10px;}
.mts-widget .mts-header-icon{width:40px;height:40px;background:#ffffff18;border:1px solid #ffffff50;}
.mts-widget .mts-header strong{font-size:15px;line-height:1.8;font-weight:700;}
.mts-widget .mts-header small{font-size:11px;line-height:1.8;color:#e0eff9;}
.mts-widget .mts-header button{width:36px;height:36px;min-height:36px;font-size:24px;background:#ffffff10;}
.mts-widget .mts-app{padding:16px 0 0;background-color:#f2f4f5;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='96' height='96' viewBox='0 0 96 96'%3E%3Cg fill='%230167ad' fill-opacity='.035'%3E%3Cpath d='M4 6 20 2v12c0 5.5-3.6 9-8 9s-8-3.5-8-9V6Z' transform='translate(12 12)'/%3E%3Cpath d='M4 6 20 2v12c0 5.5-3.6 9-8 9s-8-3.5-8-9V6Z' transform='translate(60 60)'/%3E%3C/g%3E%3C/svg%3E");background-size:96px 96px;}
.mts-widget .mts-greeting{margin:0 18px 10px;padding:12px 16px;max-width:calc(100% - 36px);border:0;border-radius:20px 20px 5px 20px;box-shadow:0 1px 2px #04223b12;align-self:flex-start;}
.mts-widget .mts-greeting strong{font-size:13px;font-weight:500;color:#243b4b;}
.mts-widget .mts-greeting p{display:none;}
.mts-widget .mts-status:not(.is-error){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);}
.mts-widget .mts-status.is-error{margin:8px 16px;padding:10px 12px;background:#fff1ee;color:#982d21;border-radius:10px;}
.mts-widget .mts-conversation-bar{margin:0;padding:0 18px 10px;min-height:24px;}
.mts-widget .mts-conversation-bar strong{display:none;}
.mts-widget .mts-conversation-bar a{font-size:10px;color:#637f91;text-decoration:none;}
.mts-widget .mts-messages{padding:8px 18px 18px;gap:16px;}
.mts-widget .mts-message{max-width:90%;padding:12px 15px;border-radius:20px;font-size:13px;line-height:1.9;box-shadow:0 1px 2px #04223b12;}
.mts-widget .mts-message.is-user{background:#e2f0fa;color:#15364d;border:0;border-radius:20px 20px 5px 20px;}
.mts-widget .mts-message.is-user time{color:#6c8594;}
.mts-widget .mts-message.is-staff{background:white;border:0;border-radius:20px 20px 20px 5px;}
.mts-widget .mts-message strong{font-size:10px;font-weight:500;color:#60798a;}
.mts-widget .mts-message time{font-size:10px;margin-top:5px;}
.mts-widget [data-mts-compose]{margin:0;padding:5px 12px;min-height:54px;gap:6px;align-items:center;background:#fff;border:0;}
.mts-widget [data-mts-compose] textarea{height:44px;min-height:44px;max-height:90px;padding:9px 0;font-size:16px;line-height:26px;}
.mts-widget .mts-compose-actions{gap:4px;}
.mts-widget .mts-emoji-toggle{width:36px;height:44px;color:#8b969e;background:transparent;}
.mts-widget .mts-send[type=submit]{width:44px;height:44px;min-height:44px;padding:11px;border-radius:50%;background:#0167ad;color:#fff;box-shadow:none;}
.mts-widget .mts-send[type=submit]:hover{background:#014f86;}
.mts-widget .mts-note,.mts-widget .mts-phone{display:none;}
.mts-widget [data-mts-identity],.mts-widget [data-mts-otp]{margin:0 16px 16px;padding:16px;background:#fff;border:1px solid #e7edf1;border-radius:18px;}
@media(max-width:767px){
 .mts-widget .mts-window{width:calc(100vw - 24px);height:min(660px,calc(var(--mts-visible-height,100dvh) - 100px));max-height:calc(var(--mts-visible-height,100dvh) - 100px);border-radius:12px;}
 .mts-widget .mts-header{padding:12px;}
 .mts-widget .mts-app{padding:14px 0 0;}
 .mts-widget [data-mts-compose]{margin:0;}
}
