.bitrix-bnect-contract-list { display: grid; gap: 7px; }
.bitrix-bnect-contract { min-width: 0; display: grid; gap: 3px; padding: 8px 9px; border: 1px solid #dbeafe; border-radius: 8px; background: #f8fbff; }
.bitrix-bnect-contract > a, .bitrix-bnect-contract > strong { color: #1d4ed8; font-size: 13px; font-weight: 850; line-height: 1.3; overflow-wrap: anywhere; }
.bitrix-bnect-contract > a { text-decoration: none; }
.bitrix-bnect-contract > a:hover { text-decoration: underline; }
.bitrix-bnect-contract > small { display: block; font-size: 11px; }

.bnect-contract-picker { min-width: 0; display: grid; gap: 10px; padding: 12px; border: 1px solid #bfdbfe; border-radius: 10px; background: #f8fbff; }
.bnect-contract-picker-head { min-width: 0; display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
.bnect-contract-picker-head > div { min-width: 0; display: grid; gap: 3px; }
.bnect-contract-picker-head strong { color: var(--sk-navy); font-size: 14px; }
.bnect-contract-picker-head small { color: var(--sk-muted); font-size: 12px; line-height: 1.4; }
.bnect-contract-picker-count { min-width: 28px; min-height: 28px; display: inline-flex; align-items: center; justify-content: center; padding: 3px 8px; border-radius: 999px; background: #dbeafe; color: #1d4ed8; font-size: 12px; font-weight: 900; }
.bnect-contract-selected-list, .bnect-contract-results { min-width: 0; display: grid; gap: 7px; }
.bnect-contract-selected-card, .bnect-contract-result { min-width: 0; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 10px; align-items: center; padding: 9px 10px; border: 1px solid #dbe3ee; border-radius: 8px; background: #fff; }
.bnect-contract-selected-card { border-color: #93c5fd; box-shadow: 0 1px 2px rgba(37, 99, 235, .06); }
.bnect-contract-selected-card > div, .bnect-contract-result > div { min-width: 0; display: grid; gap: 3px; }
.bnect-contract-selected-card strong, .bnect-contract-result strong { color: var(--sk-navy); font-size: 13px; line-height: 1.3; overflow-wrap: anywhere; }
.bnect-contract-selected-card small, .bnect-contract-result small { color: var(--sk-muted); font-size: 11px; line-height: 1.35; overflow-wrap: anywhere; }
.bnect-contract-picker-empty { padding: 10px; border: 1px dashed #cbd5e1; border-radius: 8px; color: var(--sk-muted); font-size: 12px; text-align: center; }
.bnect-contract-search-field { gap: 6px; }
.bnect-contract-picker-status { min-height: 24px; display: flex; align-items: center; justify-content: space-between; gap: 10px; font-size: 12px; line-height: 1.35; }
.bnect-contract-picker-status.error { color: #b91c1c; }
.bnect-contract-picker-status .link-btn { min-height: 44px; flex: 0 0 auto; }
.bnect-contract-results { max-height: 310px; overflow: auto; padding-right: 3px; overscroll-behavior: contain; }
.bnect-contract-result.selected { background: #f0fdf4; border-color: #bbf7d0; }
.bnect-contract-add { min-width: 88px; min-height: 44px; }
.bnect-contract-remove { width: 44px; height: 44px; min-width: 44px; min-height: 44px; border-color: #fecaca; color: #b91c1c; }

@media (max-width: 760px) {
  .bnect-contract-picker { padding: 10px; }
  .bnect-contract-picker-head { align-items: center; }
  .bnect-contract-selected-card, .bnect-contract-result { grid-template-columns: minmax(0, 1fr); align-items: stretch; }
  .bnect-contract-selected-card { position: relative; padding-right: 58px; }
  .bnect-contract-selected-card .bnect-contract-remove { position: absolute; top: 8px; right: 8px; }
  .bnect-contract-result .bnect-contract-add { width: 100%; }
  .bnect-contract-results { max-height: 42dvh; }
  .bnect-contract-picker-status { align-items: stretch; flex-direction: column; }
  .bnect-contract-picker-status .link-btn { width: 100%; }
}
