:root{--map-chat-blue:#073d91;--map-chat-red:#e51d2a;--map-chat-ink:#17253b;--map-chat-bg:#f4f7fb}
.map-support-messenger{position:fixed;right:20px;bottom:20px;z-index:2147482000;font-family:Arial,Helvetica,sans-serif}
.map-support-launcher{position:relative;width:62px;height:62px;border:0;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#0b5eb8,#073d91);color:#fff;box-shadow:0 10px 30px rgba(0,42,95,.35);cursor:pointer;font-size:28px}
.map-support-launcher:hover{transform:translateY(-1px)}
.map-support-unread{position:absolute;right:-2px;top:-4px;min-width:21px;height:21px;padding:0 5px;border-radius:20px;display:grid;place-items:center;background:#e51d2a;color:#fff;border:2px solid #fff;font-size:11px;font-weight:800}
.map-support-panel{position:absolute;right:0;bottom:76px;width:min(380px,calc(100vw - 30px));height:min(590px,calc(100vh - 120px));display:none;grid-template-rows:auto 1fr auto auto auto;background:#fff;border:1px solid #dfe7f0;border-radius:18px;overflow:hidden;box-shadow:0 18px 60px rgba(10,35,70,.28)}
.map-support-panel.is-open{display:grid}
.map-support-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:linear-gradient(135deg,#073d91,#0d5db2);color:#fff}
.map-support-head>.map-support-head-copy{display:grid;grid-template-columns:10px 1fr;column-gap:8px;align-items:center}.map-support-head strong{font-size:15px}.map-support-head small{grid-column:2;color:#dceaff;font-size:11px}.map-support-head button{border:0;background:rgba(255,255,255,.16);color:#fff;width:32px;height:32px;border-radius:50%;font-size:20px;cursor:pointer}
.map-support-online-dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:#25d366;box-shadow:0 0 0 3px rgba(37,211,102,.18)}
.map-support-thread{overflow:auto;padding:16px;background:var(--map-chat-bg)}
.map-support-bubble{max-width:84%;margin:8px 0;padding:10px 12px;border-radius:14px;background:#fff;border:1px solid #e5e9ef;box-shadow:0 2px 8px rgba(0,0,0,.04)}.map-support-bubble.is-customer{margin-left:auto;background:#e9f2ff;border-color:#d4e6ff}.map-support-bubble strong{display:block;font-size:11px;color:#41617f}.map-support-bubble p{margin:4px 0 0;color:#18283b;font-size:13px;line-height:1.45}.map-support-bubble small{display:block;margin-top:5px;color:#8793a2;font-size:9px}
.map-support-identity{padding:11px 12px;border-top:1px solid #e8edf3;background:#fff}.map-support-identity p{margin:0 0 8px;font-size:12px;color:#55697f}.map-support-two{display:grid;grid-template-columns:1fr 1fr;gap:7px}.map-support-identity input{width:100%;min-height:38px;margin:0 0 7px;padding:8px 10px;border:1px solid #ccd7e3;border-radius:9px;font-size:12px}
.map-support-composer{display:grid;grid-template-columns:1fr 44px;gap:8px;padding:10px;border-top:1px solid #e7edf4;background:#fff}.map-support-composer textarea{resize:none;min-height:44px;max-height:100px;padding:10px;border:1px solid #cbd7e3;border-radius:11px;font:inherit;font-size:13px}.map-support-composer button{border:0;border-radius:11px;background:#e51d2a;color:#fff;font-size:20px;cursor:pointer}.map-support-status{min-height:0;padding:0 12px 8px;color:#a72828;font-size:11px;background:#fff}
.map-agent-login-wrap{min-height:70vh;display:grid;place-items:center;padding:35px 15px;background:#f3f7fb}.map-agent-login-card{width:min(440px,100%);padding:28px;background:#fff;border:1px solid #dfe7ef;border-radius:16px;box-shadow:0 12px 40px rgba(8,45,85,.12)}.map-agent-login-card h1{margin-top:0;color:#073d91}.map-agent-login-card input{width:100%}
.map-agent-inbox{height:calc(100vh - 20px);min-height:650px;display:grid;grid-template-columns:360px 1fr;background:#f4f7fb;border:1px solid #dfe7ef;font-family:Arial,Helvetica,sans-serif;color:#17253b}
.map-agent-sidebar{display:grid;grid-template-rows:auto auto 1fr;background:#fff;border-right:1px solid #dce5ef;min-width:0}.map-agent-brand{display:flex;align-items:center;justify-content:space-between;padding:18px;border-bottom:1px solid #e6edf4}.map-agent-brand>.map-agent-brand-copy{display:grid;grid-template-columns:10px 1fr;column-gap:8px;align-items:center}.map-agent-brand strong{color:#073d91}.map-agent-brand small{grid-column:2;color:#73859a;font-size:10px}.map-agent-brand button{border:1px solid #c9d7e6;background:#fff;color:#174a7d;border-radius:8px;padding:7px 8px;font-size:10px;cursor:pointer}.map-agent-tools{display:grid;grid-template-columns:1fr 90px;gap:8px;padding:12px;border-bottom:1px solid #e6edf4}.map-agent-tools input,.map-agent-tools select{min-height:38px;border:1px solid #cfdae6;border-radius:8px;padding:7px 9px;background:#fff}.map-agent-list{overflow:auto}.map-agent-list-item{width:100%;display:grid;grid-template-columns:42px 1fr auto;gap:10px;text-align:left;padding:12px;border:0;border-bottom:1px solid #edf1f5;background:#fff;cursor:pointer}.map-agent-list-item:hover,.map-agent-list-item.is-active{background:#eff6ff}.map-agent-avatar{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:#073d91;color:#fff;font-weight:800}.map-agent-list-copy{min-width:0}.map-agent-list-copy strong,.map-agent-list-copy small,.map-agent-list-copy em{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.map-agent-list-copy strong{font-size:13px}.map-agent-list-copy small{margin-top:3px;color:#65778b;font-size:11px}.map-agent-list-copy em{margin-top:4px;color:#97a4b2;font-size:9px;font-style:normal}.map-agent-list-item>b{min-width:21px;height:21px;padding:0 5px;border-radius:20px;background:#e51d2a;color:#fff;display:grid;place-items:center;font-size:10px}.map-agent-loading{padding:30px 15px;color:#7a8999;text-align:center}
.map-agent-main{min-width:0;display:grid;background:#f4f7fb}.map-agent-empty{place-self:center;text-align:center;color:#73859a}.map-agent-empty span{font-size:52px}.map-agent-empty h2{color:#173c61}.map-agent-conversation{min-height:0;display:grid;grid-template-rows:auto auto 1fr auto}.map-agent-chat-head{display:flex;justify-content:space-between;align-items:center;padding:15px 18px;background:#fff;border-bottom:1px solid #dfe7ef}.map-agent-chat-head strong{display:block;color:#163f69}.map-agent-chat-head small{display:block;margin-top:4px;color:#71849a;font-size:11px}.map-agent-head-actions{display:flex;gap:8px;align-items:center}.map-agent-head-actions a{color:#128c4c;text-decoration:none;font-weight:700;font-size:12px}.map-agent-head-actions select{min-height:36px;border:1px solid #cbd7e3;border-radius:8px;background:#fff}.map-agent-context{padding:8px 18px;background:#fffbe9;border-bottom:1px solid #f0e6b8;color:#665b34;font-size:11px}.map-agent-context a{color:#073d91}.map-agent-thread{overflow:auto;padding:22px}.map-agent-bubble{max-width:74%;margin:10px 0;padding:11px 13px;border-radius:14px;background:#fff;border:1px solid #dfe7ef}.map-agent-bubble.is-agent{margin-left:auto;background:#e7f1ff;border-color:#cfe2fb}.map-agent-bubble strong{font-size:11px;color:#436481}.map-agent-bubble p{margin:5px 0;color:#1a2a3b;font-size:13px;line-height:1.5}.map-agent-bubble small{color:#8796a6;font-size:9px}.map-agent-reply{display:grid;grid-template-columns:1fr 120px;gap:10px;padding:14px;background:#fff;border-top:1px solid #dfe7ef}.map-agent-reply textarea{resize:none;padding:10px;border:1px solid #cbd7e3;border-radius:10px;font:inherit}.map-agent-reply button{border:0;border-radius:10px;background:#073d91;color:#fff;font-weight:800;cursor:pointer}
@media(max-width:700px){.map-support-messenger{right:12px;bottom:82px}.map-support-panel{position:fixed;left:7px;right:7px;bottom:84px;width:auto;height:min(640px,calc(100vh - 105px));border-radius:16px}.map-support-launcher{width:56px;height:56px}.map-support-two{grid-template-columns:1fr}.map-agent-inbox{height:auto;min-height:100vh;grid-template-columns:1fr}.map-agent-sidebar{height:46vh;border-right:0;border-bottom:1px solid #dce5ef}.map-agent-main{height:54vh}.map-agent-chat-head{padding:10px}.map-agent-context{padding:6px 10px}.map-agent-thread{padding:10px}.map-agent-reply{grid-template-columns:1fr 84px;padding:8px}.map-agent-brand{padding:10px}.map-agent-tools{padding:8px}.map-agent-bubble{max-width:88%}}

/* v1.0.1 homepage/mobile visibility hardening */
#mapSupportMessenger.map-support-messenger{display:block;visibility:visible;opacity:1}
#mapSupportLauncher.map-support-launcher{display:grid;visibility:visible;opacity:1}


/* v1.0.2 customer identity + staff contact view */
.map-support-identity{padding:12px 14px 9px!important}
.map-support-identity-title{display:flex;flex-direction:column;gap:2px;margin-bottom:9px}
.map-support-identity-title strong{font-size:13px;color:#163f69}
.map-support-identity-title small{font-size:10px;color:#75869a;line-height:1.35}
.map-support-field{margin-bottom:8px}
.map-support-field label{display:flex;align-items:center;gap:4px;margin:0 0 4px;color:#344f6b;font-size:10px;font-weight:800}
.map-support-field label span{color:#e51d2a}
.map-support-field label small{font-size:9px;font-weight:600;color:#8997a6}
.map-support-field input{width:100%!important;min-height:40px!important;margin:0!important;padding:9px 11px!important;border:1px solid #c8d5e3!important;border-radius:9px!important;background:#fff!important;color:#17253b!important;font-size:12px!important;box-sizing:border-box!important}
.map-support-field input:focus{outline:0!important;border-color:#0b5eb8!important;box-shadow:0 0 0 2px rgba(11,94,184,.10)!important}
.map-agent-customer-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:10px 18px;background:#fff;border-bottom:1px solid #e1e8f0}
.map-agent-customer-details>div{min-width:0;padding:9px 10px;border:1px solid #e1e8f0;border-radius:9px;background:#f8fafc}
.map-agent-customer-details span{display:block;margin-bottom:3px;color:#7a8a9b;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.03em}
.map-agent-customer-details strong{display:block;overflow:hidden;color:#173e65;font-size:12px;text-overflow:ellipsis;white-space:nowrap}
.map-agent-head-actions a#mapAgentEmailLink{color:#073d91}
@media(max-width:700px){
  .map-support-panel{height:min(660px,calc(100vh - 102px))}
  .map-support-identity{padding:10px!important}
  .map-support-field{margin-bottom:7px}
  .map-agent-customer-details{grid-template-columns:1fr;padding:8px 10px;gap:5px}
  .map-agent-customer-details>div{padding:7px 8px}
  .map-agent-customer-details strong{white-space:normal;word-break:break-word}
  .map-agent-head-actions{flex-wrap:wrap;justify-content:flex-end}
}


/* =========================================================
   v1.0.3 — Professional Messenger & Staff Console
   ========================================================= */
.map-support-messenger{--map-blue:#0756ad;--map-blue2:#0f6cca;--map-red:#e21d2b;--map-ink:#13263c;--map-muted:#6f8195;--map-line:#dce5ee;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif}
.map-support-launcher{position:relative!important;overflow:visible!important;transition:transform .18s ease,box-shadow .18s ease!important}
.map-support-launcher:hover{transform:translateY(-2px) scale(1.03)!important;box-shadow:0 16px 38px rgba(0,57,122,.38)!important}
.map-support-launcher-core{display:grid;place-items:center;width:100%;height:100%;border-radius:50%}
.map-support-launcher-core svg{width:30px;height:30px;fill:none;stroke:#fff;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.map-support-launcher-online{position:absolute;right:2px;bottom:4px;width:14px;height:14px;border-radius:50%;background:#22c55e;border:3px solid #fff;box-shadow:0 2px 6px rgba(0,0,0,.2)}
.map-support-unread{right:-5px!important;top:-5px!important;min-width:23px!important;height:23px!important;font-size:11px!important;box-shadow:0 3px 8px rgba(185,18,32,.28)}
.map-support-panel{width:min(390px,calc(100vw - 28px))!important;height:min(610px,calc(100vh - 112px))!important;grid-template-rows:auto minmax(92px,1fr) auto auto auto!important;border:1px solid #d7e2ee!important;border-radius:20px!important;box-shadow:0 22px 70px rgba(9,41,78,.28)!important;background:#fff!important}
.map-support-head{display:grid!important;grid-template-columns:42px minmax(0,1fr) 36px!important;gap:10px!important;align-items:center!important;padding:13px 14px!important;background:linear-gradient(135deg,#0753aa,#0b67c1)!important}
.map-support-head-avatar{width:40px;height:40px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.24)}
.map-support-head-avatar svg{width:23px;height:23px;fill:none;stroke:#fff;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.map-support-head-copy{min-width:0;display:flex!important;flex-direction:column!important;gap:2px!important}.map-support-head-copy strong{font-size:15px!important;line-height:1.2}.map-support-head-copy span{display:flex;align-items:center;gap:5px;color:#e5f1ff;font-size:10px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.map-support-head-copy .map-support-online-dot{width:7px;height:7px;box-shadow:none;flex:0 0 7px}
.map-support-minimize{width:34px!important;height:34px!important;display:grid!important;place-items:center!important;background:rgba(255,255,255,.14)!important;border:1px solid rgba(255,255,255,.18)!important}.map-support-minimize span{width:13px;height:2px;border-radius:4px;background:#fff;display:block}
.map-support-thread{padding:14px!important;background:linear-gradient(#f6f9fc,#f2f6fa)!important}
.map-support-bubble{max-width:86%!important;padding:10px 11px!important;border-radius:15px!important}.map-support-bubble.is-agent{border-top-left-radius:6px!important}.map-support-bubble.is-customer{border-top-right-radius:6px!important}.map-support-bubble p{font-size:12.5px!important;line-height:1.45!important}.map-support-bubble small{font-size:8.5px!important;color:#8a98a8!important}
.map-support-identity{padding:11px 13px 7px!important;border-top:1px solid var(--map-line)!important;max-height:252px;overflow:auto}.map-support-identity-title{margin-bottom:8px!important}.map-support-identity-title strong{font-size:12.5px!important}.map-support-identity-title small{font-size:9.5px!important}.map-support-field{margin-bottom:7px!important}.map-support-field label{font-size:9.5px!important;margin-bottom:3px!important}.map-support-field input{min-height:38px!important;padding:8px 10px!important;border-radius:10px!important;font-size:12px!important}
.map-support-attachment-preview,.map-agent-attachment-preview{padding:7px 10px;border-top:1px solid var(--map-line);background:#fff;display:flex;gap:6px;overflow-x:auto}.map-support-attachment-preview[hidden],.map-agent-attachment-preview[hidden]{display:none!important}.map-file-chip{position:relative;display:inline-flex;align-items:center;gap:5px;min-width:max-content;padding:6px 28px 6px 8px;border:1px solid #d7e2ec;border-radius:10px;background:#f7fafc;color:#27435f;font-size:10px}.map-file-chip>span{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.map-file-chip small{color:#8594a4;font-size:8px}.map-file-chip button{position:absolute;right:5px;top:50%;transform:translateY(-50%);width:18px;height:18px;border:0;border-radius:50%;background:#e9eff5;color:#53687d;cursor:pointer;line-height:1}
.map-support-composer{grid-template-columns:38px minmax(0,1fr) 44px!important;gap:7px!important;align-items:end!important;padding:9px 10px 10px!important}.map-support-attach{width:38px;height:38px;display:grid;place-items:center;border-radius:11px;border:1px solid #d6e1ec;background:#f7fafc;cursor:pointer;color:#42617e;transition:.15s}.map-support-attach:hover{background:#eef5fb;color:#0756ad}.map-support-attach svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.map-support-composer textarea{min-height:40px!important;max-height:96px!important;padding:10px 11px!important;border-radius:12px!important;font-size:12.5px!important;line-height:1.35!important;overflow-y:auto!important}.map-support-composer textarea:focus{outline:0;border-color:#7ba9d7;box-shadow:0 0 0 2px rgba(7,86,173,.08)}.map-support-send{width:44px!important;height:44px!important;display:grid!important;place-items:center!important;padding:0!important;border-radius:50%!important;background:linear-gradient(145deg,#0f6cca,#0756ad)!important;box-shadow:0 5px 14px rgba(7,86,173,.23)!important;transition:.15s!important}.map-support-send svg{width:19px;height:19px;fill:none;stroke:#fff;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.map-support-send:disabled{background:#c8d4df!important;box-shadow:none!important;cursor:not-allowed!important;opacity:.75}.map-support-status{padding:0 12px 7px!important;min-height:0!important;font-size:10px!important}
.map-message-attachments,.map-agent-message-attachments{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:8px}.map-message-attachment,.map-agent-message-attachment{display:block;text-decoration:none;color:#395a79;font-size:9px;min-width:0}.map-message-attachment img,.map-agent-message-attachment img{display:block;width:100%;height:90px;object-fit:cover;border-radius:9px;border:1px solid #d8e2ec;background:#eef3f7}.map-message-attachment span,.map-agent-message-attachment span{display:block;margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* Staff login */
.map-agent-login-wrap{min-height:72vh!important;background:linear-gradient(150deg,#eef5fb,#f8fafc)!important}.map-agent-login-card{width:min(430px,calc(100% - 24px))!important;padding:30px!important;border-radius:20px!important;box-shadow:0 20px 65px rgba(11,54,101,.14)!important}.map-agent-login-logo{width:62px;height:62px;display:grid;place-items:center;margin:0 auto 14px;border-radius:18px;background:linear-gradient(145deg,#0f6cca,#0756ad);color:#fff;font-size:18px;font-weight:900;letter-spacing:.04em;box-shadow:0 9px 24px rgba(7,86,173,.22)}.map-agent-login-card h1{text-align:center;margin:0 0 7px!important;color:#103b66!important;font-size:24px!important}.map-agent-login-sub,.map-agent-login-note{text-align:center;color:#708397;font-size:11px;line-height:1.5}.map-agent-login-card label{font-size:11px;font-weight:700;color:#385774}.map-agent-login-card input[type=text],.map-agent-login-card input[type=password]{min-height:44px;border:1px solid #cad8e5;border-radius:10px;padding:9px 11px}.map-agent-login-card #wp-submit,.map-agent-login-primary{display:block;width:100%;box-sizing:border-box;min-height:44px;border:0;border-radius:10px;background:linear-gradient(135deg,#0f6cca,#0756ad);color:#fff!important;font-weight:800;text-align:center;text-decoration:none;padding:12px 14px;cursor:pointer}.map-agent-login-secondary{display:block;margin-top:9px;color:#56728e!important;text-align:center;text-decoration:none;font-size:11px}.map-agent-login-card .login-remember{font-size:11px}.map-agent-login-success p{text-align:center}

/* Staff console */
.map-agent-inbox{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif!important;border-radius:14px;overflow:hidden;box-shadow:0 16px 55px rgba(11,54,101,.12)}.map-agent-brand{gap:10px!important}.map-agent-brand-copy{display:grid;grid-template-columns:10px 1fr;column-gap:8px;align-items:center;min-width:0}.map-agent-brand-copy strong{color:#0d477f;font-size:13px}.map-agent-brand-copy small{grid-column:2;color:#7d8fa0;font-size:9px}.map-agent-brand-actions{display:flex;align-items:center;gap:7px}.map-agent-brand-actions button{min-height:31px!important}.map-agent-brand-actions a{font-size:9px;color:#6c7f92;text-decoration:none;white-space:nowrap}.map-agent-empty-icon{width:70px;height:70px;margin:0 auto 12px;display:grid;place-items:center;border-radius:50%;background:#e7f1fb}.map-agent-empty-icon svg{width:34px;height:34px;fill:none;stroke:#0a5db5;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.map-agent-empty span{font-size:inherit!important}
.map-agent-conversation{grid-template-rows:auto auto auto minmax(0,1fr) auto auto!important}.map-agent-reply{grid-template-columns:40px minmax(0,1fr) 46px!important;align-items:end!important;padding:11px 13px!important}.map-agent-attach{width:40px;height:40px;display:grid;place-items:center;border-radius:10px;border:1px solid #d3deea;background:#f7fafc;color:#476783;cursor:pointer}.map-agent-attach svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.map-agent-reply textarea{min-height:42px!important;max-height:105px;border-radius:11px!important;line-height:1.4}.map-agent-reply button{width:46px;height:46px;border-radius:50%!important;padding:0!important;display:grid;place-items:center;background:linear-gradient(145deg,#0f6cca,#0756ad)!important}.map-agent-reply button svg{width:19px;height:19px;fill:none;stroke:#fff;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.map-agent-reply button:disabled{background:#c6d2de!important;cursor:not-allowed}.map-agent-customer-details{background:#fbfdff!important}.map-agent-message-attachment img{height:120px}

@media(max-width:700px){
  .map-support-messenger{right:14px!important;bottom:90px!important}
  .map-support-panel{left:8px!important;right:8px!important;bottom:88px!important;width:auto!important;height:min(650px,calc(100vh - 108px))!important;border-radius:18px!important}
  .map-support-head{grid-template-columns:38px minmax(0,1fr) 34px!important;padding:11px 12px!important}.map-support-head-avatar{width:36px;height:36px}.map-support-head-copy span{font-size:9px}.map-support-identity{max-height:220px}.map-support-composer{grid-template-columns:36px minmax(0,1fr) 42px!important}.map-support-attach{width:36px;height:36px}.map-support-send{width:42px!important;height:42px!important}
  .map-agent-inbox{border-radius:0!important}.map-agent-brand{padding:9px!important}.map-agent-brand-actions{flex-direction:column;align-items:flex-end;gap:2px}.map-agent-brand-actions button{padding:5px 7px!important}.map-agent-sidebar{height:42vh!important}.map-agent-main{height:58vh!important}.map-agent-reply{grid-template-columns:38px minmax(0,1fr) 44px!important}.map-agent-attach{width:38px;height:38px}.map-agent-reply button{width:44px;height:44px}.map-message-attachment img{height:76px}.map-agent-message-attachment img{height:90px}
}


/* =========================================================
   v1.0.4 — Compact Professional Customer Messenger
   ========================================================= */
#mapSupportMessenger{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif!important}
#mapSupportPanel.map-support-panel{
  width:min(390px,calc(100vw - 28px))!important;
  height:min(540px,calc(100dvh - 120px))!important;
  grid-template-rows:auto minmax(92px,1fr) auto auto auto!important;
  border-radius:20px!important;
  border:1px solid rgba(18,72,126,.14)!important;
  box-shadow:0 24px 70px rgba(6,42,82,.28)!important;
  background:#fff!important;
  isolation:isolate!important;
}
#mapSupportPanel .map-support-head{
  min-height:58px!important;
  padding:10px 12px!important;
  gap:10px!important;
  background:linear-gradient(135deg,#0c5db5 0%,#08488f 100%)!important;
}
#mapSupportPanel .map-support-head-avatar{width:36px!important;height:36px!important;flex:0 0 36px!important}
#mapSupportPanel .map-support-head-copy strong{font-size:14px!important;font-weight:800!important;letter-spacing:-.01em!important}
#mapSupportPanel .map-support-head-copy span{font-size:9px!important;opacity:.96!important;white-space:nowrap!important}
#mapSupportPanel .map-support-thread{
  min-height:92px!important;
  padding:12px!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  overscroll-behavior:contain!important;
  scrollbar-width:thin!important;
  scrollbar-color:#c7d5e3 transparent!important;
  background:linear-gradient(180deg,#f7fafc 0%,#f3f7fb 100%)!important;
}
#mapSupportPanel .map-support-bubble{margin:5px 0!important;max-width:88%!important;padding:9px 11px!important}
#mapSupportPanel .map-support-bubble p{font-size:12px!important;margin:3px 0 0!important}
#mapSupportIdentity.map-support-identity{
  padding:10px 12px 8px!important;
  max-height:none!important;
  overflow:visible!important;
  border-top:1px solid #e8eef4!important;
  box-sizing:border-box!important;
}
#mapSupportIdentity .map-support-identity-title{margin:0 0 8px!important}
#mapSupportIdentity .map-support-identity-title strong{font-size:12px!important;line-height:1.2!important}
#mapSupportIdentity .map-support-identity-title small{display:block!important;margin-top:2px!important;font-size:9px!important;line-height:1.35!important;color:#77899a!important}
#mapSupportIdentity .map-support-field{margin:0 0 6px!important}
#mapSupportIdentity .map-support-field:last-child{margin-bottom:0!important}
#mapSupportIdentity .map-support-field label{display:block!important;margin:0 0 3px!important;font-size:9px!important;font-weight:750!important;color:#24435f!important}
#mapSupportIdentity .map-support-field input{
  display:block!important;
  width:100%!important;
  height:36px!important;
  min-height:36px!important;
  margin:0!important;
  padding:7px 10px!important;
  border:1px solid #cdd9e5!important;
  border-radius:10px!important;
  background:#fff!important;
  box-shadow:none!important;
  box-sizing:border-box!important;
  font-size:11.5px!important;
  line-height:1.2!important;
  color:#172b3f!important;
}
#mapSupportIdentity .map-support-field input:focus{outline:0!important;border-color:#65a1da!important;box-shadow:0 0 0 2px rgba(13,94,181,.08)!important}
#mapSupportFiles.map-support-file-input,
#mapSupportPanel input[type="file"].map-support-file-input{display:none!important;width:0!important;height:0!important;overflow:hidden!important;position:absolute!important;left:-9999px!important;opacity:0!important;pointer-events:none!important}
#mapSupportAttachmentPreview.map-support-attachment-preview{padding:6px 10px!important;min-height:0!important;max-height:54px!important;overflow-x:auto!important;overflow-y:hidden!important}
#mapSupportComposer.map-support-composer{
  display:grid!important;
  grid-template-columns:38px minmax(0,1fr) 42px!important;
  align-items:end!important;
  gap:7px!important;
  padding:8px 10px 9px!important;
  min-height:58px!important;
  border-top:1px solid #e8eef4!important;
  background:#fff!important;
  box-sizing:border-box!important;
}
#mapSupportComposer .map-support-attach{
  width:38px!important;height:38px!important;margin:0!important;
  display:grid!important;place-items:center!important;
  border:1px solid #d5e0ea!important;border-radius:50%!important;
  background:#f6f9fc!important;color:#315e85!important;
  box-shadow:none!important;cursor:pointer!important;
}
#mapSupportComposer .map-support-attach:hover{background:#edf5fc!important;color:#0a5cb1!important;border-color:#bcd3e7!important}
#mapSupportComposer textarea#mapSupportMessage{
  display:block!important;
  width:100%!important;
  min-height:38px!important;
  height:38px!important;
  max-height:88px!important;
  margin:0!important;
  padding:9px 11px!important;
  resize:none!important;
  overflow-y:hidden!important;
  box-sizing:border-box!important;
  border:1px solid #ccd8e3!important;
  border-radius:19px!important;
  background:#f9fbfd!important;
  color:#192b3d!important;
  font-size:12px!important;
  line-height:18px!important;
  box-shadow:none!important;
  outline:none!important;
}
#mapSupportComposer textarea#mapSupportMessage:focus{background:#fff!important;border-color:#70a8db!important;box-shadow:0 0 0 2px rgba(10,92,177,.08)!important}
#mapSupportSend.map-support-send{
  width:42px!important;height:42px!important;margin:0!important;padding:0!important;
  display:grid!important;place-items:center!important;
  border:0!important;border-radius:50%!important;
  background:linear-gradient(145deg,#0d6ac7,#0754a6)!important;
  color:#fff!important;box-shadow:0 6px 16px rgba(7,84,166,.24)!important;
  transform:none!important;cursor:pointer!important;
}
#mapSupportSend.map-support-send:hover:not(:disabled){transform:translateY(-1px)!important;box-shadow:0 8px 20px rgba(7,84,166,.30)!important}
#mapSupportSend.map-support-send:disabled{
  background:#d9e2ea!important;color:#94a6b7!important;
  box-shadow:none!important;opacity:1!important;cursor:default!important;
}
#mapSupportSend svg{width:18px!important;height:18px!important;stroke:currentColor!important}
#mapSupportStatus.map-support-status{padding:0 12px 6px!important;font-size:9px!important;line-height:1.3!important;background:#fff!important}
#mapSupportLauncher.map-support-launcher{
  width:56px!important;height:56px!important;
  box-shadow:0 10px 28px rgba(4,49,101,.33)!important;
}
#mapSupportLauncher .map-support-launcher-core svg{width:25px!important;height:25px!important}
#mapSupportLauncher .map-support-launcher-online{width:12px!important;height:12px!important;right:2px!important;bottom:2px!important;border:2px solid #fff!important}

@media(max-width:700px){
  #mapSupportMessenger.map-support-messenger{right:10px!important;bottom:82px!important}
  #mapSupportPanel.map-support-panel{
    position:fixed!important;
    left:7px!important;right:7px!important;bottom:78px!important;
    width:auto!important;
    height:min(535px,calc(100dvh - 96px))!important;
    border-radius:18px!important;
  }
  #mapSupportPanel .map-support-head{min-height:54px!important;padding:9px 10px!important}
  #mapSupportIdentity.map-support-identity{padding:8px 10px 6px!important}
  #mapSupportIdentity .map-support-field input{height:34px!important;min-height:34px!important;font-size:11px!important}
  #mapSupportComposer.map-support-composer{grid-template-columns:36px minmax(0,1fr) 40px!important;padding:7px 9px 8px!important;min-height:54px!important}
  #mapSupportComposer .map-support-attach{width:36px!important;height:36px!important}
  #mapSupportComposer textarea#mapSupportMessage{min-height:36px!important;height:36px!important;border-radius:18px!important;padding:8px 10px!important}
  #mapSupportSend.map-support-send{width:40px!important;height:40px!important}
  #mapSupportLauncher.map-support-launcher{width:54px!important;height:54px!important}
}


/* =========================================================
   v1.0.5 — Header controls + Staff Access + Mobile Guarantee
   ========================================================= */
#mapSupportPanel .map-support-head{
  display:grid!important;
  grid-template-columns:38px minmax(0,1fr) auto!important;
  align-items:center!important;
  column-gap:9px!important;
  min-height:60px!important;
  padding:9px 10px!important;
}
#mapSupportPanel .map-support-head-avatar{
  width:36px!important;height:36px!important;min-width:36px!important;
  display:grid!important;place-items:center!important;
  border-radius:50%!important;
  background:rgba(255,255,255,.12)!important;
  border:1px solid rgba(255,255,255,.25)!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.04)!important;
  margin:0!important;padding:0!important;
}
#mapSupportPanel .map-support-head-avatar svg{
  width:21px!important;height:21px!important;
  display:block!important;overflow:visible!important;
  fill:none!important;stroke:#fff!important;stroke-width:1.8!important;
  stroke-linecap:round!important;stroke-linejoin:round!important;
}
#mapSupportPanel .map-support-head-copy{min-width:0!important;align-self:center!important}
#mapSupportPanel .map-support-head-copy strong{display:block!important;line-height:1.15!important}
#mapSupportPanel .map-support-head-copy span{display:flex!important;align-items:center!important;gap:4px!important;margin-top:3px!important;line-height:1.15!important;overflow:hidden!important;text-overflow:ellipsis!important}
#mapSupportPanel .map-support-head-actions{display:flex!important;align-items:center!important;gap:6px!important;justify-self:end!important}
#mapSupportPanel .map-support-staff-access,
#mapSupportPanel .map-support-minimize{
  width:32px!important;height:32px!important;min-width:32px!important;max-width:32px!important;
  flex:0 0 32px!important;aspect-ratio:1/1!important;
  display:grid!important;place-items:center!important;
  margin:0!important;padding:0!important;
  border-radius:50%!important;
  border:1px solid rgba(255,255,255,.25)!important;
  background:rgba(255,255,255,.13)!important;
  color:#fff!important;text-decoration:none!important;
  box-shadow:none!important;line-height:1!important;
  cursor:pointer!important;appearance:none!important;-webkit-appearance:none!important;
  transition:background .15s ease,transform .15s ease!important;
}
#mapSupportPanel .map-support-staff-access:hover,
#mapSupportPanel .map-support-minimize:hover{background:rgba(255,255,255,.23)!important;transform:translateY(-1px)!important}
#mapSupportPanel .map-support-staff-access svg,
#mapSupportPanel .map-support-minimize svg{
  width:17px!important;height:17px!important;display:block!important;
  fill:none!important;stroke:currentColor!important;stroke-width:1.9!important;
  stroke-linecap:round!important;stroke-linejoin:round!important;
}
#mapSupportPanel .map-support-minimize span{display:none!important}

/* The launcher must remain above theme/mobile navigation and carts. */
#mapSupportMessenger.map-support-messenger{
  position:fixed!important;right:16px!important;bottom:18px!important;
  z-index:2147483000!important;display:block!important;visibility:visible!important;
  pointer-events:none!important;
}
#mapSupportMessenger #mapSupportLauncher,
#mapSupportMessenger #mapSupportPanel{pointer-events:auto!important}
#mapSupportLauncher.map-support-launcher{
  display:grid!important;visibility:visible!important;opacity:1!important;
  position:relative!important;z-index:2147483002!important;
}
#mapSupportPanel.map-support-panel{z-index:2147483001!important}

@media(max-width:700px){
  #mapSupportMessenger.map-support-messenger{
    right:10px!important;
    bottom:calc(82px + env(safe-area-inset-bottom,0px))!important;
    z-index:2147483000!important;
  }
  #mapSupportLauncher.map-support-launcher{
    width:54px!important;height:54px!important;display:grid!important;
  }
  #mapSupportPanel.map-support-panel{
    position:fixed!important;
    left:6px!important;right:6px!important;
    bottom:calc(76px + env(safe-area-inset-bottom,0px))!important;
    width:auto!important;
    max-width:none!important;
    height:min(535px,calc(100dvh - 94px - env(safe-area-inset-bottom,0px)))!important;
    max-height:calc(100dvh - 94px - env(safe-area-inset-bottom,0px))!important;
    border-radius:17px!important;
    z-index:2147483001!important;
  }
  #mapSupportPanel .map-support-head{
    grid-template-columns:36px minmax(0,1fr) auto!important;
    min-height:56px!important;padding:8px 9px!important;column-gap:7px!important;
  }
  #mapSupportPanel .map-support-head-avatar{width:34px!important;height:34px!important;min-width:34px!important}
  #mapSupportPanel .map-support-head-avatar svg{width:20px!important;height:20px!important}
  #mapSupportPanel .map-support-staff-access,
  #mapSupportPanel .map-support-minimize{width:30px!important;height:30px!important;min-width:30px!important;max-width:30px!important;flex-basis:30px!important}
  #mapSupportPanel .map-support-staff-access svg,
  #mapSupportPanel .map-support-minimize svg{width:16px!important;height:16px!important}
  #mapSupportPanel .map-support-head-copy strong{font-size:13px!important}
  #mapSupportPanel .map-support-head-copy span{font-size:8px!important;white-space:normal!important;line-height:1.2!important;max-height:20px!important}
}

@media(max-width:380px){
  #mapSupportPanel .map-support-head-copy span{display:none!important}
  #mapSupportPanel .map-support-head{grid-template-columns:34px minmax(0,1fr) auto!important}
}


/* =========================================================
   v1.0.6 — Balanced headset + inline staff login popover
   ========================================================= */
#mapSupportPanel .map-support-head{position:relative!important;overflow:visible!important}
#mapSupportPanel .map-support-head-avatar{
  width:38px!important;height:38px!important;min-width:38px!important;
  display:grid!important;place-items:center!important;
  padding:0!important;margin:0!important;
}
#mapSupportPanel .map-support-head-avatar svg{
  width:22px!important;height:22px!important;
  transform:none!important;margin:0!important;
  stroke-width:1.75!important;
}
#mapSupportPanel .map-support-staff-access{font:inherit!important}
#mapSupportPanel .map-support-staff-popover[hidden]{display:none!important}
#mapSupportPanel .map-support-staff-popover{
  position:absolute!important;top:54px!important;right:9px!important;
  width:258px!important;max-width:calc(100% - 18px)!important;
  padding:12px!important;border:1px solid #d9e4ef!important;border-radius:14px!important;
  background:#fff!important;color:#0c2748!important;
  box-shadow:0 18px 45px rgba(8,35,70,.24)!important;
  z-index:2147483100!important;text-align:left!important;
}
#mapSupportPanel .map-support-staff-popover-head{display:flex!important;flex-direction:column!important;gap:2px!important;margin-bottom:10px!important}
#mapSupportPanel .map-support-staff-popover-head strong{font-size:14px!important;line-height:1.25!important;color:#073d91!important}
#mapSupportPanel .map-support-staff-popover-head small{font-size:10px!important;line-height:1.35!important;color:#667085!important}
#mapSupportPanel .map-support-inline-login{display:grid!important;gap:8px!important;margin:0!important}
#mapSupportPanel .map-support-inline-login label{display:grid!important;gap:4px!important;margin:0!important;color:#344054!important;font-size:10px!important;font-weight:800!important}
#mapSupportPanel .map-support-inline-login input[type=text],
#mapSupportPanel .map-support-inline-login input[type=password]{
  width:100%!important;height:38px!important;margin:0!important;padding:0 10px!important;
  border:1px solid #cfdbea!important;border-radius:9px!important;background:#fff!important;
  color:#172b4d!important;font:500 13px/1.2 Arial,sans-serif!important;box-shadow:none!important;outline:none!important;
}
#mapSupportPanel .map-support-inline-login input:focus{border-color:#1473d3!important;box-shadow:0 0 0 3px rgba(20,115,211,.10)!important}
#mapSupportPanel .map-support-inline-login .map-support-remember{display:flex!important;grid-template-columns:16px auto!important;align-items:center!important;gap:6px!important;font-weight:600!important;color:#667085!important}
#mapSupportPanel .map-support-inline-login .map-support-remember input{width:15px!important;height:15px!important;margin:0!important}
#mapSupportPanel .map-support-inline-login button,
#mapSupportPanel .map-support-staff-primary,
#mapSupportPanel .map-support-staff-secondary{
  display:flex!important;align-items:center!important;justify-content:center!important;
  min-height:38px!important;width:100%!important;margin:0!important;padding:8px 11px!important;
  border-radius:9px!important;text-decoration:none!important;font-size:12px!important;font-weight:800!important;
  box-sizing:border-box!important;cursor:pointer!important;
}
#mapSupportPanel .map-support-inline-login button,
#mapSupportPanel .map-support-staff-primary{border:1px solid #0758b5!important;background:#0758b5!important;color:#fff!important}
#mapSupportPanel .map-support-staff-secondary{margin-top:7px!important;border:1px solid #d7e2ee!important;background:#f7f9fc!important;color:#344054!important}
#mapSupportPanel .map-support-inline-login button:hover,
#mapSupportPanel .map-support-staff-primary:hover{background:#064b9f!important}
@media(max-width:700px){
  #mapSupportPanel .map-support-head-avatar{width:36px!important;height:36px!important;min-width:36px!important}
  #mapSupportPanel .map-support-head-avatar svg{width:21px!important;height:21px!important}
  #mapSupportPanel .map-support-staff-popover{top:51px!important;right:7px!important;width:min(260px,calc(100% - 14px))!important}
}


/* =========================================================
   v1.0.7 — Staff popover + inbox stability hardening
   ========================================================= */
#mapSupportPanel .map-support-head-avatar{
  box-sizing:border-box!important;
  overflow:hidden!important;
}
#mapSupportPanel .map-support-head-avatar svg{
  width:22px!important;height:22px!important;
  margin:0!important;transform:translateX(.35px)!important;
  transform-origin:center!important;
}
#mapSupportPanel .map-support-staff-popover[hidden]{display:none!important}
#mapSupportPanel .map-support-staff-popover:not([hidden]){
  display:block!important;
  grid-template-columns:none!important;
  grid-template-rows:none!important;
}
#mapSupportPanel .map-support-staff-popover{
  box-sizing:border-box!important;
  min-width:258px!important;
  max-width:min(278px,calc(100% - 18px))!important;
  overflow:visible!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
}
#mapSupportPanel .map-support-staff-popover>*{
  box-sizing:border-box!important;
  min-width:0!important;
  max-width:100%!important;
}
#mapSupportPanel .map-support-staff-popover-head{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  width:100%!important;
  min-width:0!important;
  grid-template-columns:none!important;
  white-space:normal!important;
}
#mapSupportPanel .map-support-staff-popover-head strong,
#mapSupportPanel .map-support-staff-popover-head small{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  grid-column:auto!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:anywhere!important;
  text-align:left!important;
}
#mapSupportPanel .map-support-staff-popover-head strong{
  font-size:14px!important;line-height:1.25!important;font-weight:800!important;
}
#mapSupportPanel .map-support-staff-popover-head small{
  margin-top:2px!important;font-size:11px!important;line-height:1.4!important;
}
#mapSupportPanel .map-support-staff-primary,
#mapSupportPanel .map-support-staff-secondary{
  display:flex!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  white-space:nowrap!important;
  writing-mode:horizontal-tb!important;
  word-break:normal!important;
}
#mapSupportPanel .map-support-inline-login,
#mapSupportPanel .map-support-inline-login label{
  width:100%!important;min-width:0!important;grid-template-columns:none!important;
}

/* Staff console: prevent generic child-grid rules from squeezing action buttons. */
.map-agent-brand>.map-agent-brand-copy{
  display:grid!important;grid-template-columns:10px minmax(0,1fr)!important;
  min-width:0!important;flex:1 1 auto!important;
}
.map-agent-brand>.map-agent-brand-actions{
  display:flex!important;grid-template-columns:none!important;
  align-items:center!important;justify-content:flex-end!important;
  flex:0 0 auto!important;width:auto!important;min-width:max-content!important;
  gap:7px!important;
}
.map-agent-brand-actions button,
.map-agent-brand-actions a{
  width:auto!important;min-width:auto!important;max-width:none!important;
  white-space:nowrap!important;writing-mode:horizontal-tb!important;word-break:normal!important;
}
.map-agent-brand-actions button{
  min-height:32px!important;padding:6px 9px!important;
}
.map-agent-loading .map-agent-retry{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  margin-top:10px!important;padding:7px 11px!important;border:1px solid #c8d7e6!important;
  border-radius:8px!important;background:#fff!important;color:#0b5eb8!important;font-weight:700!important;
  cursor:pointer!important;
}
@media(max-width:700px){
  #mapSupportPanel .map-support-staff-popover{
    left:auto!important;right:7px!important;
    width:min(278px,calc(100% - 14px))!important;
    min-width:0!important;
  }
  .map-agent-brand{align-items:flex-start!important;gap:8px!important}
  .map-agent-brand>.map-agent-brand-actions{
    flex-direction:row!important;align-items:center!important;gap:5px!important;
  }
  .map-agent-brand-actions button{padding:5px 7px!important;font-size:9px!important}
}


/* =========================================================
   v1.0.8 — Unified chat + mobile readability / send access
   ========================================================= */
/* The public live-chat links, footer Live Agent and product Chat buttons all open
   this same messenger. Hide the floating launcher whenever the panel is open so
   it can never cover the composer/send control. */
body.map-support-chat-open #mapSupportLauncher,
#mapSupportLauncher[aria-hidden="true"]{
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transform:scale(.86)!important;
}

@media(max-width:700px){
  /* Mobile panel: readable, stable and above bottom navigation/safe areas. */
  #mapSupportMessenger.map-support-messenger{
    right:10px!important;
    bottom:calc(82px + env(safe-area-inset-bottom,0px))!important;
  }
  #mapSupportPanel.map-support-panel{
    position:fixed!important;
    left:6px!important;
    right:6px!important;
    top:auto!important;
    bottom:calc(70px + env(safe-area-inset-bottom,0px))!important;
    width:auto!important;
    height:min(690px,calc(100dvh - 86px - env(safe-area-inset-bottom,0px)))!important;
    max-height:calc(100dvh - 86px - env(safe-area-inset-bottom,0px))!important;
    border-radius:17px!important;
    overflow:hidden!important;
    grid-template-rows:auto minmax(76px,1fr) auto auto auto!important;
  }
  #mapSupportPanel .map-support-head{
    min-height:58px!important;
    padding:10px 11px!important;
    grid-template-columns:38px minmax(0,1fr) auto!important;
    gap:8px!important;
  }
  #mapSupportPanel .map-support-head-avatar{
    width:36px!important;height:36px!important;min-width:36px!important;
  }
  #mapSupportPanel .map-support-head-avatar svg{width:21px!important;height:21px!important}
  #mapSupportPanel .map-support-head-copy strong{
    font-size:14px!important;line-height:1.2!important;letter-spacing:0!important;
  }
  #mapSupportPanel .map-support-head-copy span{
    margin-top:2px!important;font-size:10.5px!important;line-height:1.25!important;
  }
  #mapSupportPanel .map-support-staff-access,
  #mapSupportPanel .map-support-minimize{
    width:34px!important;height:34px!important;min-width:34px!important;
  }
  #mapSupportPanel .map-support-thread{
    padding:10px!important;
    font-size:14px!important;
    line-height:1.45!important;
  }
  #mapSupportPanel .map-support-bubble{
    max-width:90%!important;
    font-size:14px!important;
    line-height:1.45!important;
    padding:10px 11px!important;
  }
  #mapSupportPanel .map-support-bubble strong{font-size:12px!important}
  #mapSupportPanel .map-support-bubble small{font-size:10px!important}
  #mapSupportIdentity.map-support-identity{
    max-height:none!important;
    overflow:visible!important;
    padding:9px 11px 8px!important;
  }
  #mapSupportPanel .map-support-identity-title strong{font-size:13px!important}
  #mapSupportPanel .map-support-identity-title small{font-size:10.5px!important;line-height:1.35!important}
  #mapSupportPanel .map-support-field{margin-top:7px!important}
  #mapSupportPanel .map-support-field label{
    font-size:11px!important;line-height:1.25!important;margin-bottom:4px!important;
  }
  #mapSupportPanel .map-support-field input{
    min-height:42px!important;
    padding:9px 10px!important;
    font-size:14px!important;
    border-radius:10px!important;
  }
  #mapSupportComposer.map-support-composer{
    position:relative!important;
    z-index:12!important;
    grid-template-columns:38px minmax(0,1fr) 44px!important;
    align-items:end!important;
    gap:7px!important;
    padding:8px 9px calc(9px + env(safe-area-inset-bottom,0px))!important;
    min-height:60px!important;
    background:#fff!important;
    box-shadow:0 -4px 14px rgba(12,44,78,.06)!important;
  }
  #mapSupportComposer .map-support-attach{
    width:38px!important;height:38px!important;min-width:38px!important;
  }
  #mapSupportMessage{
    min-height:42px!important;
    max-height:100px!important;
    padding:10px 11px!important;
    font-size:14px!important;
    line-height:1.4!important;
    border-radius:13px!important;
  }
  #mapSupportSend.map-support-send{
    width:44px!important;height:44px!important;min-width:44px!important;
    align-self:end!important;
    position:relative!important;
    z-index:13!important;
  }
  #mapSupportPanel .map-support-status{font-size:11px!important;padding:0 10px 6px!important}
  #mapSupportPanel .map-support-staff-popover{
    top:54px!important;right:7px!important;
    width:min(290px,calc(100% - 14px))!important;
    max-height:calc(100dvh - 130px)!important;
    overflow:auto!important;
  }
  #mapSupportPanel .map-support-staff-popover-head strong{font-size:14px!important}
  #mapSupportPanel .map-support-staff-popover-head small{font-size:11px!important}
  #mapSupportPanel .map-support-inline-login label{font-size:11px!important}
  #mapSupportPanel .map-support-inline-login input{font-size:14px!important;min-height:40px!important}

  /* Agent inbox mobile: keep conversations readable and use the unified list. */
  .map-agent-inbox{font-size:14px!important}
  .map-agent-list-item strong{font-size:13px!important}
  .map-agent-list-item small{font-size:11px!important;line-height:1.35!important}
  .map-agent-bubble{font-size:14px!important;line-height:1.45!important}
  .map-agent-reply textarea{font-size:14px!important}
}

