/* --- QP MultiSelect (vanilla) ------------------------------------------- */
.qp-ms{position:relative;font-size:14px;--qp-pad-x:.5rem;--qp-pad-y:.25rem}
.qp-ms__control{
  display:flex;align-items:flex-start;flex-wrap:wrap;min-height:40px;width:100%;max-width:100%;
  border:1px solid #ced4da;border-radius:.25rem;padding:.25rem .5rem;
  cursor:text;background:#fff;box-shadow:inset 0 0 0 1px rgba(0,0,0,0);
  overflow-x:hidden;overflow-y:auto;white-space:normal;box-sizing:border-box
}
.qp-ms__control:focus-within{border-color:#3b82f6;box-shadow:0 0 0 .2rem rgba(59,130,246,.15)}
.qp-ms__control::-webkit-scrollbar{height:8px}
.qp-ms__control::-webkit-scrollbar-thumb{background:#e1e5ea;border-radius:4px}

.qp-ms__tokens{display:flex;flex:1 1 auto;flex-wrap:wrap;gap:.25rem;align-items:center;max-width:100%;min-width:0}
.qp-ms__token{
  display:inline-flex;align-items:center;gap:.35rem;max-width:100%;min-width:0;
  padding:.125rem .5rem;border-radius:999px;background:#e7f0ff;border:1px solid #cfe0ff;
  white-space:normal;overflow-wrap:anywhere;word-break:break-word;box-sizing:border-box
}
.qp-ms__token .qp-ms__remove{border:0;background:transparent;cursor:pointer;font-size:16px;line-height:1}

.qp-ms__token-text{
  min-width:0;
  max-width:100%;
  white-space:normal;
  overflow-wrap:anywhere;
  word-break:break-word;
}

.qp-ms__input{flex:1 1 10ch;width:auto;min-width:6ch;max-width:100%;border:0;outline:none;padding:.25rem}
.qp-ms__dropdown{
  position:absolute;left:0;right:0;top:calc(100% + 4px);
  background:#fff;border:1px solid #ced4da;border-radius:.25rem;
  box-shadow:0 10px 20px rgba(0,0,0,.08);max-height:260px;overflow:auto;z-index:30
}
.qp-ms__actions{display:flex;justify-content:space-between;gap:.5rem;padding:.35rem .5rem;border-bottom:1px solid #eee;background:#fafafa}
.qp-ms__btn{border:1px solid #d0d7de;background:#fff;border-radius:.25rem;padding:.25rem .5rem;font-size:.85rem;cursor:pointer}
.qp-ms__btn:hover{background:#f6f8fa}
.qp-ms__search{display:flex;align-items:center;padding:.25rem .5rem;border-bottom:1px solid #eee}
.qp-ms__search input{width:100%;border:0;outline:none;padding:.35rem}
.qp-ms__item{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;cursor:pointer}
.qp-ms__item:hover,.qp-ms__item[aria-selected="true"]{background:#f5f9ff}
.qp-ms__empty{padding:.75rem .75rem;color:#6c757d}
.qp-ms--disabled .qp-ms__control{background:#f8f9fa;cursor:not-allowed}
.qp-ms--disabled .qp-ms__input{display:none}

.qp-ms,
.qp-ms *{box-sizing:border-box}

/* Floating label */
.qp-ms__label{
  position:absolute;left:.75rem;top:.6rem;color:#6c757d;pointer-events:none;
  transition:.15s ease;background:transparent;padding:0 .125rem
}
.qp-ms.qp-ms--focused .qp-ms__label,
.qp-ms.qp-ms--has-value .qp-ms__label{
  top:-.6rem;font-size:.8rem;background:#fff;z-index:2
}