.gemobile-chat{position:fixed;right:20px;bottom:20px;z-index:99999;font-family:inherit}.gemobile-chat *{box-sizing:border-box}.gemobile-chat__bubble{position:relative;display:flex;align-items:center;justify-content:center;width:68px;height:68px;border:0;border-radius:50%;background:#0b0b0d;color:#fff;box-shadow:0 18px 45px rgba(0,0,0,.22);cursor:pointer}.gemobile-chat__bubble span{font-size:28px}.gemobile-chat__bubble i{position:absolute;right:8px;top:8px;width:14px;height:14px;border:3px solid #0b0b0d;border-radius:50%;background:#20c56b}.gemobile-chat__panel{position:absolute;right:0;bottom:84px;display:none;width:min(390px,calc(100vw - 28px));max-height:min(680px,calc(100vh - 120px));border:1px solid rgba(0,0,0,.08);border-radius:28px;overflow:hidden;background:#fff;box-shadow:0 24px 70px rgba(0,0,0,.22)}.gemobile-chat.is-open .gemobile-chat__panel{display:block}.gemobile-chat__header{display:flex;justify-content:space-between;gap:16px;padding:18px;background:#0b0b0d;color:#fff}.gemobile-chat__header strong{display:block;font-size:17px;line-height:1.1;font-weight:950}.gemobile-chat__header span{display:block;margin-top:5px;color:rgba(255,255,255,.68);font-size:12px;line-height:1.35;font-weight:700}.gemobile-chat__close{width:34px;height:34px;border:0;border-radius:50%;background:rgba(255,255,255,.1);color:#fff;font-size:24px;cursor:pointer}.gemobile-chat__body{padding:16px;background:#fafafa}.gemobile-chat__welcome{padding:14px;border:1px solid rgba(0,0,0,.06);border-radius:20px;background:#fffaf0}.gemobile-chat__welcome strong{display:block;color:#0b0b0d;font-size:16px;line-height:1.15;font-weight:950}.gemobile-chat__welcome p{margin:8px 0 0;color:#5f6368;font-size:13px;line-height:1.4;font-weight:650}.gemobile-chat__quick{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.gemobile-chat__quick button{border:1px solid rgba(0,0,0,.08);border-radius:999px;padding:8px 10px;background:#fff;color:#111;font-size:12px;font-weight:850;cursor:pointer}.gemobile-chat__messages{display:flex;flex-direction:column;gap:9px;max-height:280px;overflow:auto;padding:12px 0}.gemobile-chat__message{max-width:86%;padding:10px 12px;border-radius:16px;background:#fff;box-shadow:0 4px 14px rgba(0,0,0,.04)}.gemobile-chat__message.is-customer{align-self:flex-end;background:#0b0b0d;color:#fff}.gemobile-chat__message.is-operator{align-self:flex-start;background:#fff;color:#111}.gemobile-chat__message span{display:block;margin-bottom:4px;font-size:11px;font-weight:900;opacity:.65}.gemobile-chat__message p{margin:0;font-size:13px;line-height:1.42;font-weight:650}.gemobile-chat label{display:block;margin-bottom:10px;color:#111;font-size:12px;font-weight:900}.gemobile-chat input,.gemobile-chat textarea{display:block;width:100%;margin-top:5px;border:1px solid rgba(0,0,0,.12);border-radius:14px;padding:11px 12px;background:#fff;color:#111;font:inherit;font-size:14px;outline:none}.gemobile-chat textarea{resize:none}.gemobile-chat__start,.gemobile-chat__reply{margin-top:12px}.gemobile-chat__start button,.gemobile-chat__reply button{width:100%;min-height:46px;border:0;border-radius:999px;background:#0b0b0d;color:#fff;font-size:14px;font-weight:950;cursor:pointer}.gemobile-chat__reply{display:grid;grid-template-columns:1fr auto;gap:8px}.gemobile-chat__reply button{width:auto;min-width:86px;border-radius:16px}.gemobile-chat__reply textarea{margin:0}@media(max-width:640px){.gemobile-chat{right:14px;bottom:14px}.gemobile-chat__panel{right:-2px;bottom:78px;width:calc(100vw - 24px);border-radius:24px}.gemobile-chat__bubble{width:62px;height:62px}}

/* =========================================================
   GEMobile Live Chat v1.0.1
   Poprawka widoczności przycisku "Wyślij".
   ========================================================= */

.gemobile-chat__panel{
  display:none;
  flex-direction:column!important;
}

.gemobile-chat.is-open .gemobile-chat__panel{
  display:flex!important;
}

.gemobile-chat__body{
  display:flex!important;
  flex-direction:column!important;
  min-height:0!important;
  max-height:calc(100vh - 190px)!important;
  overflow:hidden!important;
}

.gemobile-chat__messages{
  flex:1 1 auto!important;
  min-height:80px!important;
  max-height:none!important;
  overflow:auto!important;
}

/* Formularz pierwszej wiadomości — przycisk zawsze pod spodem */
.gemobile-chat__start{
  flex:0 0 auto!important;
  margin-top:12px!important;
}

.gemobile-chat__start button[type="submit"]{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-height:48px!important;
  margin-top:10px!important;
  padding:0 18px!important;
  border:0!important;
  border-radius:999px!important;
  background:#0b0b0d!important;
  color:#fff!important;
  font-size:14px!important;
  font-weight:950!important;
  line-height:1!important;
  cursor:pointer!important;
  opacity:1!important;
  visibility:visible!important;
}

/* Formularz odpowiedzi — textarea + widoczny przycisk */
.gemobile-chat__reply{
  flex:0 0 auto!important;
  position:sticky!important;
  bottom:0!important;
  display:flex!important;
  align-items:stretch!important;
  gap:8px!important;
  width:100%!important;
  margin:10px 0 0!important;
  padding-top:10px!important;
  border-top:1px solid rgba(0,0,0,.06)!important;
  background:#fafafa!important;
  z-index:5!important;
}

.gemobile-chat__reply[hidden]{
  display:none!important;
}

.gemobile-chat__reply textarea{
  flex:1 1 auto!important;
  min-width:0!important;
  width:auto!important;
  min-height:46px!important;
  max-height:90px!important;
  margin:0!important;
  padding:11px 12px!important;
  border-radius:16px!important;
  resize:none!important;
}

.gemobile-chat__reply button[type="submit"]{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 86px!important;
  width:86px!important;
  min-width:86px!important;
  height:auto!important;
  min-height:46px!important;
  margin:0!important;
  padding:0 12px!important;
  border:0!important;
  border-radius:16px!important;
  background:#0b0b0d!important;
  color:#fff!important;
  font-size:13px!important;
  font-weight:950!important;
  line-height:1!important;
  cursor:pointer!important;
  opacity:1!important;
  visibility:visible!important;
}

/* Gdy motyw globalnie ukrywa buttony w formularzach */
.gemobile-chat button{
  appearance:none!important;
  -webkit-appearance:none!important;
}

@media(max-width:420px){
  .gemobile-chat__reply{
    gap:7px!important;
  }

  .gemobile-chat__reply button[type="submit"]{
    flex-basis:76px!important;
    width:76px!important;
    min-width:76px!important;
    font-size:12px!important;
  }
}


/* =========================================================
   GEMobile Live Chat v1.0.2
   Twarda poprawka: formularz odpowiedzi i przycisk Wyślij.
   ========================================================= */

/* Gdy JS zdejmie hidden, formularz odpowiedzi zawsze ma być widoczny */
.gemobile-chat__reply:not([hidden]){
  display:flex!important;
}

/* Dodatkowy awaryjny układ: przycisk pod spodem, jeśli motyw rozbije flex */
.gemobile-chat__reply{
  grid-template-columns:none!important;
}

.gemobile-chat__reply button,
.gemobile-chat__reply button[type="submit"],
.gemobile-chat__start button,
.gemobile-chat__start button[type="submit"]{
  display:flex!important;
  position:relative!important;
  z-index:20!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  text-indent:0!important;
  transform:none!important;
  color:#fff!important;
  background:#0b0b0d!important;
}

/* Upewniamy się, że panel nie ucina dołu formularza */
.gemobile-chat__panel{
  overflow:visible!important;
}

.gemobile-chat__body{
  overflow:visible!important;
  max-height:none!important;
}

.gemobile-chat__messages{
  max-height:240px!important;
}

/* Mobile: przycisk pod polem, żeby na pewno był widoczny */
@media(max-width:480px){
  .gemobile-chat__reply{
    display:block!important;
  }

  .gemobile-chat__reply textarea{
    width:100%!important;
    margin-bottom:8px!important;
  }

  .gemobile-chat__reply button[type="submit"]{
    width:100%!important;
    min-width:100%!important;
    min-height:46px!important;
  }
}


/* =========================================================
   GEMobile Live Chat v1.0.3
   Stabilny układ okna — bez rozjeżdżania formularza i przycisku.
   ========================================================= */

.gemobile-chat{
  right:20px!important;
  bottom:20px!important;
}

/* Panel ma być zamkniętym oknem z przewijanym środkiem */
.gemobile-chat__panel{
  display:none!important;
  flex-direction:column!important;
  width:390px!important;
  max-width:calc(100vw - 28px)!important;
  height:auto!important;
  max-height:calc(100vh - 110px)!important;
  overflow:hidden!important;
  border-radius:28px!important;
}

.gemobile-chat.is-open .gemobile-chat__panel{
  display:flex!important;
}

.gemobile-chat__header{
  flex:0 0 auto!important;
}

/* Cała część pod nagłówkiem przewija się, a nie wypycha przycisku poza okno */
.gemobile-chat__body{
  display:flex!important;
  flex-direction:column!important;
  flex:1 1 auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding:16px!important;
}

/* Mniejszy odstęp między boxem intro i formularzem */
.gemobile-chat__welcome{
  flex:0 0 auto!important;
  margin:0 0 14px!important;
}

.gemobile-chat__messages{
  flex:0 1 auto!important;
  max-height:210px!important;
  min-height:0!important;
  overflow:auto!important;
  padding:0 0 10px!important;
}

/* Pierwszy formularz: normalny blok, nic nie wystaje */
.gemobile-chat__start{
  display:block!important;
  flex:0 0 auto!important;
  margin:0!important;
  padding:0!important;
}

.gemobile-chat__start[hidden]{
  display:none!important;
}

.gemobile-chat label{
  margin:0 0 10px!important;
}

.gemobile-chat input,
.gemobile-chat textarea{
  max-width:100%!important;
}

.gemobile-chat__start textarea{
  min-height:104px!important;
  max-height:140px!important;
}

/* Przycisk pierwszej wiadomości nie może być fixed/sticky ani wypadać poza panel */
.gemobile-chat__start button[type="submit"]{
  position:static!important;
  display:flex!important;
  width:100%!important;
  min-height:48px!important;
  margin:12px 0 0!important;
  border-radius:999px!important;
  transform:none!important;
}

/* Formularz odpowiedzi po rozpoczęciu rozmowy */
.gemobile-chat__reply:not([hidden]){
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 86px!important;
  align-items:stretch!important;
}

.gemobile-chat__reply{
  position:static!important;
  flex:0 0 auto!important;
  margin:10px 0 0!important;
  padding:10px 0 0!important;
  background:#fafafa!important;
  border-top:1px solid rgba(0,0,0,.06)!important;
}

.gemobile-chat__reply textarea{
  min-height:46px!important;
}

.gemobile-chat__reply button[type="submit"]{
  width:86px!important;
  min-width:86px!important;
  flex-basis:86px!important;
}

/* Mobile — okno niższe, przewijane, przycisk w panelu */
@media(max-width:640px){
  .gemobile-chat{
    right:12px!important;
    bottom:12px!important;
  }

  .gemobile-chat__panel{
    right:0!important;
    bottom:76px!important;
    width:calc(100vw - 24px)!important;
    max-width:calc(100vw - 24px)!important;
    max-height:calc(100vh - 100px)!important;
    border-radius:24px!important;
  }

  .gemobile-chat__body{
    padding:14px!important;
  }

  .gemobile-chat__welcome{
    padding:14px!important;
  }

  .gemobile-chat__quick{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
  }

  .gemobile-chat__quick button{
    width:100%!important;
    min-height:44px!important;
    padding:8px!important;
  }

  .gemobile-chat__start textarea{
    min-height:92px!important;
  }

  .gemobile-chat__start button[type="submit"]{
    min-height:48px!important;
    margin-top:10px!important;
  }

  .gemobile-chat__reply:not([hidden]){
    display:block!important;
  }

  .gemobile-chat__reply textarea{
    width:100%!important;
    margin:0 0 8px!important;
  }

  .gemobile-chat__reply button[type="submit"]{
    width:100%!important;
    min-width:100%!important;
  }
}

/* Bardzo niskie ekrany — dodatkowe zmniejszenie */
@media(max-height:720px){
  .gemobile-chat__panel{
    max-height:calc(100vh - 84px)!important;
  }

  .gemobile-chat__header{
    padding:14px 16px!important;
  }

  .gemobile-chat__welcome p{
    display:none!important;
  }

  .gemobile-chat__quick{
    margin-top:10px!important;
  }

  .gemobile-chat__messages{
    max-height:160px!important;
  }
}


/* =========================================================
   GEMobile Live Chat v1.0.9
   Poprawka widoku przycisku na desktopie.
   ========================================================= */

.gemobile-chat__bubble{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
  width:auto!important;
  min-width:74px!important;
  height:72px!important;
  padding:0 20px 0 18px!important;
  border-radius:999px!important;
  line-height:1!important;
  white-space:nowrap!important;
  overflow:visible!important;
}

.gemobile-chat__bubble > span{
  font-size:inherit!important;
}

.gemobile-chat__bubble-icon{
  display:block!important;
  position:relative!important;
  width:22px!important;
  height:22px!important;
  flex:0 0 22px!important;
}

.gemobile-chat__bubble-icon::before{
  content:'';
  display:block;
  width:22px;
  height:22px;
  background-repeat:no-repeat;
  background-position:center;
  background-size:contain;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M6.5 16.5C4.985 15.288 4 13.447 4 11.375C4 7.578 7.358 4.5 11.5 4.5C15.642 4.5 19 7.578 19 11.375C19 15.172 15.642 18.25 11.5 18.25C10.483 18.25 9.514 18.065 8.631 17.729L5.5 18.75L6.5 16.5Z' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.gemobile-chat__bubble-label{
  display:block!important;
  margin:0!important;
  color:#fff!important;
  font-size:15px!important;
  font-weight:900!important;
  letter-spacing:.01em!important;
  line-height:1!important;
}

.gemobile-chat__bubble i{
  right:10px!important;
  top:10px!important;
  width:12px!important;
  height:12px!important;
  border-width:2px!important;
}

@media(max-width:640px){
  .gemobile-chat__bubble{
    width:62px!important;
    min-width:62px!important;
    height:62px!important;
    padding:0!important;
    gap:0!important;
    border-radius:50%!important;
  }

  .gemobile-chat__bubble-label{
    display:none!important;
  }

  .gemobile-chat__bubble-icon{
    width:24px!important;
    height:24px!important;
    flex-basis:24px!important;
  }

  .gemobile-chat__bubble-icon::before{
    width:24px;
    height:24px;
  }

  .gemobile-chat__bubble i{
    right:7px!important;
    top:7px!important;
  }
}


/* GEMobile Live Chat v1.1.0 - szybkie wysyłanie */
.gemobile-chat__message.is-pending{
  opacity:.72;
}

.gemobile-chat__message.is-error{
  background:#fff0f0!important;
  color:#a40000!important;
}
