.mchat-wrap{--mchat-color:#e53935;font-family:Arial,Helvetica,sans-serif;color:#172033;box-sizing:border-box}.mchat-wrap *{box-sizing:border-box}.mchat-panel{width:100%;max-width:430px;background:#fff;border:1px solid #e8ebf2;border-radius:18px;box-shadow:0 16px 45px rgba(20,25,40,.16);overflow:hidden}.mchat-head{background:var(--mchat-color);color:#fff;padding:14px 16px;display:flex;align-items:center;justify-content:space-between}.mchat-head strong{display:block;font-size:16px;line-height:1.2}.mchat-head span{display:block;font-size:12px;opacity:.92;margin-top:3px}.mchat-close{border:0;background:rgba(255,255,255,.18);color:#fff;border-radius:999px;width:32px;height:32px;font-size:22px;line-height:28px;cursor:pointer}.mchat-log{height:430px;overflow:auto;padding:14px;background:#f7f8fb;-webkit-overflow-scrolling:touch}.mchat-msg{display:flex;margin:0 0 12px;clear:both}.mchat-msg .mchat-bubble-msg{max-width:82%;padding:11px 13px;border-radius:16px;font-size:14px;line-height:1.45;box-shadow:0 1px 2px rgba(20,25,40,.06)}.mchat-bot{align-items:flex-start}.mchat-bot .mchat-bubble-msg{background:#fff;border-top-left-radius:6px;border:1px solid #eceff5}.mchat-user{justify-content:flex-end}.mchat-user .mchat-bubble-msg{background:var(--mchat-color);color:#fff;border-top-right-radius:6px}.mchat-avatar{width:30px;height:30px;background:#0a2e8a;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:11px;margin-right:8px;flex:0 0 30px}.mchat-input{padding:12px;background:#fff;border-top:1px solid #e8ebf2}.mchat-field{width:100%;border:1px solid #dfe3ec;border-radius:12px;padding:12px;font-size:14px;outline:none;font-family:Arial,Helvetica,sans-serif}.mchat-field:focus{border-color:var(--mchat-color);box-shadow:0 0 0 3px rgba(229,57,53,.12)}.mchat-send,.mchat-skip,.mchat-choice{font-family:Arial,Helvetica,sans-serif}.mchat-send{width:100%;border:0;background:var(--mchat-color);color:#fff;border-radius:12px;padding:12px 14px;font-size:15px;font-weight:700;margin-top:9px;cursor:pointer}.mchat-send:disabled{opacity:.7;cursor:not-allowed}.mchat-skip{width:100%;border:1px solid #dfe3ec;background:#fff;color:#566070;border-radius:12px;padding:11px 14px;font-size:14px;font-weight:700;margin-top:8px;cursor:pointer}.mchat-choices{display:grid;grid-template-columns:1fr;gap:8px}.mchat-choice{border:1px solid #e1e5ee;background:#fff;color:#172033;border-radius:13px;padding:11px 12px;text-align:left;cursor:pointer;transition:background .15s,border-color .15s,transform .15s}.mchat-choice:hover{border-color:var(--mchat-color);background:#fff8f8;transform:translateY(-1px)}.mchat-choice strong{display:block;font-size:14px}.mchat-choice span{display:block;font-size:12px;line-height:1.35;color:#697386;margin-top:4px}.mchat-multi{display:grid;grid-template-columns:1fr 1fr;gap:8px}.mchat-multi label{border:1px solid #e1e5ee;background:#fff;border-radius:12px;padding:10px;font-size:13px;cursor:pointer}.mchat-multi input{margin-right:6px}.mchat-error{margin:0 12px 12px;background:#fff4f3;border:1px solid #ffd5d0;color:#8c2018;border-radius:10px;padding:9px 11px;font-size:13px}.mchat-estimate{font-size:24px;font-weight:800;margin:6px 0 8px;color:#172033}.mchat-small{font-size:12px;color:#697386;margin-bottom:0}.mchat-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}.mchat-floating{position:fixed;z-index:999999}.mchat-pos-bottom_right{right:18px;bottom:18px}.mchat-pos-bottom_left{left:18px;bottom:18px}.mchat-pos-top_right{right:18px;top:18px}.mchat-pos-top_left{left:18px;top:18px}.mchat-floating .mchat-panel{position:absolute;width:410px;max-width:calc(100vw - 28px)}.mchat-pos-bottom_right .mchat-panel{right:0;bottom:72px}.mchat-pos-bottom_left .mchat-panel{left:0;bottom:72px}.mchat-pos-top_right .mchat-panel{right:0;top:72px}.mchat-pos-top_left .mchat-panel{left:0;top:72px}.mchat-bubble{border:0;background:var(--mchat-color);color:#fff;border-radius:999px;min-width:68px;height:58px;padding:0 18px;font-weight:800;font-size:15px;box-shadow:0 15px 35px rgba(20,25,40,.25);cursor:pointer}.mchat-bubble:before{content:'💬';margin-right:6px}@media(max-width:560px){.mchat-panel{max-width:100%;border-radius:16px}.mchat-pos-bottom_right{right:12px;bottom:12px}.mchat-pos-bottom_left{left:12px;bottom:12px}.mchat-pos-top_right{right:12px;top:12px}.mchat-pos-top_left{left:12px;top:12px}.mchat-floating .mchat-panel{position:fixed;left:10px;right:10px;width:auto;max-width:none}.mchat-pos-bottom_right .mchat-panel,.mchat-pos-bottom_left .mchat-panel{bottom:78px;top:auto}.mchat-pos-top_right .mchat-panel,.mchat-pos-top_left .mchat-panel{top:78px;bottom:auto}.mchat-log{height:55vh;min-height:320px}.mchat-multi{grid-template-columns:1fr}.mchat-msg .mchat-bubble-msg{max-width:88%}.mchat-bubble{height:54px}}@media all and (-ms-high-contrast:none),(-ms-high-contrast:active){.mchat-multi,.mchat-choices{display:block}.mchat-choice,.mchat-multi label{display:block;margin-bottom:8px}.mchat-msg{display:block}.mchat-user{text-align:right}.mchat-avatar{display:inline-block;text-align:center;line-height:30px}.mchat-head{display:block}.mchat-close{float:right;margin-top:-30px}}

/* Review / edit step */
.mchat-review{margin-top:10px;border:1px solid #eef0f6;border-radius:12px;background:#fff;overflow:hidden}
.mchat-review-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 10px;border-bottom:1px solid #eef0f6}
.mchat-review-row:last-child{border-bottom:0}
.mchat-review-row span{display:block;font-size:11px;color:#697386;margin-bottom:2px}
.mchat-review-row strong{display:block;font-size:13px;color:#172033;font-weight:700;word-break:break-word}
.mchat-review-row button{border:1px solid #dfe3ec;background:#fff;color:var(--mchat-color);border-radius:999px;padding:6px 10px;font-size:12px;font-weight:700;cursor:pointer;flex:0 0 auto}
.mchat-review-row button:hover{border-color:var(--mchat-color);background:#fff8f8}
@media(max-width:560px){.mchat-review-row{align-items:flex-start}.mchat-review-row strong{font-size:12px}.mchat-review-row button{padding:6px 9px}}

/* Easier chat input: type and press Enter, or use the compact Send button */
.mchat-input-row{display:flex;gap:8px;align-items:stretch}
.mchat-input-row .mchat-field{flex:1 1 auto;min-width:0}
.mchat-input-row .mchat-send{width:auto;min-width:96px;margin-top:0;flex:0 0 auto}
.mchat-helper{font-size:12px;color:#697386;margin-top:7px;line-height:1.35}
@media(max-width:560px){.mchat-input-row{display:block}.mchat-input-row .mchat-send{width:100%;margin-top:9px}.mchat-helper{display:none}}


/* Mobile scroll lock and better floating chat modal behavior */
html.mchat-page-locked,
body.mchat-page-locked{
  overflow:hidden !important;
  height:100% !important;
}
body.mchat-page-locked{
  position:fixed !important;
  width:100% !important;
  left:0 !important;
  right:0 !important;
}
.mchat-floating.mchat-is-open{
  inset:0 !important;
  width:100vw !important;
  height:100vh !important;
  z-index:2147483000 !important;
  pointer-events:none;
}
.mchat-floating.mchat-is-open .mchat-panel,
.mchat-floating.mchat-is-open .mchat-bubble{
  pointer-events:auto;
}
.mchat-panel{
  overscroll-behavior:contain;
}
.mchat-log{
  overscroll-behavior:contain;
}
@media(max-width:560px){
  .mchat-floating.mchat-is-open .mchat-panel{
    position:fixed !important;
    top:0 !important;
    right:0 !important;
    bottom:0 !important;
    left:0 !important;
    width:100vw !important;
    max-width:none !important;
    height:100vh !important;
    height:100dvh !important;
    max-height:none !important;
    border-radius:0 !important;
    border:0 !important;
    display:flex !important;
    flex-direction:column !important;
  }
  .mchat-floating.mchat-is-open .mchat-head{
    flex:0 0 auto;
  }
  .mchat-floating.mchat-is-open .mchat-log{
    flex:1 1 auto;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    overflow-y:auto !important;
    -webkit-overflow-scrolling:touch;
  }
  .mchat-floating.mchat-is-open .mchat-input{
    flex:0 0 auto;
    padding-bottom:calc(12px + env(safe-area-inset-bottom));
  }
  .mchat-floating.mchat-is-open .mchat-bubble{
    display:none;
  }
}

/* v1.0.9 desktop/mobile scroll correction
   On desktop, keep widget anchored in selected corner.
   Only mobile uses full-screen overlay + body scroll lock. */
@media (min-width:561px){
  html.mchat-page-locked,
  body.mchat-page-locked{
    overflow:auto !important;
    height:auto !important;
  }
  body.mchat-page-locked{
    position:static !important;
    width:auto !important;
    left:auto !important;
    right:auto !important;
    top:auto !important;
  }
  .mchat-floating.mchat-is-open{
    inset:auto !important;
    width:auto !important;
    height:auto !important;
    pointer-events:auto !important;
    z-index:999999 !important;
  }
  .mchat-pos-bottom_right.mchat-is-open{right:18px !important;bottom:18px !important;left:auto !important;top:auto !important;}
  .mchat-pos-bottom_left.mchat-is-open{left:18px !important;bottom:18px !important;right:auto !important;top:auto !important;}
  .mchat-pos-top_right.mchat-is-open{right:18px !important;top:18px !important;left:auto !important;bottom:auto !important;}
  .mchat-pos-top_left.mchat-is-open{left:18px !important;top:18px !important;right:auto !important;bottom:auto !important;}
  .mchat-floating.mchat-is-open .mchat-bubble{display:inline-block !important;}
}


/* desktop/mobile scroll correction v10 */
@media (min-width:561px){
  html.mchat-page-locked, body.mchat-page-locked{overflow:auto !important;height:auto !important;}
  body.mchat-page-locked{position:static !important;width:auto !important;left:auto !important;right:auto !important;top:auto !important;}
  .mchat-floating.mchat-is-open{inset:auto !important;width:auto !important;height:auto !important;pointer-events:auto !important;z-index:999999 !important;}
  .mchat-pos-bottom_right.mchat-is-open{right:18px !important;bottom:18px !important;left:auto !important;top:auto !important;}
  .mchat-pos-bottom_left.mchat-is-open{left:18px !important;bottom:18px !important;right:auto !important;top:auto !important;}
  .mchat-pos-top_right.mchat-is-open{right:18px !important;top:18px !important;left:auto !important;bottom:auto !important;}
  .mchat-pos-top_left.mchat-is-open{left:18px !important;top:18px !important;right:auto !important;bottom:auto !important;}
  .mchat-floating.mchat-is-open .mchat-bubble{display:inline-block !important;}
}

/* v1.1.1: reduce empty space above the main menu options */
.mchat-menu-active .mchat-log{
  height:auto !important;
  min-height:0 !important;
  max-height:150px !important;
  padding-bottom:8px !important;
}
.mchat-menu-active .mchat-input{
  padding-top:10px !important;
}
@media(max-width:560px){
  .mchat-floating.mchat-is-open.mchat-menu-active .mchat-log{
    flex:0 0 auto !important;
    height:auto !important;
    min-height:0 !important;
    max-height:150px !important;
    overflow-y:auto !important;
  }
  .mchat-floating.mchat-is-open.mchat-menu-active .mchat-input{
    flex:1 1 auto !important;
    overflow-y:auto !important;
    -webkit-overflow-scrolling:touch;
  }
}
