#wcm-visitor-chat.wcm-visitor-root{position:fixed!important;right:16px!important;bottom:16px!important;z-index:2147483000!important;font-family:inherit!important;pointer-events:none!important;isolation:isolate}
#wcm-visitor-chat .wcm-visitor-fab{position:relative!important;width:58px;height:54px;border:0;border-radius:999px;background:#0b7b5e;color:#fff;box-shadow:0 12px 30px rgba(0,0,0,.22);display:inline-flex;align-items:center;justify-content:center;gap:7px;font:inherit;font-weight:800;cursor:pointer;pointer-events:auto}
#wcm-visitor-chat .wcm-visitor-fab span{font-size:21px;line-height:1}
#wcm-visitor-chat .wcm-visitor-fab b{font-size:14px}
.wcm-visitor-panel{position:absolute;right:0;bottom:65px;width:min(430px,calc(100vw - 26px));height:min(600px,calc(100vh - 100px));min-height:420px;display:flex;flex-direction:column;overflow:hidden;border:1px solid #dfe5e2;border-radius:17px;background:#fff;box-shadow:0 24px 70px rgba(0,0,0,.24);pointer-events:auto;color:#17202a}
.wcm-visitor-panel[hidden]{display:none!important}
.wcm-visitor-header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 14px;background:#0b7b5e;color:#fff}
.wcm-visitor-title-area{display:flex;flex-direction:column;min-width:0}.wcm-visitor-header strong{font-size:16px}.wcm-visitor-login-link{display:inline-block;margin-top:4px;color:#e8fff6;text-decoration:underline;font-size:10px;line-height:1.25;white-space:normal}.wcm-visitor-login-link:hover,.wcm-visitor-login-link:focus{color:#fff}
.wcm-visitor-close{flex:0 0 auto;width:36px;height:36px;border:0;border-radius:8px;background:transparent;color:#fff;font-size:26px;line-height:1;cursor:pointer;display:grid;place-items:center}.wcm-visitor-close:hover,.wcm-visitor-close:focus{background:rgba(255,255,255,.12);outline:none}
.wcm-visitor-messages{flex:1;min-height:0;overflow:auto;padding:14px;background:radial-gradient(circle at 15% 20%,rgba(11,123,94,.05) 0 1px,transparent 1.5px) 0 0/22px 22px,#f1f5f3}
.wcm-visitor-welcome{margin:25px auto;padding:18px;max-width:310px;border-radius:14px;background:#fff;text-align:center;box-shadow:0 2px 8px rgba(0,0,0,.06)}
.wcm-visitor-welcome span{display:grid;place-items:center;width:48px;height:48px;margin:0 auto 10px;border-radius:50%;background:#dfece7;font-size:21px}.wcm-visitor-welcome strong{display:block;font-size:14px}.wcm-visitor-welcome p{margin:7px 0 0;color:#667085;font-size:11px;line-height:1.5}
.wcm-visitor-message{display:flex;justify-content:flex-end;margin:5px 0}.wcm-visitor-bubble{max-width:82%;padding:9px 11px 6px;border-radius:11px 3px 11px 11px;background:#d8f3e8;box-shadow:0 1px 1px rgba(0,0,0,.05);font-size:13px;line-height:1.45;overflow-wrap:anywhere}.wcm-visitor-bubble small{display:block;margin-top:4px;text-align:right;color:#7d8b84;font-size:8px}
.wcm-visitor-composer{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:8px;align-items:end;padding:9px;border-top:1px solid #dfe5e2;background:#fff}.wcm-visitor-input-wrap{position:relative;min-width:0}.wcm-visitor-input-wrap textarea{display:block;width:100%;min-height:42px;max-height:150px;resize:none;box-sizing:border-box;padding:10px 40px 10px 12px;border:1px solid #d9e1dd;border-radius:18px;outline:none;font:inherit;font-size:13px;line-height:1.4;background:#f8faf9}.wcm-visitor-input-wrap textarea:focus{border-color:#0b7b5e;box-shadow:0 0 0 2px rgba(11,123,94,.12)}.wcm-visitor-input-wrap small{position:absolute;right:11px;bottom:7px;color:#84918b;font-size:8px}.wcm-visitor-composer>button{width:44px;height:44px;border:0;border-radius:50%;background:#0b7b5e;color:#fff;font-size:20px;cursor:pointer}.wcm-visitor-composer>button:disabled{opacity:.55;cursor:default}.wcm-visitor-note{padding:6px 11px 9px;color:#7a8781;background:#fff;font-size:9px;text-align:center;border-top:1px solid #edf0ee}
.wcm-visitor-error{margin:7px 0;padding:8px 10px;border-radius:9px;background:#fff1f1;color:#9b2727;font-size:10px;line-height:1.4}
.wcm-visitor-success{margin:7px 0;padding:7px 9px;border-radius:9px;background:#eefaf3;color:#286446;font-size:9px;text-align:center}
@media(max-width:760px){
  #wcm-visitor-chat.wcm-visitor-root{right:7px!important;bottom:calc(7px + env(safe-area-inset-bottom,0px))!important}
  #wcm-visitor-chat .wcm-visitor-fab{width:40px!important;height:40px!important;padding:0!important;border-radius:50%!important}
  #wcm-visitor-chat .wcm-visitor-fab b{display:none!important}
  #wcm-visitor-chat .wcm-visitor-fab span{font-size:18px!important}
  /* Visitor chat starts compact (~1/5 viewport) and grows upward as the conversation grows.
     Once the viewport limit is reached, only the message list scrolls. */
  .wcm-visitor-panel{right:0;bottom:48px;width:calc(100vw - 14px);height:var(--wcm-visitor-height,20vh);max-height:calc(100dvh - 62px);min-height:175px;border-radius:15px;transition:height .16s ease;transform-origin:bottom right}
  .wcm-visitor-header{padding:9px 10px}.wcm-visitor-header strong{font-size:14px}.wcm-visitor-login-link{font-size:9px;margin-top:3px}.wcm-visitor-close{width:34px;height:34px;font-size:24px}
  .wcm-visitor-messages{padding:9px}
  .wcm-visitor-composer{grid-template-columns:minmax(0,1fr) 42px;padding:7px}.wcm-visitor-composer>button{width:42px;height:42px}.wcm-visitor-input-wrap textarea{min-height:42px;max-height:110px;font-size:14px}
  .wcm-visitor-note{padding:4px 8px 6px;font-size:8px}
}
@media(max-width:420px){.wcm-visitor-panel{width:calc(100vw - 8px)} }

/* Front-end login displayed inside the visitor chat panel */
.wcm-visitor-login-view{flex:1;min-height:0;overflow:auto;padding:18px;background:#f1f5f3}.wcm-visitor-login-view[hidden]{display:none!important}.wcm-visitor-login-card{max-width:330px;margin:0 auto;background:#fff;border:1px solid #e1e8e4;border-radius:14px;padding:16px;box-shadow:0 4px 18px rgba(0,0,0,.07)}.wcm-visitor-login-back{border:0;background:transparent;color:#0b7b5e;font:inherit;font-size:11px;font-weight:700;padding:0 0 10px;cursor:pointer}.wcm-visitor-login-icon{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:#e1f2eb;margin:4px auto 9px;font-size:20px}.wcm-visitor-login-card h3{margin:0;text-align:center;font-size:16px}.wcm-visitor-login-help{margin:7px 0 14px;text-align:center;color:#667085;font-size:10px;line-height:1.45}.wcm-visitor-login-form{display:grid;gap:10px}.wcm-visitor-login-form label{display:grid;gap:5px;color:#344054;font-size:10px;font-weight:700}.wcm-visitor-login-form input[type=text],.wcm-visitor-login-form input[type=password]{width:100%;box-sizing:border-box;border:1px solid #d8e1dc;border-radius:10px;background:#fafcfb;padding:10px 11px;font:inherit;font-size:13px;outline:none}.wcm-visitor-login-form input[type=text]:focus,.wcm-visitor-login-form input[type=password]:focus{border-color:#0b7b5e;box-shadow:0 0 0 2px rgba(11,123,94,.10)}.wcm-visitor-remember{display:flex!important;grid-template-columns:none!important;align-items:center;gap:6px!important;font-weight:600!important}.wcm-visitor-remember input{margin:0}.wcm-visitor-login-submit{height:42px;border:0;border-radius:10px;background:#0b7b5e;color:#fff;font:inherit;font-size:13px;font-weight:800;cursor:pointer}.wcm-visitor-login-submit:disabled{opacity:.6;cursor:default}.wcm-visitor-login-error{padding:8px 9px;border-radius:9px;background:#fff0f0;color:#a02a2a;font-size:10px;line-height:1.4}.wcm-visitor-login-link{appearance:none;-webkit-appearance:none;border:0;background:none;padding:0;text-align:left;font:inherit;cursor:pointer}
@media(max-width:760px){.wcm-visitor-login-view{padding:10px}.wcm-visitor-login-card{padding:12px}.wcm-visitor-login-help{font-size:9px;margin-bottom:10px}.wcm-visitor-login-form{gap:7px}.wcm-visitor-login-form input[type=text],.wcm-visitor-login-form input[type=password]{padding:9px 10px;font-size:12px}.wcm-visitor-login-submit{height:38px;font-size:12px}}

.wcm-visitor-forgot{display:block;text-align:center;color:#0b7b5e;text-decoration:underline;font-size:10px}.wcm-visitor-forgot:hover,.wcm-visitor-forgot:focus{color:#075941}

#wcm-visitor-chat .wcm-visitor-message.is-admin{justify-content:flex-start}.wcm-visitor-message.is-admin .wcm-visitor-bubble{border-radius:3px 11px 11px 11px;background:#fff}.wcm-visitor-date{display:flex;justify-content:center;margin:9px 0}.wcm-visitor-date span{padding:4px 10px;border-radius:999px;background:#dfe8e3;color:#596861;font-size:9px;font-weight:700}.wcm-visitor-message.is-visitor{justify-content:flex-end}

/* Work Chat Manager 2.2.1: robust visitor mobile auto-grow. */
@media (max-width:760px){
  #wcm-visitor-chat .wcm-visitor-panel{
    height:20vh!important;
    min-height:150px!important;
    max-height:calc(100dvh - 52px)!important;
    bottom:48px!important;
    overflow:hidden!important;
    transition:height .14s ease!important;
  }
  #wcm-visitor-chat .wcm-visitor-messages{
    flex:1 1 auto!important;
    min-height:0!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
  }
  #wcm-visitor-chat .wcm-visitor-composer{
    flex:0 0 auto!important;
  }
  #wcm-visitor-chat .wcm-visitor-input-wrap textarea{
    max-height:140px!important;
  }
}
