: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>div{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>div{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}
}