@media(max-width:420px){
  #mapSupportPanel.map-support-panel{
    left:4px!important;right:4px!important;
    bottom:calc(66px + env(safe-area-inset-bottom,0px))!important;
    height:calc(100dvh - 76px - env(safe-area-inset-bottom,0px))!important;
    max-height:calc(100dvh - 76px - env(safe-area-inset-bottom,0px))!important;
    border-radius:15px!important;
  }
  #mapSupportPanel .map-support-head-copy strong{font-size:13.5px!important}
  #mapSupportPanel .map-support-head-copy span{font-size:10px!important}
}


/* v1.0.9 conversation-history recovery */
.map-agent-history-summary{padding:8px 14px;border-bottom:1px solid #e6edf6;background:#f8fbff;color:#667085;font-size:12px;line-height:1.3}
.map-agent-history-summary strong{color:#0b4fa2;font-size:13px}
.map-agent-load-warning{margin:8px 10px;padding:9px 10px;border:1px solid #f2cf66;border-radius:8px;background:#fff9df;color:#6a5510;font-size:12px;line-height:1.35}
.map-agent-load-warning button{margin-left:6px;border:0;background:transparent;color:#0b63ce;font-weight:700;cursor:pointer;text-decoration:underline}
@media(max-width:700px){.map-agent-history-summary{font-size:13px;padding:9px 12px}.map-agent-load-warning{font-size:13px}}



/* =========================================================
   v1.0.11 — AJAX inbox navigation + independent scrolling
   ========================================================= */
.map-agent-inbox{
  height:clamp(560px,calc(100dvh - 235px),760px)!important;
  min-height:560px!important;
  max-height:calc(100dvh - 210px)!important;
  overflow:hidden!important;
}
.map-agent-sidebar{
  grid-template-rows:auto auto auto auto minmax(0,1fr)!important;
  min-height:0!important;
  overflow:hidden!important;
}
.map-agent-list{
  min-height:0!important;
  height:100%!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  overscroll-behavior:contain!important;
  scrollbar-gutter:stable;
  -webkit-overflow-scrolling:touch;
}
.map-agent-list-item{flex:none;min-width:0!important}
.map-agent-main{min-height:0!important;overflow:hidden!important}
.map-agent-conversation{height:100%!important;min-height:0!important;overflow:hidden!important}
.map-agent-thread{
  min-height:0!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  overscroll-behavior:contain!important;
  -webkit-overflow-scrolling:touch;
}
.map-agent-bubble,.map-agent-bubble p{overflow-wrap:anywhere;word-break:break-word}
.map-agent-thread-state{min-height:180px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:#667085;text-align:center;padding:24px}
.map-agent-thread-state.is-error{color:#8a2b2b}
.map-agent-thread-state button{border:1px solid #c8d7e8;border-radius:9px;background:#fff;color:#0b5db5;font-weight:800;padding:8px 13px;cursor:pointer}
.map-agent-thread-spinner{width:28px;height:28px;border:3px solid #dce8f5;border-top-color:#0b63ce;border-radius:50%;animation:mapAgentSpin .8s linear infinite}
@keyframes mapAgentSpin{to{transform:rotate(360deg)}}

/* Phone messenger: never exceed the viewport and never cover Send. */
@media(max-width:700px){
  body.map-support-chat-open{overflow:hidden!important;overscroll-behavior:none!important}
  body.map-support-chat-open #mapSupportLauncher{display:none!important;visibility:hidden!important;pointer-events:none!important}
  #mapSupportMessenger.map-support-messenger{max-width:100vw!important;max-height:100dvh!important}
  #mapSupportPanel.map-support-panel{
    box-sizing:border-box!important;
    position:fixed!important;
    top:max(5px,env(safe-area-inset-top,0px))!important;
    left:4px!important;
    right:4px!important;
    bottom:calc(66px + env(safe-area-inset-bottom,0px))!important;
    width:auto!important;
    max-width:calc(100vw - 8px)!important;
    height:auto!important;
    max-height:none!important;
    min-height:0!important;
    overflow:hidden!important;
    margin:0!important;
    transform:none!important;
    contain:layout paint;
  }
  #mapSupportPanel *,#mapSupportPanel *:before,#mapSupportPanel *:after{box-sizing:border-box;max-width:100%}
  #mapSupportPanel .map-support-thread{min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain!important}
  #mapSupportPanel .map-support-identity{min-height:0!important;max-height:43dvh!important;overflow-y:auto!important;overflow-x:hidden!important}
  #mapSupportPanel input,#mapSupportPanel textarea,#mapSupportPanel select{font-size:16px!important;min-width:0!important;width:100%}
  #mapSupportMessage{font-size:16px!important;max-height:96px!important;overflow-x:hidden!important}
  #mapSupportComposer.map-support-composer{width:100%!important;max-width:100%!important;min-width:0!important;overflow:visible!important}
  #mapSupportComposer .map-support-attach,#mapSupportSend.map-support-send{flex:0 0 auto!important}
  #mapSupportPanel .map-support-bubble,#mapSupportPanel .map-support-bubble p{overflow-wrap:anywhere!important;word-break:break-word!important}

  /* Staff inbox on phones also keeps independent list/thread scrolling. */
  .map-agent-inbox{height:calc(100dvh - 125px)!important;min-height:520px!important;max-height:none!important;grid-template-columns:1fr!important;grid-template-rows:minmax(210px,42%) minmax(0,58%)!important}
  .map-agent-sidebar{height:auto!important;min-height:0!important;grid-template-rows:auto auto auto auto minmax(0,1fr)!important}
  .map-agent-main{height:auto!important;min-height:0!important}
}

@media(max-width:420px){
  #mapSupportPanel.map-support-panel{left:2px!important;right:2px!important;max-width:calc(100vw - 4px)!important}
}


/* =========================================================
   v1.0.12 — deployment/cache hardening + mobile viewport fix
   ========================================================= */
.map-agent-build{font-size:9px;font-style:normal;font-weight:800;color:#7f92a7;margin-left:5px;white-space:nowrap}
html.map-support-chat-open,body.map-support-chat-open{overflow:hidden!important;overscroll-behavior:none!important}
body.map-support-chat-open #mapSupportLauncher{display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important}
.map-agent-list{scrollbar-gutter:stable both-edges}
@media(max-width:700px){
  #mapSupportPanel.map-support-panel{
    top:max(4px,env(safe-area-inset-top,0px))!important;
    bottom:max(4px,env(safe-area-inset-bottom,0px))!important;
    left:4px!important;right:4px!important;
    width:auto!important;max-width:calc(100vw - 8px)!important;
    height:auto!important;max-height:none!important;min-height:0!important;
    border-radius:14px!important;
  }
  #mapSupportPanel input,#mapSupportPanel textarea,#mapSupportPanel select{font-size:16px!important}
  #mapSupportComposer.map-support-composer{position:relative!important;z-index:3!important;padding-bottom:max(8px,env(safe-area-inset-bottom,0px))!important}
  #mapSupportSend.map-support-send{position:relative!important;z-index:4!important;flex:0 0 44px!important}
  .map-agent-inbox{height:calc(100dvh - 12px)!important;min-height:0!important;max-height:calc(100dvh - 12px)!important}
}


/* =========================================================
   v1.0.13 — clean inbox + always-visible customer details
   ========================================================= */
.map-agent-sidebar{grid-template-rows:auto auto auto minmax(0,1fr)!important}
.map-agent-history-summary{padding:7px 14px!important;background:#fff!important;color:#7b8998!important;font-size:11px!important}
.map-agent-history-summary strong{font-size:12px!important;color:#0b5db5!important}
.map-agent-main{background:#f5f8fc!important}
.map-agent-chat-head{min-height:64px!important}
.map-agent-customer-details{grid-template-columns:repeat(3,minmax(0,1fr))!important;padding:10px 14px!important;gap:8px!important}
.map-agent-customer-details>div{min-height:54px!important;display:flex!important;flex-direction:column!important;justify-content:center!important}
.map-agent-customer-details strong{font-size:12px!important;line-height:1.35!important;white-space:normal!important;overflow-wrap:anywhere!important}
.map-agent-context{display:flex!important;align-items:center!important;flex-wrap:wrap!important;gap:7px!important;min-height:34px!important;padding:7px 14px!important;background:#fbfdff!important;border-bottom:1px solid #e3eaf2!important;color:#61758a!important}
.map-agent-context:empty{display:none!important}
.map-agent-context b{color:#385a78!important}
.map-agent-context-sep{color:#b7c3cf!important}
.map-agent-thread{background:#f5f8fc!important}
.map-agent-list-item.is-active{box-shadow:inset 3px 0 0 #0b63ce;background:#eef6ff!important}
@media(max-width:700px){
  .map-agent-sidebar{grid-template-rows:auto auto auto minmax(0,1fr)!important}
  .map-agent-customer-details{grid-template-columns:repeat(2,minmax(0,1fr))!important;padding:7px 9px!important}
  .map-agent-customer-details>div{min-height:48px!important;padding:6px 8px!important}
  .map-agent-context{padding:6px 9px!important;font-size:10.5px!important}
}
@media(max-width:420px){
  .map-agent-customer-details{grid-template-columns:1fr 1fr!important;gap:5px!important}
  .map-agent-customer-details span{font-size:8px!important}
  .map-agent-customer-details strong{font-size:11px!important}
}

.map-agent-list-item{text-decoration:none!important;color:inherit!important}

/* =========================================================
   v1.0.14 — compact agent details + true no-refresh inbox
   ========================================================= */
.map-agent-list-item{
  appearance:none!important;-webkit-appearance:none!important;
  font:inherit!important;color:inherit!important;text-decoration:none!important;
}
@media(min-width:701px){
  .map-agent-inbox{
    height:clamp(650px,80dvh,780px)!important;
    min-height:650px!important;
    max-height:780px!important;
  }
}
.map-agent-chat-head{
  min-height:50px!important;padding:8px 14px!important;gap:12px!important;
}
.map-agent-chat-head>div:first-child{min-width:0!important;flex:1 1 auto!important}
.map-agent-chat-head strong{font-size:14px!important;line-height:1.2!important}
.map-agent-chat-head small{margin-top:2px!important;font-size:9.5px!important;line-height:1.25!important}
.map-agent-head-actions{gap:7px!important;flex:0 0 auto!important;white-space:nowrap!important}
.map-agent-head-actions a{font-size:10.5px!important;white-space:nowrap!important}
.map-agent-head-actions select{
  width:auto!important;min-width:84px!important;max-width:105px!important;
  min-height:32px!important;height:32px!important;padding:4px 25px 4px 8px!important;
  font-size:11px!important;
}
.map-agent-customer-details{
  display:flex!important;grid-template-columns:none!important;align-items:center!important;
  flex-wrap:wrap!important;gap:0!important;min-height:38px!important;
  padding:4px 12px!important;background:#fff!important;border-bottom:1px solid #e3eaf2!important;
}
.map-agent-customer-details>div{
  display:flex!important;flex-direction:row!important;align-items:baseline!important;justify-content:flex-start!important;
  gap:5px!important;min-width:0!important;min-height:0!important;
  margin:0!important;padding:3px 10px!important;border:0!important;border-right:1px solid #e5ebf1!important;
  border-radius:0!important;background:transparent!important;
}
.map-agent-customer-details>div:last-child{border-right:0!important}
.map-agent-customer-details span{
  display:inline!important;margin:0!important;color:#8290a0!important;
  font-size:8px!important;font-weight:800!important;line-height:1.2!important;
  text-transform:uppercase!important;letter-spacing:.025em!important;white-space:nowrap!important;
}
.map-agent-customer-details strong{
  display:inline!important;margin:0!important;max-width:250px!important;
  color:#173e65!important;font-size:10.5px!important;line-height:1.25!important;font-weight:700!important;
  white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;
}
.map-agent-context{
  min-height:26px!important;padding:4px 14px!important;gap:5px!important;
  font-size:9.5px!important;line-height:1.25!important;
}
.map-agent-thread{padding:14px 16px!important;min-height:0!important}
.map-agent-bubble{margin:7px 0!important;padding:9px 11px!important}
.map-agent-reply{padding:8px 11px!important;gap:8px!important}
.map-agent-reply textarea{min-height:40px!important;max-height:92px!important}
.map-agent-attach{width:38px!important;height:38px!important}
.map-agent-reply button{width:42px!important;height:42px!important}

@media(max-width:900px) and (min-width:701px){
  .map-agent-inbox{grid-template-columns:315px minmax(0,1fr)!important}
  .map-agent-customer-details>div{padding:3px 7px!important}
  .map-agent-customer-details strong{max-width:180px!important}
}
@media(max-width:700px){
  .map-agent-chat-head{min-height:46px!important;padding:6px 8px!important;align-items:flex-start!important}
  .map-agent-head-actions{gap:4px!important}
  .map-agent-head-actions a{font-size:9px!important}
  .map-agent-head-actions select{min-width:72px!important;max-width:82px!important;height:30px!important;min-height:30px!important;font-size:10px!important}
  .map-agent-customer-details{
    display:grid!important;grid-template-columns:1fr 1fr!important;
    padding:4px 7px!important;gap:0!important;min-height:0!important;
  }
  .map-agent-customer-details>div{
    padding:3px 6px!important;border-right:0!important;border-bottom:1px solid #edf1f5!important;
  }
  .map-agent-customer-details>div:nth-last-child(-n+2){border-bottom:0!important}
  .map-agent-customer-details strong{max-width:100%!important;font-size:10px!important}
  .map-agent-customer-details span{font-size:7.5px!important}
  .map-agent-context{padding:4px 8px!important;font-size:9px!important}
  .map-agent-thread{padding:8px!important}
}


/* =========================================================
   v1.0.15 — restore admin reply composer / hide native file input
   ========================================================= */
#mapAgentReplyForm.map-agent-reply{
  position:relative!important;
  display:grid!important;
  grid-template-columns:40px minmax(0,1fr) 46px!important;
  grid-template-rows:auto!important;
  align-items:end!important;
  gap:8px!important;
  width:100%!important;
  min-width:0!important;
  min-height:60px!important;
  padding:8px 12px 10px!important;
  margin:0!important;
  box-sizing:border-box!important;
  overflow:visible!important;
  background:#fff!important;
  border-top:1px solid #dfe7ef!important;
}
#mapAgentFiles,
#mapAgentReplyForm input#mapAgentFiles[type="file"]{
  display:none!important;
  visibility:hidden!important;
  position:absolute!important;
  left:-10000px!important;
  top:auto!important;
  width:1px!important;
  min-width:1px!important;
  max-width:1px!important;
  height:1px!important;
  min-height:1px!important;
  max-height:1px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  opacity:0!important;
  pointer-events:none!important;
  overflow:hidden!important;
  clip:rect(0 0 0 0)!important;
  clip-path:inset(50%)!important;
}
#mapAgentReplyForm .map-agent-attach{
  grid-column:1!important;
  grid-row:1!important;
  align-self:end!important;
  width:40px!important;
  height:40px!important;
  min-width:40px!important;
  min-height:40px!important;
  margin:0!important;
  box-sizing:border-box!important;
}
#mapAgentReplyForm textarea#mapAgentReply{
  grid-column:2!important;
  grid-row:1!important;
  display:block!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  height:44px!important;
  min-height:44px!important;
  max-height:110px!important;
  margin:0!important;
  padding:10px 13px!important;
  box-sizing:border-box!important;
  resize:none!important;
  overflow-y:auto!important;
  border:1px solid #cbd8e5!important;
  border-radius:14px!important;
  background:#f9fbfd!important;
  color:#172b3f!important;
  font-family:inherit!important;
  font-size:13px!important;
  line-height:22px!important;
  box-shadow:none!important;
  outline:none!important;
}
#mapAgentReplyForm textarea#mapAgentReply:focus{
  background:#fff!important;
  border-color:#6fa8dc!important;
  box-shadow:0 0 0 2px rgba(11,94,184,.08)!important;
}
#mapAgentReplyForm #mapAgentSend{
  grid-column:3!important;
  grid-row:1!important;
  align-self:end!important;
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  min-height:46px!important;
  margin:0!important;
  padding:0!important;
  box-sizing:border-box!important;
}
#mapAgentAttachmentPreview.map-agent-attachment-preview{
  width:100%!important;
  max-height:68px!important;
  box-sizing:border-box!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
}
@media(max-width:700px){
  #mapAgentReplyForm.map-agent-reply{
    grid-template-columns:38px minmax(0,1fr) 44px!important;
    gap:6px!important;
    padding:7px 8px max(8px,env(safe-area-inset-bottom,0px))!important;
    min-height:58px!important;
  }
  #mapAgentReplyForm .map-agent-attach{width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important}
  #mapAgentReplyForm textarea#mapAgentReply{height:42px!important;min-height:42px!important;max-height:96px!important;font-size:16px!important;line-height:20px!important;padding:10px 11px!important}
  #mapAgentReplyForm #mapAgentSend{width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important}
}


/* =========================================================
   v1.0.16 — reliable admin send control + visible status
   ========================================================= */
#mapAgentReplyForm #mapAgentSend:not(:disabled){
  background:linear-gradient(145deg,#0f6cca,#0756ad)!important;
  cursor:pointer!important;opacity:1!important;pointer-events:auto!important;
}
#mapAgentReplyForm #mapAgentSend:disabled{pointer-events:none!important;opacity:.65!important}
.map-agent-reply-status{
  min-height:0!important;padding:0 14px!important;margin:0!important;background:#fff!important;
  font-size:10px!important;line-height:1.35!important;color:#2e6b42!important;transition:.15s!important;
}
.map-agent-reply-status:not(:empty){padding:3px 14px 7px!important}
.map-agent-reply-status.is-error{color:#a52828!important}
.map-agent-reply-status.is-success{color:#24703e!important}
@media(max-width:700px){.map-agent-reply-status:not(:empty){padding:3px 9px 6px!important}}


/* =========================================================
   v1.0.17 — TRUE MOBILE FULL-SCREEN / KEYBOARD VIEWPORT FIX
   Final authoritative overrides. The public messenger owns the visible phone
   viewport while open so WooCommerce/theme sticky controls cannot cover it.
   ========================================================= */
@media(max-width:700px){
  html.map-support-chat-open,
  body.map-support-chat-open{
    overflow:hidden!important;
    overscroll-behavior:none!important;
    max-width:100%!important;
    -webkit-text-size-adjust:100%!important;
    text-size-adjust:100%!important;
  }

  body.map-support-chat-open #mapSupportMessenger.map-support-messenger{
    position:fixed!important;
    top:0!important;
    left:0!important;
    right:auto!important;
    bottom:auto!important;
    width:var(--map-support-vv-width,100vw)!important;
    max-width:var(--map-support-vv-width,100vw)!important;
    height:var(--map-support-vv-height,100dvh)!important;
    max-height:var(--map-support-vv-height,100dvh)!important;
    margin:0!important;
    padding:0!important;
    background:#fff!important;
    overflow:hidden!important;
    transform:none!important;
    opacity:1!important;
    visibility:visible!important;
    z-index:2147483647!important;
  }

  body.map-support-chat-open #mapSupportLauncher.map-support-launcher{
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
  }

  body.map-support-chat-open #mapSupportPanel.map-support-panel{
    display:grid!important;
    position:absolute!important;
    inset:0!important;
    top:0!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    height:100%!important;
    max-height:none!important;
    min-height:0!important;
    margin:0!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    overflow:hidden!important;
    grid-template-rows:auto minmax(0,1fr) auto auto auto auto!important;
    background:#fff!important;
    z-index:2!important;
  }

  body.map-support-chat-open #mapSupportPanel .map-support-head{
    flex:0 0 auto!important;
    min-height:54px!important;
    padding-top:max(9px,env(safe-area-inset-top,0px))!important;
    padding-right:10px!important;
    padding-bottom:8px!important;
    padding-left:10px!important;
  }

  body.map-support-chat-open #mapSupportThread.map-support-thread{
    min-width:0!important;
    min-height:0!important;
    width:100%!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
    padding:10px!important;
  }

  /* Contact details are compact and independently scrollable before chat starts. */
  body.map-support-chat-open #mapSupportIdentity.map-support-identity{
    width:100%!important;
    min-width:0!important;
    max-height:min(46vh,290px)!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
    padding:8px 10px 6px!important;
  }
  body.map-support-chat-open #mapSupportPanel .map-support-identity-title{margin-bottom:5px!important}
  body.map-support-chat-open #mapSupportPanel .map-support-field{margin-bottom:5px!important}
  body.map-support-chat-open #mapSupportPanel .map-support-field label{margin-bottom:3px!important;font-size:11px!important;line-height:1.2!important}
  body.map-support-chat-open #mapSupportPanel .map-support-field input,
  body.map-support-chat-open #mapSupportPanel .map-support-inline-login input,
  body.map-support-chat-open #mapSupportPanel textarea,
  body.map-support-chat-open #mapSupportPanel select{
    font-size:16px!important;
    line-height:1.35!important;
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }
  body.map-support-chat-open #mapSupportPanel .map-support-field input{
    min-height:40px!important;
    height:40px!important;
    padding:8px 10px!important;
  }

  body.map-support-chat-open #mapSupportAttachmentPreview.map-support-attachment-preview{
    flex:0 0 auto!important;
    max-height:54px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
  }

  body.map-support-chat-open #mapSupportComposer.map-support-composer{
    position:relative!important;
    display:grid!important;
    grid-template-columns:38px minmax(0,1fr) 44px!important;
    align-items:end!important;
    gap:7px!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:58px!important;
    margin:0!important;
    padding:7px 8px max(8px,env(safe-area-inset-bottom,0px))!important;
    overflow:hidden!important;
    background:#fff!important;
    border-top:1px solid #dfe7ef!important;
    box-shadow:0 -3px 12px rgba(11,61,105,.06)!important;
    z-index:6!important;
  }
  body.map-support-chat-open #mapSupportFiles.map-support-file-input{
    display:none!important;
    position:absolute!important;
    width:0!important;
    height:0!important;
    opacity:0!important;
    pointer-events:none!important;
  }
  body.map-support-chat-open #mapSupportComposer .map-support-attach{
    width:38px!important;
    height:38px!important;
    min-width:38px!important;
    min-height:38px!important;
    margin:0!important;
  }
  body.map-support-chat-open #mapSupportMessage{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:42px!important;
    height:42px!important;
    max-height:96px!important;
    margin:0!important;
    padding:10px 11px!important;
    font-size:16px!important;
    line-height:20px!important;
    border-radius:13px!important;
    overflow-x:hidden!important;
    overflow-y:hidden;
    box-sizing:border-box!important;
    -webkit-appearance:none!important;
  }
  body.map-support-chat-open #mapSupportSend.map-support-send{
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    min-height:44px!important;
    margin:0!important;
    align-self:end!important;
    flex:0 0 44px!important;
    z-index:7!important;
  }
  body.map-support-chat-open #mapSupportStatus.map-support-status{
    flex:0 0 auto!important;
    width:100%!important;
    min-height:0!important;
    max-height:36px!important;
    overflow:hidden!important;
    padding:0 10px max(5px,env(safe-area-inset-bottom,0px))!important;
    font-size:11px!important;
  }

  body.map-support-chat-open #mapSupportPanel .map-support-staff-popover{
    position:absolute!important;
    top:54px!important;
    right:6px!important;
    width:min(300px,calc(100% - 12px))!important;
    max-height:calc(var(--map-support-vv-height,100dvh) - 66px)!important;
    overflow:auto!important;
    z-index:20!important;
  }

  body.map-support-chat-open #mapSupportPanel *,
  body.map-support-chat-open #mapSupportPanel *::before,
  body.map-support-chat-open #mapSupportPanel *::after{
    box-sizing:border-box!important;
  }
  body.map-support-chat-open #mapSupportPanel .map-support-bubble,
  body.map-support-chat-open #mapSupportPanel .map-support-bubble p{
    max-width:100%!important;
    overflow-wrap:anywhere!important;
    word-break:break-word!important;
  }
}

