:root{
  --shah-assistant-accent:#1154ca;
  --shah-assistant-bottom:104px;
}

.shah-smart-root,
.shah-smart-overview{
  font-family:inherit;
  font-size:14px;
  line-height:1.55;
  box-sizing:border-box;
}

.shah-smart-root *,
.shah-smart-overview *{
  box-sizing:border-box;
}

.shah-smart-root button,
.shah-smart-overview button{
  font:inherit;
  cursor:pointer;
}

.shah-smart-root a,
.shah-smart-overview a{
  text-decoration:none;
}

.shah-smart-root{
  position:fixed;
  z-index:999990;
  right:20px;
  bottom:var(--shah-assistant-bottom);
  max-width:calc(100vw - 24px);
  color:#172742;
}

.shah-smart-root.shah-smart-left{
  right:auto;
  left:20px;
}

.shah-smart-launch{
  display:flex!important;
  align-items:center;
  justify-content:center;
  gap:9px;
  min-height:52px;
  padding:9px 17px!important;
  border:1px solid rgba(255,255,255,.17)!important;
  border-radius:99px!important;
  background:var(--shah-assistant-accent)!important;
  box-shadow:0 8px 27px rgba(16,53,103,.27);
  color:#fff!important;
  font-size:13px!important;
  font-weight:750!important;
  letter-spacing:.01em;
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease;
}

.shah-smart-launch:hover,
.shah-smart-launch:focus-visible{
  transform:translateY(-2px);
  box-shadow:0 11px 28px rgba(16,53,103,.36);
}

.shah-smart-launch svg{
  display:block;
  width:26px;
  height:26px;
}

.shah-smart-launch-active{
  background:#102a58!important;
}

.shah-smart-panel[hidden]{
  display:none!important;
}

.shah-smart-panel{
  position:absolute;
  right:0;
  bottom:65px;
  display:flex;
  flex-direction:column;
  width:390px;
  height:min(605px,calc(100dvh - 145px));
  max-width:calc(100vw - 24px);
  overflow:hidden;
  border:1px solid #dce4f3;
  border-radius:19px;
  background:#fff;
  box-shadow:0 18px 60px rgba(9,27,54,.24);
}

.shah-smart-left .shah-smart-panel{
  right:auto;
  left:0;
}

.shah-smart-header{
  display:flex;
  align-items:center;
  gap:10px;
  flex-shrink:0;
  padding:14px 15px;
  background:linear-gradient(125deg,#0b397c,#1154ca);
  color:#fff;
}

.shah-smart-avatar{
  display:grid;
  place-items:center;
  flex:0 0 39px;
  width:39px;
  height:39px;
  border:1px solid rgba(255,255,255,.25);
  border-radius:50%;
  background:rgba(255,255,255,.12);
  font-size:19px;
}

.shah-smart-header > div:nth-child(2){
  min-width:0;
  flex:1;
}

.shah-smart-header strong,
.shah-smart-header small{
  display:block;
}

.shah-smart-header strong{
  font-size:14px;
  line-height:1.3;
}

.shah-smart-header small{
  margin-top:2px;
  color:rgba(255,255,255,.82);
  font-size:10px;
}

.shah-smart-close{
  display:grid!important;
  place-items:center;
  flex:0 0 35px;
  width:35px;
  height:35px;
  padding:0!important;
  border:0!important;
  border-radius:50%!important;
  background:rgba(255,255,255,.1)!important;
  color:#fff!important;
  font-size:24px!important;
  line-height:1!important;
}

.shah-smart-body{
  flex:1;
  overflow:auto;
  padding:17px;
  background:#f7f9fd;
  overscroll-behavior:contain;
}

.shah-smart-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  flex-shrink:0;
  padding:10px 13px;
  border-top:1px solid #e5ebf4;
  background:#fff;
}

.shah-smart-footer span{
  color:#6f7e92;
  font-size:9px;
  line-height:1.4;
}

.shah-smart-footer button{
  padding:4px!important;
  border:0!important;
  background:transparent!important;
  color:var(--shah-assistant-accent)!important;
  font-size:11px!important;
  font-weight:700!important;
  white-space:nowrap;
}

.shah-smart-eyebrow{
  margin-bottom:7px;
  color:#526e95;
  font-size:9px;
  font-weight:850;
  letter-spacing:.1em;
}

