/* HomeFlowe quick lead widget */

.hf-bot-launcher{
  position:fixed;
  right:14px;
  top:84px;
  z-index:2147483000;
  font-family:Manrope,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
}
.hf-bot-launcher button{
  all:unset;
  cursor:pointer;
  display:flex;
  align-items:center;
  gap:10px;
  min-height:46px;
  padding:6px 14px 6px 7px;
  border-radius:999px;
  background:rgba(18,23,34,.94);
  color:#fff;
  border:1px solid rgba(255,255,255,.14);
  box-shadow:0 14px 34px rgba(18,23,34,.24);
  backdrop-filter:saturate(170%) blur(10px);
  -webkit-backdrop-filter:saturate(170%) blur(10px);
}
.hf-bot-launcher button:hover{transform:translateY(-1px)}
.hf-bot-launcher__avatar{
  width:34px;
  height:34px;
  border-radius:999px;
  overflow:hidden;
  background:#efe8dc;
  flex:0 0 34px;
}
.hf-bot-launcher__avatar img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.hf-bot-launcher__copy{
  display:none;
  flex-direction:column;
  gap:2px;
  line-height:1.05;
}
.hf-bot-launcher__title{
  font-size:14px;
  font-weight:800;
  white-space:nowrap;
}
.hf-bot-launcher__sub{
  font-size:11px;
  color:rgba(255,255,255,.72);
  white-space:nowrap;
}
@media (min-width:768px){
  .hf-bot-launcher__copy{display:flex}
}