@media(max-width:420px){
  body.map-support-chat-open #mapSupportIdentity.map-support-identity{max-height:min(48vh,270px)!important}
  body.map-support-chat-open #mapSupportPanel .map-support-head-copy strong{font-size:13.5px!important}
  body.map-support-chat-open #mapSupportComposer.map-support-composer{grid-template-columns:36px minmax(0,1fr) 42px!important;gap:6px!important;padding-left:7px!important;padding-right:7px!important}
  body.map-support-chat-open #mapSupportComposer .map-support-attach{width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important}
  body.map-support-chat-open #mapSupportSend.map-support-send{width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important}
}


/* =========================================================
   v1.0.18 — iOS STABLE FULL-SCREEN / NO PRODUCT-PAGE ZOOM
   Authoritative mobile overrides. The outer messenger is always a full-screen
   white shield. The inner panel alone tracks visualViewport while the keyboard
   is open, preventing the shop page from showing through or being panned/zoomed.
   ========================================================= */
@media(max-width:700px){
  html.map-support-chat-open,
  body.map-support-chat-open{
    overflow:hidden!important;
    overscroll-behavior:none!important;
    width:100%!important;
    max-width:100%!important;
    -webkit-text-size-adjust:100%!important;
    text-size-adjust:100%!important;
  }

  body.map-support-chat-open #mapSupportMessenger.map-support-messenger{
    display:block!important;
    position:fixed!important;
    inset:0!important;
    top:0!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    width:100vw!important;
    height:100vh!important;
    height:100dvh!important;
    min-width:100vw!important;
    min-height:100vh!important;
    min-height:100dvh!important;
    max-width:none!important;
    max-height:none!important;
    margin:0!important;
    padding:0!important;
    background:#fff!important;
    overflow:hidden!important;
    transform:none!important;
    zoom:1!important;
    opacity:1!important;
    visibility:visible!important;
    isolation:isolate!important;
    z-index:2147483647!important;
  }

  body.map-support-chat-open #mapSupportMessenger::before{
    content:""!important;
    display:block!important;
    position:fixed!important;
    inset:0!important;
    width:100vw!important;
    height:100vh!important;
    height:100dvh!important;
    background:#fff!important;
    pointer-events:none!important;
    z-index:0!important;
  }

  body.map-support-chat-open #mapSupportLauncher.map-support-launcher{
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
  }

  body.map-support-chat-open #mapSupportPanel.map-support-panel{
    display:grid!important;
    position:fixed!important;
    top:var(--map-support-vv-top,0px)!important;
    left:var(--map-support-vv-left,0px)!important;
    right:auto!important;
    bottom:auto!important;
    width:var(--map-support-vv-width,100vw)!important;
    height:var(--map-support-vv-height,100dvh)!important;
    min-width:0!important;
    min-height:0!important;
    max-width:100vw!important;
    max-height:100dvh!important;
    margin:0!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    overflow:hidden!important;
    transform:none!important;
    background:#fff!important;
    grid-template-rows:auto minmax(0,1fr) auto auto auto auto!important;
    z-index:2!important;
  }

  body.map-support-chat-open #mapSupportPanel .map-support-head{
    position:relative!important;
    min-height:50px!important;
    padding:max(7px,env(safe-area-inset-top,0px)) 10px 7px!important;
    background:#fff!important;
    z-index:4!important;
  }

  body.map-support-chat-open #mapSupportIdentity.map-support-identity{
    max-height:min(42vh,250px)!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    padding:7px 10px 5px!important;
    -webkit-overflow-scrolling:touch!important;
  }

  body.map-support-chat-open #mapSupportPanel .map-support-field input,
  body.map-support-chat-open #mapSupportPanel .map-support-inline-login input,
  body.map-support-chat-open #mapSupportPanel textarea,
  body.map-support-chat-open #mapSupportPanel select{
    font-size:17px!important;
    line-height:1.35!important;
    min-width:0!important;
    max-width:100%!important;
    touch-action:manipulation!important;
    -webkit-appearance:none!important;
    appearance:none!important;
  }

  body.map-support-chat-open #mapSupportPanel .map-support-field input{
    min-height:42px!important;
    height:42px!important;
    padding:8px 10px!important;
  }

  body.map-support-chat-open #mapSupportThread.map-support-thread{
    min-width:0!important;
    min-height:0!important;
    width:100%!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
    padding:9px 10px!important;
  }

  body.map-support-chat-open #mapSupportComposer.map-support-composer{
    position:relative!important;
    display:grid!important;
    grid-template-columns:38px minmax(0,1fr) 44px!important;
    align-items:end!important;
    gap:7px!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:58px!important;
    margin:0!important;
    padding:7px 8px max(8px,env(safe-area-inset-bottom,0px))!important;
    overflow:hidden!important;
    background:#fff!important;
    border-top:1px solid #dfe7ef!important;
    box-shadow:0 -3px 12px rgba(11,61,105,.06)!important;
    z-index:6!important;
  }

  body.map-support-chat-open #mapSupportFiles.map-support-file-input{
    display:none!important;
    position:absolute!important;
    width:0!important;
    height:0!important;
    opacity:0!important;
    pointer-events:none!important;
  }

  body.map-support-chat-open #mapSupportMessage{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:44px!important;
    height:44px!important;
    max-height:92px!important;
    margin:0!important;
    padding:10px 11px!important;
    font-size:17px!important;
    line-height:22px!important;
    border-radius:13px!important;
    overflow-x:hidden!important;
    overflow-y:hidden;
    box-sizing:border-box!important;
  }

  body.map-support-chat-open #mapSupportPanel *,
  body.map-support-chat-open #mapSupportPanel *::before,
  body.map-support-chat-open #mapSupportPanel *::after{
    box-sizing:border-box!important;
  }

  body.map-support-chat-open .map-mobile-bottom-nav,
  body.map-support-chat-open .mobile-bottom-nav,
  body.map-support-chat-open .bottom-navigation,
  body.map-support-chat-open .sticky-mobile-menu,
  body.map-support-chat-open .mobile-sticky-menu,
  body.map-support-chat-open .woocommerce-store-notice,
  body.map-support-chat-open .storefront-sticky-add-to-cart,
  body.map-support-chat-open .back-to-top,
  body.map-support-chat-open .scroll-to-top{
    visibility:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
  }
}