.shah-smart-message{
  margin-bottom:14px;
  color:#18304e;
  font-size:15px;
  font-weight:750;
  line-height:1.45;
}

.shah-smart-option{
  display:flex!important;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  width:100%!important;
  margin:8px 0!important;
  padding:12px 13px!important;
  border:1px solid #d7e3f2!important;
  border-radius:11px!important;
  background:#fff!important;
  color:#1d3658!important;
  text-align:left!important;
  transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease;
}

.shah-smart-option:hover,
.shah-smart-option:focus-visible{
  transform:translateY(-1px);
  border-color:#9bb9e5!important;
  box-shadow:0 5px 14px rgba(20,63,119,.08);
}

.shah-smart-option-copy{
  min-width:0;
}

.shah-smart-option-copy strong,
.shah-smart-option-copy small{
  display:block;
}

.shah-smart-option-copy strong{
  color:#1b3558;
  font-size:12px;
}

.shah-smart-option-copy small{
  margin-top:2px;
  color:#708099;
  font-size:10px;
  font-weight:500;
}

.shah-smart-arrow{
  flex:0 0 auto;
  color:var(--shah-assistant-accent);
  font-size:18px;
  font-weight:700;
}

.shah-smart-secondary{
  width:100%!important;
  margin:9px 0 0!important;
  padding:9px 4px!important;
  border:0!important;
  background:transparent!important;
  color:#5b7190!important;
  font-size:11px!important;
  font-weight:700!important;
  text-align:left!important;
}

.shah-smart-result{
  margin:10px 0 13px;
  padding:16px;
  border:1px solid #dbe7f8;
  border-radius:14px;
  background:#fff;
  box-shadow:0 4px 16px rgba(15,43,84,.06);
}

.shah-smart-result-label{
  color:#456c9f;
  font-size:10px;
  font-weight:850;
  letter-spacing:.08em;
}

.shah-smart-result h3{
  margin:8px 0!important;
  color:#182e4b!important;
  font-size:17px!important;
  line-height:1.35!important;
  font-weight:800!important;
}

.shah-smart-result p{
  margin:10px 0 0!important;
  color:#52657e!important;
  font-size:12px!important;
  line-height:1.55!important;
}

.shah-smart-result-price{
  display:block;
  margin-top:3px;
  color:#0a6b44;
  font-size:21px;
  font-weight:850;
}

.shah-smart-unavailable{
  color:#aa3b1b!important;
  font-weight:650;
}

.shah-smart-button{
  display:block!important;
  width:100%!important;
  min-height:43px;
  margin:10px 0!important;
  padding:12px 13px!important;
  border:1px solid var(--shah-assistant-accent)!important;
  border-radius:10px!important;
  font-size:13px!important;
  line-height:1.45!important;
  font-weight:740!important;
  text-align:center!important;
}

.shah-smart-button.primary{
  background:var(--shah-assistant-accent)!important;
  color:#fff!important;
}

.shah-smart-button.outline{
  background:#fff!important;
  color:var(--shah-assistant-accent)!important;
}

.shah-smart-button:hover,
.shah-smart-button:focus-visible{
  filter:brightness(.94);
}

.shah-smart-small-note{
  margin:10px 2px!important;
  color:#718099;
  font-size:11px!important;
  line-height:1.55!important;
}

.shah-smart-user-question{
  margin-bottom:15px;
  padding:10px 12px;
  border-radius:11px;
  background:#e9f1ff;
  color:#274b72;
  font-size:12px;
}

.shah-smart-search{
  display:flex;
  gap:5px;
  margin-bottom:18px;
}

.shah-smart-search input{
  width:100%;
  min-width:0;
  padding:10px!important;
  border:1px solid #cad9eb!important;
  border-radius:9px!important;
  background:#fff!important;
  color:#182f4b!important;
  font-size:12px!important;
}

.shah-smart-search button{
  padding:10px 13px!important;
  border:0!important;
  border-radius:9px!important;
  background:var(--shah-assistant-accent)!important;
  color:#fff!important;
  font-weight:700!important;
}

.shah-smart-faq-heading{
  margin:8px 0 10px!important;
  color:#6d7f99!important;
  font-size:10px!important;
  font-weight:850!important;
  letter-spacing:.07em;
}

