/* e-offer courier onboarding chat, isolated, no impact on other widgets */
body:not(.pb-front-mode) .cms-block--recruitment_chat{display:contents}
.eoffer-chat{position:fixed;z-index:1100;right:22px;bottom:25px;font-family:inherit;color:#202020;font-size:15px;line-height:1.42}
.eoffer-chat *{box-sizing:border-box}
.eoffer-chat [hidden]{display:none!important}
.eoffer-chat button,.eoffer-chat input{font:inherit}
.eoffer-chat button{cursor:pointer}
.eoffer-chat__launcher{display:flex;align-items:center;gap:10px;border:0;background:#ffd83d;color:#171717;padding:13px 19px;border-radius:99px;box-shadow:0 10px 30px #241d1726;font-weight:800;max-width:210px}
.eoffer-chat__launcher:hover{background:#ffe66c}
.eoffer-chat__launcher svg{width:23px;height:23px;flex-shrink:0}
.eoffer-chat__launcher:focus-visible,.eoffer-chat button:focus-visible,.eoffer-chat input:focus-visible,.eoffer-chat a:focus-visible{outline:3px solid #161616;outline-offset:3px}
.eoffer-chat__teaser{position:absolute;bottom:70px;right:0;width:min(310px,calc(100vw - 28px));background:white;box-shadow:0 16px 45px #0002;border:1px solid #ede9e0;border-radius:18px;padding:16px 26px 14px 15px;animation:eofferChatIn .25s ease}
.eoffer-chat__teaser-open{display:flex;flex-direction:column;text-align:left;border:0;background:transparent;padding:0;gap:6px;color:#202020}
.eoffer-chat__teaser-action{font-weight:800;color:#a97900;font-size:13px}
.eoffer-chat__teaser-close{position:absolute;right:5px;top:3px;background:transparent;border:0;font-size:23px;color:#676767;line-height:1;padding:4px 7px}
.eoffer-chat__panel{position:absolute;bottom:70px;right:0;width:min(390px,calc(100vw - 28px));height:min(575px,calc(100dvh - 122px));background:#faf9f6;border:1px solid #e9e6df;border-radius:22px;box-shadow:0 18px 54px #23160e35;overflow:hidden;display:flex;flex-direction:column;animation:eofferChatIn .22s ease}
.eoffer-chat__header{display:flex;align-items:center;gap:12px;background:#ffd83d;color:#171717;padding:13px 13px 13px 17px;flex-shrink:0}
.eoffer-chat__avatar{width:41px;height:41px;background:#fff;border-radius:50%;display:grid;place-items:center;flex-shrink:0}
.eoffer-chat__avatar svg{width:22px;height:22px}
.eoffer-chat__agent{display:grid;flex:1;min-width:0;gap:1px}
.eoffer-chat__agent strong{font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.eoffer-chat__agent small{font-size:11px;color:#594d22}
.eoffer-chat__close{border:0;background:transparent;font-size:27px;line-height:1;color:#171717;padding:0 6px}
.eoffer-chat__body{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;align-items:flex-start;gap:11px;padding:18px 13px 12px;overscroll-behavior:contain}
.eoffer-chat__message{max-width:92%;background:#fff;padding:12px 14px;border-radius:16px 16px 16px 5px;box-shadow:0 2px 8px #1111;white-space:pre-line;overflow-wrap:anywhere;font-size:14px}
.eoffer-chat__message--user{background:#fff0b3;border-radius:16px 16px 5px 16px;align-self:flex-end}
.eoffer-chat__quick{display:flex;flex-wrap:wrap;gap:7px;flex:none;align-self:stretch;padding:0 0 5px;max-height:none;overflow:visible}
.eoffer-chat__quick button{font-size:12px;line-height:1.2;border:1px solid #f1c52d;background:#fff;color:#181818;border-radius:40px;padding:8px 10px;text-align:left}
.eoffer-chat__quick button:hover{background:#fff5c9}
.eoffer-chat__apply{padding:0 13px 9px}
.eoffer-chat__apply a{min-height:41px;width:100%;background:#ffd83d;color:#171717;text-decoration:none;border-radius:12px;display:flex;gap:8px;align-items:center;justify-content:center;font-size:14px;font-weight:800;padding:9px 12px}
.eoffer-chat__apply a:hover{background:#ffe56b;color:#171717}
.eoffer-chat__form{display:flex;align-items:center;gap:7px;margin:0 13px 5px;background:#fff;border:1px solid #e7e5e0;padding:5px 5px 5px 14px;border-radius:27px}
.eoffer-chat__form input{flex:1;min-width:0;background:none;border:0;outline:0;box-shadow:none;font-size:14px;color:#111;min-height:34px}
.eoffer-chat__form input:focus-visible{outline:none}
.eoffer-chat__form button{width:35px;height:35px;border:0;border-radius:50%;background:#1d1d1d;color:#fff;display:grid;place-items:center}
.eoffer-chat__form button svg{width:17px;height:17px}
.eoffer-chat__note{color:#726d64;font-size:11px;text-align:center;line-height:1.4;margin:0;padding:0 14px 10px}
.eoffer-chat__sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@keyframes eofferChatIn{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:640px){
 .eoffer-chat{right:12px;bottom:calc(86px + env(safe-area-inset-bottom));}
 .eoffer-chat__launcher{border-radius:50%;height:49px;width:49px;padding:0;justify-content:center;max-width:none}
 .eoffer-chat__launcher [data-chat-launcher-label]{display:none}
 .eoffer-chat__teaser{bottom:61px;width:min(295px,calc(100vw - 24px))}
 .eoffer-chat__panel{position:fixed;right:8px;bottom:calc(143px + env(safe-area-inset-bottom));width:calc(100vw - 16px);max-width:390px;height:min(520px,calc(100dvh - 160px));border-radius:20px}
}
@media(max-height:600px){.eoffer-chat__panel{height:min(470px,calc(100dvh - 90px));bottom:63px}}
@media(prefers-reduced-motion:reduce){.eoffer-chat__panel,.eoffer-chat__teaser{animation:none}}

/* DEPLOY208_MOBILE_FULLSCREEN: dialog replaces floating panel on small screens. */
@media (max-width:768px){
  html.eoffer-chat-modal-open,html.eoffer-chat-modal-open body{overflow:hidden!important;overscroll-behavior:none}
  .eoffer-chat__panel{position:fixed;inset:0;top:0;right:0;bottom:0;left:0;width:100%;max-width:none;height:100vh;height:100dvh;max-height:none;margin:0;border:0;border-radius:0;box-shadow:none;animation:none}
  .eoffer-chat__header{padding-top:calc(13px + env(safe-area-inset-top));padding-right:calc(13px + env(safe-area-inset-right));padding-left:calc(17px + env(safe-area-inset-left))}
  .eoffer-chat__body{min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;padding-right:max(13px,env(safe-area-inset-right));padding-left:max(13px,env(safe-area-inset-left))}
  .eoffer-chat__quick button{min-height:35px;font-size:13px}
  .eoffer-chat__apply{padding-right:max(13px,env(safe-area-inset-right));padding-left:max(13px,env(safe-area-inset-left))}
  .eoffer-chat__form{margin-right:max(13px,env(safe-area-inset-right));margin-left:max(13px,env(safe-area-inset-left))}
  .eoffer-chat__note{font-size:11px;padding-bottom:calc(11px + env(safe-area-inset-bottom))}
  .eoffer-chat__close{min-width:40px;min-height:40px;font-size:30px}
}

/* DEPLOY209_PROMINENT_CLOSE: explicit accessible close action on every viewport. */
.eoffer-chat__close{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;flex:0 0 auto;
  min-width:44px;min-height:44px;margin:0;padding:0 13px;
  background:#202020;color:#fff;border:2px solid #202020;border-radius:999px;
  box-shadow:0 2px 5px rgba(0,0,0,.15);font-size:13px;font-weight:800;line-height:1;
  white-space:nowrap;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;
  transition:background-color .16s ease,color .16s ease,transform .12s ease,box-shadow .16s ease;
}
.eoffer-chat__close svg{display:block;width:19px;height:19px;flex-shrink:0}
.eoffer-chat__close:hover{background:#fff;color:#171717;box-shadow:0 3px 9px rgba(0,0,0,.18)}
.eoffer-chat__close:active{transform:scale(.96);background:#111;color:#fff}
.eoffer-chat__close:focus-visible{outline:3px solid #fff;outline-offset:2px;box-shadow:0 0 0 5px #171717}
@media(max-width:340px){
  .eoffer-chat__close{width:44px;min-width:44px;padding:0}
  .eoffer-chat__close-label{display:none}
}
@media(prefers-reduced-motion:reduce){.eoffer-chat__close{transition:none}}

/* DEPLOY210_RESPONSIVE_CLOSE: icon-only on desktop; explicit text on fullscreen mobile. */
.eoffer-chat__close{width:44px;min-width:44px;padding:0;gap:0}
.eoffer-chat__close-label{display:none}
.eoffer-chat__close:hover{background:#363636;color:#fff;border-color:#363636;box-shadow:0 3px 9px rgba(0,0,0,.22)}
@media(max-width:768px){
  .eoffer-chat__close{width:auto;min-width:44px;padding:0 13px;gap:8px}
  .eoffer-chat__close-label{display:inline}
}

/* DEPLOY211_TYPING_AND_COMPACT_DESKTOP_CLOSE: small X on desktop, explicit mobile close and accessible typing status. */
@media(min-width:769px){
  .eoffer-chat__close{width:32px;min-width:32px;height:32px;min-height:32px;flex:0 0 32px;padding:0}
  .eoffer-chat__close svg{width:16px;height:16px}
}
.eoffer-chat__typing{
  display:inline-flex;align-items:center;gap:9px;align-self:flex-start;
  max-width:92%;padding:11px 14px;background:#fff;color:#5b564e;
  border-radius:16px 16px 16px 5px;box-shadow:0 2px 8px #1111;
  font-size:12px;line-height:1.3;
}
.eoffer-chat__typing-dots{display:inline-flex;align-items:center;gap:4px;flex-shrink:0}
.eoffer-chat__typing-dots span{
  display:block;width:5px;height:5px;background:#716c63;border-radius:50%;
  animation:eofferChatTypingDots 1.2s ease-in-out infinite;
}
.eoffer-chat__typing-dots span:nth-child(2){animation-delay:.2s}
.eoffer-chat__typing-dots span:nth-child(3){animation-delay:.4s}
@keyframes eofferChatTypingDots{0%,60%,100%{opacity:.38;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}
@media(prefers-reduced-motion:reduce){.eoffer-chat__typing-dots span{animation:none;opacity:.75}}

/* DEPLOY212_CONTEXT_CHOICES: contextual Yes/No replies live in the single chat timeline. */
.eoffer-chat__choices{display:flex;flex-wrap:wrap;gap:7px;align-self:flex-start;max-width:100%;padding:0 0 5px}
.eoffer-chat__choices button{border:1px solid #e9bd23;background:#fff;color:#1a1a1a;border-radius:99px;padding:9px 13px;min-height:38px;font-size:13px;line-height:1.2;font-weight:600;text-align:left;touch-action:manipulation}
.eoffer-chat__choices button:hover{background:#fff1b8;border-color:#d4a800}
.eoffer-chat__choices button:active{background:#ffdf62}
@media(max-width:768px){.eoffer-chat__choices button{min-height:44px;padding:10px 15px}}

/* DEPLOY213_TOPIC_RETURN: renewed topic options under the latest bot reply. */
.eoffer-chat__topic-choices{display:flex;flex-wrap:wrap;align-self:stretch;align-items:flex-start;gap:7px;padding:1px 0 6px;max-width:100%;flex:none}
.eoffer-chat__topic-caption{flex:0 0 100%;font-size:13px;font-weight:700;color:#4e493f;margin-bottom:2px}
.eoffer-chat__topic-choices button{font-size:12px;line-height:1.25;border:1px solid #e9bd23;background:#fff;color:#1a1a1a;border-radius:40px;padding:9px 11px;text-align:left;min-height:36px;touch-action:manipulation}
.eoffer-chat__topic-choices button:hover:not(:disabled){background:#fff1b8;border-color:#d4a800}
.eoffer-chat__topic-choices button:active:not(:disabled){background:#ffdf62}
.eoffer-chat__quick button:disabled,.eoffer-chat__topic-choices button:disabled{opacity:.45;cursor:default;pointer-events:none;background:#f5f3ed;border-color:#ddd8cb;color:#6e685b}
@media(max-width:768px){.eoffer-chat__topic-choices button{font-size:13px;min-height:44px;padding:10px 13px}}

/* DEPLOY214_ONLINE_PULSE: automatic assistant is available (not a human operator). */
.eoffer-chat__avatar,.eoffer-chat__launcher,.eoffer-chat__teaser-open{position:relative}
.eoffer-chat__avatar::after,.eoffer-chat__launcher::after,.eoffer-chat__teaser-open::before{
  content:"";position:absolute;z-index:2;display:block;box-sizing:border-box;
  width:12px;height:12px;border-radius:50%;background:#39bd62;
  border:2px solid #fff;pointer-events:none;
  animation:eofferChatOnlinePulse 2s ease-in-out infinite;
}
/* DEPLOY215_ONLINE_DOT_ALIGNMENT: place pulse within avatar, close to launcher icon. */
.eoffer-chat__avatar::after{top:3px;left:3px}
.eoffer-chat__launcher::after{top:6px;left:14px}
@media(max-width:640px){
  .eoffer-chat__launcher::after{top:6px;left:9px}
}
.eoffer-chat__teaser-open{padding-left:18px}
.eoffer-chat__teaser-open::before{top:3px;left:0}
@keyframes eofferChatOnlinePulse{
  0%,100%{opacity:1;box-shadow:0 0 0 0 rgba(57,189,98,.38)}
  50%{opacity:.65;box-shadow:0 0 0 5px rgba(57,189,98,0)}
}
@media(prefers-reduced-motion:reduce){
  .eoffer-chat__avatar::after,.eoffer-chat__launcher::after,.eoffer-chat__teaser-open::before{animation:none;opacity:1}
}
/* The mobile launcher sits under the full-screen chat; prevent its pulse
   from appearing above the form/footer while the modal is open. */
@media(max-width:768px){
  html.eoffer-chat-modal-open .eoffer-chat__launcher{visibility:hidden}
}

/* DEPLOY216_HIDE_INVITATION_PULSE: keep the pulse only on the assistant avatar. */
.eoffer-chat__launcher::after,.eoffer-chat__teaser-open::before{display:none!important;content:none!important}
