/* Miplas Messenger Chat — intentionally self-contained to avoid Woodmart conflicts */
.miplas-messenger-wrap{
  position:fixed;
  z-index:999999;
  right:16px;
  bottom:16px;
  font-family:Arial,Helvetica,sans-serif;
  font-size:16px;
  line-height:1.4;
  box-sizing:border-box;
}
.miplas-messenger-wrap *,
.miplas-messenger-wrap *::before,
.miplas-messenger-wrap *::after{box-sizing:border-box}
.miplas-messenger-wrap.miplas-pos-left{right:auto;left:16px}

.miplas-messenger-fab{
  appearance:none;
  -webkit-appearance:none;
  width:60px;
  min-width:60px;
  height:60px;
  min-height:60px;
  margin:0;
  padding:0;
  border:0;
  border-radius:50%!important;
  overflow:hidden;
  background:#0a8cff;
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  box-shadow:0 7px 20px rgba(0,0,0,.23);
  opacity:.78;
  transition:transform .16s ease,box-shadow .16s ease,opacity .16s ease;
}
.miplas-messenger-fab:focus-visible{opacity:1;transform:translateY(-2px);box-shadow:0 9px 24px rgba(0,0,0,.27)}
@media (hover:hover){
  .miplas-messenger-fab:hover{opacity:1;transform:translateY(-2px);box-shadow:0 9px 24px rgba(0,0,0,.27)}
}
.miplas-messenger-fab svg{display:block;width:32px;height:32px}

.miplas-messenger-panel{
  position:absolute;
  right:0;
  bottom:74px;
  width:420px;
  max-width:calc(100vw - 32px);
  margin:0;
  padding:0;
  background:#fff;
  color:#181818;
  border:0;
  border-radius:16px;
  box-shadow:0 16px 42px rgba(0,0,0,.22);
  overflow:hidden;
  opacity:0;
  visibility:hidden;
  transform:translateY(10px) scale(.985);
  transform-origin:bottom right;
  transition:opacity .18s ease,transform .18s ease,visibility .18s ease;
}
.miplas-pos-left .miplas-messenger-panel{right:auto;left:0;transform-origin:bottom left}
.miplas-messenger-wrap.is-open .miplas-messenger-panel{opacity:1;visibility:visible;transform:translateY(0) scale(1)}