.shah-smart-overview{
  clear:both;
  display:block;
  width:100%;
  max-width:100%;
  margin:20px 0!important;
  padding:19px 20px 16px!important;
  border:1px solid #e0e8f4;
  border-radius:17px;
  background:linear-gradient(135deg,#f3f7ff 0%,#fff 80%);
  box-shadow:0 4px 15px rgba(26,66,113,.07);
  color:#22364c;
}

.shah-smart-overview-top{
  display:flex;
  align-items:center;
  gap:8px;
  margin-bottom:12px;
}

.shah-smart-overview-top strong{
  color:#1e3253;
  font-size:15px;
  font-weight:800;
}

.shah-smart-sparkle{
  color:var(--shah-assistant-accent);
  font-size:20px;
  line-height:1;
}

.shah-smart-overview-tag{
  margin-left:auto;
  padding:3px 8px;
  border:1px solid #d7e3f4;
  border-radius:20px;
  color:#6580a1;
  font-size:10px;
  white-space:nowrap;
}

.shah-smart-overview-intro{
  margin:7px 0 12px!important;
  color:#3c526d!important;
  font-size:13px!important;
  line-height:1.6!important;
}

.shah-smart-overview-price{
  margin:8px 0 12px;
  color:#183a64;
  font-size:19px;
  font-weight:800;
}

.shah-smart-price-caption{
  display:block;
  margin-top:2px;
  color:#687992;
  font-size:11px;
  font-weight:500;
}

.shah-smart-section-title{
  display:block;
  margin:9px 0;
  color:#243b5b;
  font-size:12px;
}

.shah-smart-overview ul{
  margin:9px 0 15px!important;
  padding:0!important;
  list-style:none!important;
}

.shah-smart-overview li{
  position:relative;
  margin:9px 0!important;
  padding:0 0 0 21px!important;
  color:#425872!important;
  font-size:12px!important;
  line-height:1.5!important;
}

.shah-smart-overview li::before{
  content:'✓';
  position:absolute;
  top:0;
  left:0;
  color:#0a8754;
  font-weight:900;
}

.shah-smart-overview-actions{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
}

.shah-smart-inline{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  min-height:41px;
  padding:11px 16px!important;
  border:0!important;
  border-radius:9px!important;
  background:var(--shah-assistant-accent)!important;
  color:#fff!important;
  font-size:13px!important;
  font-weight:750!important;
}

.shah-smart-availability-link{
  padding:10px 4px!important;
  color:var(--shah-assistant-accent)!important;
  font-size:12px!important;
  font-weight:730!important;
}

.shah-smart-overview .shah-smart-disclaimer{
  margin:11px 0 0!important;
  color:#7b8799!important;
  font-size:10px!important;
  line-height:1.45!important;
}

.shah-smart-root button:focus-visible,
.shah-smart-overview button:focus-visible,
.shah-smart-overview a:focus-visible,
.shah-smart-root a:focus-visible{
  outline:3px solid #ffc843!important;
  outline-offset:2px!important;
}

@media(max-width:600px){
  .shah-smart-root{
    right:12px;
    bottom:var(--shah-assistant-bottom);
    max-width:calc(100vw - 24px);
  }

  .shah-smart-root.shah-smart-left{
    right:auto;
    left:12px;
  }

  .shah-smart-launch{
    min-height:49px;
    padding:9px 13px!important;
    font-size:12px!important;
  }

  .shah-smart-launch svg{
    width:22px;
    height:22px;
  }

  .shah-smart-panel{
    bottom:61px;
    width:min(390px,calc(100vw - 24px));
    height:min(590px,calc(100dvh - 165px));
    border-radius:16px;
  }

  .shah-smart-overview{
    padding:15px!important;
    border-radius:13px;
  }

  .shah-smart-overview-top strong{
    font-size:13px;
  }

  .shah-smart-overview-actions{
    align-items:stretch;
  }

  .shah-smart-inline{
    flex:1 1 100%;
  }
}

@media(max-height:540px){
  .shah-smart-panel{
    bottom:58px;
    height:calc(100dvh - 120px);
  }
}

@media(prefers-reduced-motion:reduce){
  .shah-smart-launch,
  .shah-smart-option{
    transition:none;
  }
}