.hf-bot-panel{
  position:fixed;
  right:14px;
  top:84px;
  z-index:2147483001;
  width:min(390px,calc(100vw - 20px));
  display:none;
  overflow:hidden;
  border-radius:16px;
  border:1px solid rgba(18,23,34,.12);
  background:#fff;
  color:#121722;
  box-shadow:0 24px 70px rgba(18,23,34,.28);
  font-family:Manrope,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
}
.hf-bot-panel.hf-bot-open{display:block}
.hf-bot-panel__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:14px 14px 12px;
  border-bottom:1px solid #edf0f4;
  background:linear-gradient(180deg,#fff 0%,#f7f4ef 100%);
}
.hf-bot-panel__person{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
}
.hf-bot-avatar{
  width:44px;
  height:44px;
  border-radius:999px;
  object-fit:cover;
  background:#efe8dc;
  flex:0 0 44px;
}
.hf-bot-title{
  display:flex;
  flex-direction:column;
  gap:3px;
  min-width:0;
}
.hf-bot-name{
  font-size:16px;
  line-height:1.15;
  font-weight:850;
  color:#121722;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.hf-bot-status{
  font-size:12px;
  line-height:1.2;
  color:#617084;
}
.hf-bot-close{
  all:unset;
  cursor:pointer;
  width:34px;
  height:34px;
  border-radius:10px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#fff;
  border:1px solid #dbe1ea;
  color:#2a3342;
  font-size:22px;
  line-height:1;
}
.hf-bot-close:hover{background:#f3f5f8}
.hf-bot-panel__body{padding:14px}
.hf-bot-intro{
  margin:0 0 12px;
  font-size:14px;
  line-height:1.45;
  color:#465366;
}
.hf-bot-form{display:grid;gap:10px}
.hf-bot-field{display:grid;gap:5px}
.hf-bot-label{
  font-size:12px;
  line-height:1.2;
  font-weight:750;
  color:#263241;
}
.hf-bot-input,
.hf-bot-select,
.hf-bot-textarea{
  width:100%;
  box-sizing:border-box;
  border:1px solid #ccd5e0;
  border-radius:10px;
  background:#fff;
  color:#172033;
  font:inherit;
  font-size:15px;
  line-height:1.35;
  outline:none;
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;
}
.hf-bot-input,
.hf-bot-select{height:44px;padding:0 12px}
.hf-bot-textarea{min-height:82px;padding:11px 12px;resize:vertical}
.hf-bot-input:focus,
.hf-bot-select:focus,
.hf-bot-textarea:focus{
  border-color:#121722;
  box-shadow:0 0 0 3px rgba(18,23,34,.08);
}
.hf-bot-input.is-invalid{
  border-color:#c51f31;
  background:#fff8f8;
  box-shadow:0 0 0 3px rgba(197,31,49,.10);
}
.hf-bot-error{
  min-height:16px;
  font-size:12px;
  line-height:1.3;
  color:#c51f31;
}
.hf-bot-submit{
  all:unset;
  cursor:pointer;
  min-height:46px;
  border-radius:12px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0 16px;
  background:linear-gradient(135deg,#ff8a00 0%,#ff3d6e 100%);
  color:#fff;
  font-size:15px;
  line-height:1.2;
  font-weight:850;
  box-shadow:0 12px 24px rgba(255,90,45,.24);
}
.hf-bot-submit:hover{filter:saturate(1.05) brightness(1.02)}
.hf-bot-submit[disabled]{
  cursor:wait;
  opacity:.68;
  box-shadow:none;
}
.hf-bot-success{
  display:none;
  margin:2px 0 0;
  padding:10px 11px;
  border-radius:10px;
  background:#eef8f0;
  color:#17672d;
  font-size:13px;
  line-height:1.35;
}
.hf-bot-success.is-visible{display:block}
.hf-bot-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  margin-top:10px;
}
.hf-bot-link{
  min-height:38px;
  border-radius:10px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid #d7dfe8;
  color:#263241 !important;
  background:#fff;
  text-decoration:none !important;
  font-size:13px;
  font-weight:750;
}
.hf-bot-link:hover{background:#f6f8fb}
.hf-bot-note{
  margin:10px 0 0;
  font-size:11px;
  line-height:1.35;
  color:#738094;
}
.hf-bot-hidden-feedback-bridge,
[data-feedback-form-wrapper].hf-bot-hidden-feedback-bridge{
  position:absolute!important;
  left:-99999px!important;
  top:auto!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}
.hf-bot-hidden-frame{display:none!important}
@media (max-width:767px){
  .hf-bot-launcher{
    right:10px;
    top:74px;
  }
  .hf-bot-launcher button{
    min-height:44px;
    padding:5px 11px 5px 6px;
  }
  .hf-bot-panel{
    right:10px;
    top:74px;
    width:calc(100vw - 20px);
    max-height:calc(100dvh - 88px);
    overflow:auto;
    border-radius:14px;
  }
  .hf-bot-panel__head{padding:12px}
  .hf-bot-panel__body{padding:12px}
  .hf-bot-actions{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){
  .hf-bot-launcher button:hover{transform:none}
  .hf-bot-submit,
  .hf-bot-input,
  .hf-bot-select,
  .hf-bot-textarea{transition:none}
}


/* HF 2026-06-09: callback modal conflict fix.
   When the standard request form is open, keep the bot launcher away from
   the modal close button: move the avatar to the left and keep the bot panel closed. */
html.hf-callback-open .hf-bot-launcher,
html.hf-modal-lock .hf-bot-launcher{
  right:auto!important;
  left:14px!important;
  z-index:2147483002!important;
}
html.hf-callback-open .hf-bot-panel,
html.hf-modal-lock .hf-bot-panel{
  display:none!important;
}
html.hf-callback-open .hf-callback-modal__close,
html.hf-modal-lock .hf-callback-modal__close{
  position:relative;
  z-index:2147483003;
}
@media (max-width:767px){
  html.hf-callback-open .hf-bot-launcher,
  html.hf-modal-lock .hf-bot-launcher{
    right:auto!important;
    left:10px!important;
  }
}


/* HF 2026-06-09: callback modal conflict fix v2.
   The callback modal now has its own avatar in the header, matching the quick bot.
   Hide the floating bot launcher while the modal is open so it cannot cover the title, fields, or close button. */
html.hf-callback-open .hf-bot-launcher,
html.hf-modal-lock .hf-bot-launcher,
body.hf-callback-open .hf-bot-launcher{
  display:none!important;
  pointer-events:none!important;
}
html.hf-callback-open .hf-bot-panel,
html.hf-modal-lock .hf-bot-panel,
body.hf-callback-open .hf-bot-panel{
  display:none!important;
  pointer-events:none!important;
}
html.hf-callback-open .hf-callback-modal__close,
html.hf-modal-lock .hf-callback-modal__close{
  position:relative;
  z-index:2147483003;
}