.miplas-messenger-close{
  appearance:none!important;
  -webkit-appearance:none!important;
  position:absolute!important;
  z-index:10!important;
  top:8px!important;
  right:9px!important;
  left:auto!important;
  bottom:auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:30px!important;
  min-width:30px!important;
  max-width:30px!important;
  height:30px!important;
  min-height:30px!important;
  max-height:30px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:50%!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#8b8b8b!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:26px!important;
  font-weight:400!important;
  line-height:26px!important;
  text-align:center!important;
  cursor:pointer!important;
  transform:none!important;
}
.miplas-messenger-close:hover{background:rgba(0,0,0,.055)!important;color:#555!important}

.miplas-messenger-header{
  display:flex;
  align-items:center;
  gap:16px;
  min-height:120px;
  margin:0;
  padding:22px 42px 22px 24px;
  background:#f4f4f6;
}
.miplas-messenger-logo{
  display:block;
  width:78px;
  min-width:78px;
  height:78px;
  margin:0;
  padding:0;
  object-fit:cover;
  border:0;
  border-radius:50%;
  background:#95ddeb;
  flex:0 0 auto;
}
.miplas-messenger-title{
  margin:0 0 4px;
  padding:0;
  color:#222;
  font-size:25px;
  font-weight:700;
  line-height:1.15;
}
.miplas-messenger-subtitle{
  margin:0;
  padding:0;
  color:#444;
  font-size:17px;
  font-weight:400;
  line-height:1.35;
}

.miplas-messenger-body{margin:0;padding:26px 24px 22px;background:#fff}
.miplas-messenger-message-row{
  display:flex;
  align-items:center;
  gap:12px;
  margin:0 0 24px;
  padding:0;
}
.miplas-messenger-mini-logo{
  display:block;
  width:48px;
  min-width:48px;
  height:48px;
  margin:0;
  padding:0;
  border:0;
  border-radius:50%;
  object-fit:cover;
  flex:0 0 auto;
}
.miplas-messenger-bubble{
  max-width:calc(100% - 60px);
  margin:0;
  padding:13px 16px;
  background:#f0eeee;
  border-radius:15px;
  color:#181818;
  font-size:16px;
  font-weight:400;
  line-height:1.45;
}
.miplas-messenger-bubble div{margin:0;padding:0}

.miplas-messenger-start{
  appearance:none;
  -webkit-appearance:none;
  width:100%;
  height:56px;
  min-height:56px;
  margin:0;
  padding:0 18px;
  border:0;
  border-radius:12px;
  background:#0a8cff;
  color:#fff!important;
  text-decoration:none!important;
  font-family:Arial,Helvetica,sans-serif;
  font-size:17px;
  font-weight:700;
  line-height:1;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  transition:filter .15s ease;
}
.miplas-messenger-start:hover{filter:brightness(.96);color:#fff!important;text-decoration:none!important}
.miplas-messenger-start svg{display:block;width:22px;height:22px;flex:0 0 auto}

.miplas-hide-desktop{display:none!important}

@media (max-width:767px){
  .miplas-hide-desktop{display:block!important}
  .miplas-hide-mobile{display:none!important}
  .miplas-messenger-wrap{right:14px;bottom:68px}
  .miplas-messenger-wrap.miplas-pos-left{left:14px}
  .miplas-messenger-fab{width:50px;min-width:50px;height:50px;min-height:50px;opacity:.78;border-radius:50%!important}
  .miplas-messenger-fab svg{width:27px;height:27px}
  .miplas-messenger-panel{
    position:fixed;
    left:12px!important;
    right:12px!important;
    bottom:128px;
    width:auto;
    max-width:none;
    border-radius:15px;
    transform-origin:bottom center;
  }
  .miplas-messenger-header{min-height:104px;padding:18px 38px 18px 18px;gap:13px}
  .miplas-messenger-logo{width:66px;min-width:66px;height:66px}
  .miplas-messenger-title{font-size:22px;margin-bottom:3px}
  .miplas-messenger-subtitle{font-size:15px}
  .miplas-messenger-body{padding:22px 18px 18px}
  .miplas-messenger-message-row{gap:10px;margin-bottom:20px}
  .miplas-messenger-mini-logo{width:44px;min-width:44px;height:44px}
  .miplas-messenger-bubble{max-width:calc(100% - 54px);padding:11px 13px;font-size:15px;border-radius:13px}
  .miplas-messenger-start{height:52px;min-height:52px;font-size:16px;border-radius:11px}
  .miplas-messenger-close{top:7px!important;right:7px!important}
}

@media (min-width:768px){.miplas-hide-mobile{display:none!important}}

/* WoodMart mobile Kontaktai integration */
.miplas-contact-sheet{display:none}

@media (max-width:767px){
  /* Keep the FAB hidden while JS checks the WoodMart mobile toolbar.
     If the configured toolbar item is not found, JS removes the pending
     class and the normal floating Messenger button becomes visible. */
  .miplas-messenger-wrap.miplas-mobile-integration-pending .miplas-messenger-fab,
  .miplas-messenger-wrap.miplas-mobile-integration-pending .miplas-messenger-panel,
  .miplas-messenger-wrap.miplas-mobile-toolbar-ready .miplas-messenger-fab,
  .miplas-messenger-wrap.miplas-mobile-toolbar-ready .miplas-messenger-panel{
    display:none!important;
  }

  .miplas-messenger-wrap.miplas-mobile-toolbar-ready .miplas-contact-sheet{
    display:block!important;
    position:fixed;
    z-index:1000001;
    inset:0;
    pointer-events:none;
    font-family:Arial,Helvetica,sans-serif;
  }

  .miplas-contact-sheet-backdrop{
    appearance:none!important;
    -webkit-appearance:none!important;
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:rgba(0,0,0,.22)!important;
    box-shadow:none!important;
    opacity:0;
    visibility:hidden;
    transition:opacity .18s ease,visibility .18s ease;
    cursor:default!important;
  }

  .miplas-contact-sheet-card{
    position:absolute;
    left:12px;
    right:12px;
    bottom:calc(66px + env(safe-area-inset-bottom));
    max-width:430px;
    margin:0 auto;
    padding:8px;
    border:0;
    border-radius:17px;
    background:#fff;
    box-shadow:0 14px 40px rgba(0,0,0,.24);
    opacity:0;
    visibility:hidden;
    transform:translateY(14px) scale(.985);
    transform-origin:bottom center;
    transition:opacity .18s ease,transform .18s ease,visibility .18s ease;
    overflow:hidden;
  }

  .miplas-messenger-wrap.is-contact-sheet-open .miplas-contact-sheet{
    pointer-events:auto;
  }
  .miplas-messenger-wrap.is-contact-sheet-open .miplas-contact-sheet-backdrop{
    opacity:1;
    visibility:visible;
  }
  .miplas-messenger-wrap.is-contact-sheet-open .miplas-contact-sheet-card{
    opacity:1;
    visibility:visible;
    transform:translateY(0) scale(1);
  }

  .miplas-contact-sheet-head{
    position:relative;
    min-height:48px;
    display:flex;
    align-items:center;
    padding:8px 45px 8px 12px;
  }
  .miplas-contact-sheet-title{
    color:#222;
    font-size:17px;
    line-height:1.25;
    font-weight:700;
  }
  .miplas-contact-sheet-close{
    appearance:none!important;
    -webkit-appearance:none!important;
    position:absolute!important;
    top:5px!important;
    right:5px!important;
    width:38px!important;
    min-width:38px!important;
    height:38px!important;
    min-height:38px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:50%!important;
    background:transparent!important;
    color:#777!important;
    box-shadow:none!important;
    font:400 29px/36px Arial,Helvetica,sans-serif!important;
    text-align:center!important;
  }

  .miplas-contact-choice{
    display:flex!important;
    align-items:center!important;
    gap:13px!important;
    width:100%!important;
    min-height:67px!important;
    margin:0!important;
    padding:10px 10px!important;
    border:0!important;
    border-top:1px solid #eee!important;
    border-radius:0!important;
    background:#fff!important;
    color:#222!important;
    text-decoration:none!important;
    box-shadow:none!important;
  }
  .miplas-contact-choice:active{background:#f7f7f7!important}
  .miplas-contact-choice-icon{
    width:42px;
    min-width:42px;
    height:42px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:#f1f1f3;
    color:#333;
  }
  .miplas-contact-choice-icon svg{display:block;width:23px;height:23px}
  .miplas-contact-choice-icon-messenger{background:#0a8cff;color:#fff}
  .miplas-contact-choice-text{
    min-width:0;
    flex:1 1 auto;
    display:flex;
    flex-direction:column;
    gap:2px;
    text-align:left;
  }
  .miplas-contact-choice-text strong{
    color:#222;
    font-size:16px;
    line-height:1.25;
    font-weight:700;
  }
  .miplas-contact-choice-text small{
    color:#757575;
    font-size:13px;
    line-height:1.25;
    font-weight:400;
  }
  .miplas-contact-choice-arrow{
    flex:0 0 auto;
    padding-right:3px;
    color:#999;
    font-size:28px;
    line-height:1;
    font-weight:300;
  }
}
