/* Строка поиска над каждой страницей CRM (public/js/crm-search.js, 05.10.2026). */
.crm-qs { position: sticky; top: 0; z-index: 1045; margin: -6px 0 14px; padding: 6px 0 4px; background: var(--dtg-bg, #eceef3); }
/* Закреплённые шапки страницы и таблиц встают под строку поиска, а не под неё
   (06.10.2026: при прокрутке строка перекрывала кнопки «Сохранить», «Удалить»). */
.workspace:has(.crm-qs) .command-bar-wrapper { top: 58px; }
/* шапки таблиц не трогаем: у таблиц своя прокрутка, сдвиг ломал их (список возможностей) */
/* строка во всю ширину карточек; место под замок — только когда он плавает у края (.pad) */
.crm-qs.pad { padding-right: 56px; }
.crm-qs.pad .crm-qs-drop { right: 56px; }
.crm-qs-box { display: flex; align-items: center; gap: 10px; background: #fff; border: 1px solid #e3e6ef; border-radius: 14px;
  padding: 0 12px; height: 44px; box-shadow: 0 6px 22px -18px #4c547380; }
.crm-qs-box:focus-within { border-color: #a79bc7; box-shadow: 0 0 0 3px #d4caf2; }
.crm-qs-ico { width: 16px; height: 16px; color: #8b90a3; flex: none; }
.crm-qs-input { flex: 1; min-width: 0; border: 0; outline: 0; background: transparent; font: inherit; font-size: 14px; color: #2f3445; height: 100%; }
.crm-qs-input::-webkit-search-cancel-button { cursor: pointer; }
.crm-qs-kbd { font: 600 11px/1 ui-monospace, monospace; color: #8b90a3; border: 1px solid #e3e6ef; border-radius: 6px; padding: 3px 6px; background: #f6f7fb; }
.crm-qs-drop { position: absolute; left: 0; right: 0; top: calc(100% - 2px); background: #fff; border: 1px solid #e3e6ef; border-radius: 14px;
  box-shadow: 0 18px 50px -20px #2b2f4a59; max-height: min(70vh, 560px); overflow: auto; padding: 6px; }
.crm-qs-group + .crm-qs-group { border-top: 1px solid #eef0f4; margin-top: 4px; padding-top: 4px; }
.crm-qs-gt { font-size: 10.5px; text-transform: uppercase; letter-spacing: .6px; color: #8b90a3; padding: 6px 10px 4px; font-weight: 650; }
.crm-qs-item { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 2px 10px; padding: 8px 10px; border-radius: 10px; color: #2f3445; text-decoration: none; }
.crm-qs-item:hover, .crm-qs-item.on { background: #f3effb; color: #2f3445; text-decoration: none; }
.crm-qs-item .t { font-size: 13.5px; font-weight: 550; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.crm-qs-item .b { font-size: 11px; color: #5c528e; background: #eeebfa; border-radius: 99px; padding: 2px 8px; align-self: center; white-space: nowrap; }
.crm-qs-item .s { grid-column: 1 / -1; font-size: 12px; color: #8b90a3; }
.crm-qs-empty { padding: 14px 12px; color: #8b90a3; font-size: 13px; }
@media (max-width: 760px) { .crm-qs-kbd { display: none; } .crm-qs-box { height: 42px; } }
@media print { .crm-qs { display: none; } }