@media(max-width:420px){
  body.map-support-chat-open #mapSupportIdentity.map-support-identity{max-height:min(40vh,235px)!important}
  body.map-support-chat-open #mapSupportComposer.map-support-composer{grid-template-columns:36px minmax(0,1fr) 42px!important;gap:6px!important;padding-left:7px!important;padding-right:7px!important}
  body.map-support-chat-open #mapSupportMessage{font-size:17px!important}
}


/* =========================================================
   v1.0.19 — iPhone visible blue header + safe-area staff access
   Keeps v1.0.18 stable keyboard/fullscreen behavior unchanged.
   ========================================================= */
@media(max-width:700px){
  body.map-support-chat-open #mapSupportPanel.map-support-panel{
    background:#fff!important;
  }

  body.map-support-chat-open #mapSupportPanel .map-support-head{
    position:relative!important;
    display:grid!important;
    grid-template-columns:38px minmax(0,1fr) auto!important;
    align-items:center!important;
    column-gap:8px!important;
    width:100%!important;
    min-height:calc(58px + env(safe-area-inset-top,0px))!important;
    padding:calc(8px + env(safe-area-inset-top,0px)) 10px 8px!important;
    margin:0!important;
    background:linear-gradient(135deg,#073d91,#0d5db2)!important;
    color:#fff!important;
    border:0!important;
    border-bottom:1px solid rgba(255,255,255,.14)!important;
    box-shadow:0 2px 10px rgba(4,45,100,.18)!important;
    overflow:visible!important;
    z-index:20!important;
  }

  body.map-support-chat-open #mapSupportPanel .map-support-head-avatar{
    width:36px!important;
    height:36px!important;
    min-width:36px!important;
    background:rgba(255,255,255,.14)!important;
    border:1px solid rgba(255,255,255,.30)!important;
  }

  body.map-support-chat-open #mapSupportPanel .map-support-head-avatar svg{
    width:21px!important;
    height:21px!important;
    stroke:#fff!important;
  }

  body.map-support-chat-open #mapSupportPanel .map-support-head-copy strong{
    color:#fff!important;
    font-size:14px!important;
    line-height:1.15!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }

  body.map-support-chat-open #mapSupportPanel .map-support-head-copy span{
    display:flex!important;
    color:#eaf3ff!important;
    font-size:9px!important;
    line-height:1.2!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    opacity:1!important;
    max-height:none!important;
  }

  body.map-support-chat-open #mapSupportPanel .map-support-online-dot{
    flex:0 0 auto!important;
    background:#25d366!important;
    box-shadow:0 0 0 2px rgba(255,255,255,.18)!important;
  }

  body.map-support-chat-open #mapSupportPanel .map-support-head-actions{
    display:flex!important;
    align-items:center!important;
    gap:7px!important;
    justify-self:end!important;
  }

  body.map-support-chat-open #mapSupportPanel .map-support-staff-access,
  body.map-support-chat-open #mapSupportPanel .map-support-minimize{
    width:32px!important;
    height:32px!important;
    min-width:32px!important;
    max-width:32px!important;
    flex-basis:32px!important;
    display:grid!important;
    place-items:center!important;
    color:#fff!important;
    background:rgba(255,255,255,.14)!important;
    border:1px solid rgba(255,255,255,.42)!important;
    box-shadow:0 1px 3px rgba(0,0,0,.12)!important;
    opacity:1!important;
    visibility:visible!important;
  }

  body.map-support-chat-open #mapSupportPanel .map-support-staff-access svg,
  body.map-support-chat-open #mapSupportPanel .map-support-minimize svg{
    width:17px!important;
    height:17px!important;
    stroke:#fff!important;
    opacity:1!important;
  }

  body.map-support-chat-open #mapSupportPanel .map-support-staff-popover{
    top:calc(58px + env(safe-area-inset-top,0px))!important;
    right:8px!important;
    width:min(278px,calc(100% - 16px))!important;
    max-width:calc(100% - 16px)!important;
    z-index:50!important;
    background:#fff!important;
    border:1px solid #d7e2ee!important;
    box-shadow:0 12px 34px rgba(3,35,78,.22)!important;
  }
}

