/* software picker: search + virtualized checklist */
.ct-pk{--pk-row:40px}
.ct-pk>label i.is-max,.ct-pk>label i.is-max span{color:#d93d42}
.ct-pk-box{border:1px solid rgba(25,95,249,.16);border-radius:12px;background-color:rgba(255,255,255,.7);box-shadow:inset 0 1px 2px rgba(20,40,90,.04);overflow:hidden;transition:border-color .2s,box-shadow .2s,background-color .2s}
.ct-pk-box:hover{border-color:rgba(25,95,249,.32)}
.ct-pk-box:focus-within{background-color:#fff;border-color:var(--blue);box-shadow:0 0 0 4px rgba(25,95,249,.13)}
.fld.is-err .ct-pk-box{border-color:#e5484d}
.ct-pk-chips{display:flex;flex-wrap:wrap;gap:6px;max-height:112px;overflow:auto;padding:10px 10px 8px;border-bottom:1px solid rgba(25,95,249,.1);overscroll-behavior:contain}
.ct-pk-chips[hidden]{display:none}
.ct-pk-chip{display:inline-flex;align-items:center;gap:6px;height:28px;max-width:100%;padding:0 3px 0 11px;border-radius:var(--pill);background:linear-gradient(180deg,#f0f5ff,#e2ebff);border:1px solid rgba(25,95,249,.2);color:#1747b8;font-size:13px;line-height:1;white-space:nowrap;animation:ctPop .3s var(--ease) both}
.ct-pk-cn{min-width:0;overflow:hidden;text-overflow:ellipsis}
.ct-pk-chip em{flex:none}
.ct-pk-chip.is-custom{background:#fff;border-style:dashed;border-color:rgba(25,95,249,.45)}
.ct-pk-chip em{font-style:normal;font-family:var(--mono);font-size:10.5px;letter-spacing:.02em;color:#7f8aa1}
.ct-pk-x{position:relative;flex:none;width:22px;height:22px;padding:0;border:0;border-radius:50%;background:transparent;color:#1747b8;opacity:.55;cursor:pointer;transition:background .2s,opacity .2s}
.ct-pk-x::before,.ct-pk-x::after{content:"";position:absolute;left:6.5px;right:6.5px;top:50%;height:1.3px;margin-top:-.65px;background:currentColor;transform:rotate(45deg)}
.ct-pk-x::after{transform:rotate(-45deg)}
.ct-pk-x:hover,.ct-pk-x:focus-visible{background:rgba(25,95,249,.12);opacity:1;outline:0}
@keyframes ctPop{from{opacity:0;transform:translateY(4px) scale(.94)}}
.ct-pk-q{position:relative;display:flex;align-items:center;border-bottom:1px solid rgba(25,95,249,.1)}
.ct-pk-q svg{position:absolute;left:14px;width:16px;height:16px;fill:none;stroke:#7f8aa1;stroke-width:1.5;stroke-linecap:round;pointer-events:none}
.ct-pk-q input{width:100%;height:44px;padding:0 14px 0 38px;border:0;outline:0;background:none;font-size:15px;-webkit-appearance:none;appearance:none}
.ct-pk-q input::placeholder{color:#9aa3b5}
.ct-pk-list{position:relative;height:280px;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;contain:strict;outline:0}
.ct-pk-list:focus-visible{box-shadow:inset 0 0 0 2px rgba(25,95,249,.35)}
.ct-pk-sp{width:1px}
.ct-pk-win{position:absolute;left:0;right:0;top:0}
.ct-pk-h,.ct-pk-o{position:absolute;left:0;right:0;height:var(--pk-row);display:flex;align-items:center;gap:10px;padding:0 14px;box-sizing:border-box}
.ct-pk-h{justify-content:space-between;padding-top:10px;font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:#7f8aa1;background:linear-gradient(180deg,rgba(255,255,255,0),rgba(247,249,255,.9))}
.ct-pk-h em{font-style:normal;color:#a3acbd}
.ct-pk-o{cursor:pointer;font-size:14px;color:var(--ink);transition:background .15s}
.ct-pk-o b{flex:0 1 auto;min-width:0;font-weight:450;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ct-pk-o small{flex:1 1 0;min-width:0;font-size:12px;color:#8a93a6;text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ct-pk-o:hover{background:rgba(25,95,249,.05)}
.ct-pk-o.is-act{background:rgba(25,95,249,.09);box-shadow:inset 2px 0 0 var(--blue)}
.ct-pk-cb{position:relative;flex:none;width:18px;height:18px;border:1.5px solid rgba(25,95,249,.35);border-radius:5px;background:#fff;transition:background .15s,border-color .15s}
.ct-pk-o.is-on .ct-pk-cb{background:var(--blue);border-color:var(--blue)}
.ct-pk-o.is-on .ct-pk-cb::after{content:"";position:absolute;left:5px;top:1.5px;width:4.5px;height:9px;border:solid #fff;border-width:0 1.8px 1.8px 0;transform:rotate(45deg)}
.ct-pk-o.is-on b{color:#1747b8}
.ct-pk-plus{position:relative;flex:none;width:18px;height:18px;border:1.5px dashed rgba(25,95,249,.55);border-radius:5px}
.ct-pk-plus::before,.ct-pk-plus::after{content:"";position:absolute;left:3.5px;right:3.5px;top:50%;height:1.5px;margin-top:-.75px;background:var(--blue)}
.ct-pk-plus::after{transform:rotate(90deg)}
.ct-pk-add b{color:var(--blue)}
.ct-pk-hint{margin:0;padding:8px 14px 9px;border-top:1px solid rgba(25,95,249,.1);font-size:12px;line-height:1.5;color:#8a93a6}
textarea.ct-note{min-height:72px}
@media (max-width:720px){
  .ct-pk-list{height:252px}
  .ct-pk-o small{display:none}
  .ct-pk-hint{display:none}
}
@media (hover:none){.ct-pk-hint{display:none}}
