/* Vchat 0.36.88 — visible reservation context + booked service relation */
.vchat-booking-context-strip{
  margin:0 18px 12px!important;
  padding:12px 14px!important;
  gap:13px!important;
  border-radius:15px!important;
  border:1px solid #d8d1eb!important;
  border-left:4px solid var(--booking-accent)!important;
  background:linear-gradient(90deg,var(--booking-soft) 0%,#fff 56%)!important;
  box-shadow:0 8px 24px rgba(47,38,87,.07)!important;
}
.vchat-booking-context-mark{width:40px!important;height:40px!important;border-radius:12px!important}
.vchat-booking-context-kicker span{font-size:10px!important;letter-spacing:.045em!important}
.vchat-booking-context-kicker em{font-size:10px!important;padding:4px 7px!important}
.vchat-booking-context-copy>strong{font-size:14px!important;line-height:1.3!important}
.vchat-booking-context-copy>small{font-size:10.5px!important;line-height:1.4!important;gap:6px!important}
.vchat-booking-context-copy code{font-size:10px!important;padding:2px 6px!important}
.vchat-booking-context-open{min-height:36px!important;padding:0 13px!important;font-size:11px!important}

/* The same context is available in the conversation details panel, so agents never have to hunt for it. */
.vchat-contact-booking-card[hidden]{display:none!important}
.vchat-contact-booking-card{
  --booking-accent:#6654ba;
  --booking-soft:#f4f1ff;
  padding:14px!important;
  display:grid!important;
  gap:11px!important;
  border:1px solid #dcd6ed!important;
  border-left:4px solid var(--booking-accent)!important;
  background:linear-gradient(145deg,var(--booking-soft),#fff 68%)!important;
  box-shadow:0 8px 22px rgba(48,38,89,.055)!important;
}
.vchat-contact-booking-card[data-state="active"]{--booking-accent:#318862;--booking-soft:#effaf4!important;border-color:#c9e6d7!important}
.vchat-contact-booking-head{display:grid!important;grid-template-columns:38px minmax(0,1fr)!important;gap:10px!important;align-items:center!important}
.vchat-contact-booking-head>span{width:38px!important;height:38px!important;display:grid!important;place-items:center!important;border-radius:11px!important;background:#fff!important;border:1px solid #ded8ec!important;color:var(--booking-accent)!important;font-size:16px!important;font-weight:850!important}
.vchat-contact-booking-head>div{min-width:0!important;display:grid!important;gap:3px!important}
.vchat-contact-booking-head small{font-size:9.5px!important;line-height:1.2!important;text-transform:uppercase!important;letter-spacing:.05em!important;font-weight:850!important;color:var(--booking-accent)!important}
.vchat-contact-booking-head strong{font-size:14px!important;line-height:1.3!important;color:#2e2941!important;overflow-wrap:anywhere!important}
.vchat-contact-booking-date{padding:9px 10px!important;border-radius:10px!important;background:#fff!important;border:1px solid #e5e0ef!important;color:#4b445c!important;font-size:11px!important;font-weight:750!important;line-height:1.4!important}
.vchat-contact-booking-card dl{margin:0!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:8px!important}
.vchat-contact-booking-card dl>div{min-width:0!important;padding:9px 10px!important;border-radius:10px!important;background:#fff!important;border:1px solid #ebe7f2!important;display:grid!important;gap:3px!important}
.vchat-contact-booking-card dt{font-size:8.5px!important;line-height:1.2!important;text-transform:uppercase!important;letter-spacing:.045em!important;color:#91899e!important;font-weight:800!important}
.vchat-contact-booking-card dd{margin:0!important;font-size:10.5px!important;line-height:1.35!important;color:#39334a!important;font-weight:750!important;overflow-wrap:anywhere!important}
.vchat-contact-booking-card code{font:inherit!important;color:#5c4aaa!important}
#vchat-contact-booking-open{appearance:none!important;width:100%!important;min-height:36px!important;border:1px solid #d5cee8!important;border-radius:10px!important;background:#fff!important;color:#5948a8!important;font-size:11px!important;font-weight:800!important;cursor:pointer!important;box-shadow:none!important}
#vchat-contact-booking-open:hover{background:#faf8ff!important;border-color:#bcb1dd!important}

/* Reserved services are visually explicit in Product / service. */
.vchat-catalog-assignment-list article.is-booked{border-color:#bfb3e6!important;background:linear-gradient(90deg,#f7f4ff,#fff 52%)!important;box-shadow:inset 3px 0 0 #6654ba!important}
.vchat-catalog-assignment-check>div>strong{display:flex!important;align-items:center!important;gap:7px!important;flex-wrap:wrap!important}
.vchat-catalog-reservation-badge{display:inline-flex!important;align-items:center!important;min-height:20px!important;padding:2px 7px!important;border-radius:999px!important;background:#ece7ff!important;color:#5c49ad!important;font-size:9px!important;font-style:normal!important;font-weight:850!important;line-height:1!important;white-space:nowrap!important}

@media(max-width:1100px){
  .vchat-booking-context-strip{margin-left:12px!important;margin-right:12px!important}
}
@media(max-width:640px){
  .vchat-booking-context-strip{padding:11px!important;gap:10px!important}
  .vchat-booking-context-copy>strong{font-size:13px!important}
  .vchat-booking-context-copy>small{font-size:10px!important}
  .vchat-contact-booking-card dl{grid-template-columns:1fr!important}
}