@media(max-width:380px){
  body.map-support-chat-open #mapSupportPanel .map-support-head{
    grid-template-columns:36px minmax(0,1fr) auto!important;
    column-gap:6px!important;
  }
  body.map-support-chat-open #mapSupportPanel .map-support-head-copy span{
    display:flex!important;
    font-size:8px!important;
  }
  body.map-support-chat-open #mapSupportPanel .map-support-staff-access,
  body.map-support-chat-open #mapSupportPanel .map-support-minimize{
    width:30px!important;height:30px!important;min-width:30px!important;max-width:30px!important;flex-basis:30px!important;
  }
}


/* =========================================================
   v1.0.20 — iOS MINIMIZE / PRODUCT PAGE SCALE RESTORE
   The JS keeps the full-screen shield in place until the keyboard retracts,
   resets temporary Safari focus zoom, then reveals the original page.
   These closed-state safeguards ensure no messenger viewport geometry leaks
   back into the WooCommerce page after minimize.
   ========================================================= */
@media(max-width:700px){
  html:not(.map-support-chat-open),
  body:not(.map-support-chat-open){
    -webkit-text-size-adjust:100%;
    text-size-adjust:100%;
  }

  body:not(.map-support-chat-open) #mapSupportMessenger.map-support-messenger{
    transform:none!important;
    zoom:1!important;
  }
}

/* =========================================================
   v1.0.21 — iOS NO-PERSISTENT-ZOOM + LAUNCHER RESTORE
   Prevent focus zoom while chat is open; restore the site's original viewport
   before revealing the page. Explicit closed-state launcher recovery protects
   against theme/mobile-bar CSS hiding the control after minimize.
   ========================================================= */
@media(max-width:700px){
  body:not(.map-support-chat-open) #mapSupportLauncher.map-support-launcher,
  html:not(.map-support-chat-open) #mapSupportLauncher.map-support-launcher,
  #mapSupportLauncher.map-support-launcher.map-support-launcher-restored{
    display:grid!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
    transform:none!important;
  }

  body:not(.map-support-chat-open) #mapSupportMessenger.map-support-messenger{
    transform:none!important;
    zoom:1!important;
    width:auto!important;
    height:auto!important;
    top:auto!important;
    left:auto!important;
  }

  body.map-support-chat-open #mapSupportPanel input,
  body.map-support-chat-open #mapSupportPanel textarea,
  body.map-support-chat-open #mapSupportPanel select{
    font-size:17px!important;
    -webkit-text-size-adjust:100%!important;
    text-size-adjust:100%!important;
  }
}
