/* Кастомные выпадающие списки — оформление (логика в custom_selects.js).
   Нативный <select> остаётся в DOM (его читает весь существующий код),
   поверх рисуется свой триггер и меню. Размеры берутся из переменных,
   которые скрипт снимает с самого select ДО его скрытия — иначе
   компактные списки в таблицах раздувались бы до формы. */
.ct-select{display:inline-block;position:relative;min-width:0;width:100%;max-width:100%;vertical-align:middle}
.ct-select-native{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;clip-path:inset(50%)!important;padding:0!important;margin:0!important}
.ct-select-trigger{display:flex!important;align-items:center;justify-content:space-between;gap:14px;width:100%;min-height:var(--ct-select-h,44px);font-size:var(--ct-select-font,inherit);padding:var(--ct-select-pad,11px 14px)!important;border:1px solid var(--stroke,#e2e8f0)!important;border-radius:var(--ct-select-radius,11px)!important;background:var(--card,#fff)!important;color:var(--ink,#0f172a)!important;text-align:left;font:inherit;cursor:pointer;box-shadow:none!important}
.ct-select-trigger span{min-width:0;overflow-wrap:anywhere}
.ct-select-trigger i{font-style:normal;font-size:21px;color:var(--ai,#2563eb)}
.ct-select-chevron{flex:none;width:16px;height:16px;color:var(--ai,#2563eb);transition:transform .15s ease}
.ct-select-trigger[aria-expanded=true] .ct-select-chevron{transform:rotate(180deg)}
.ct-select-trigger:hover,.ct-select-trigger[aria-expanded=true]{border-color:var(--ai,#2563eb)!important;background:var(--ai-dim,rgba(37,99,235,.10))!important}
.ct-select-trigger:focus-visible{outline:3px solid var(--ai,#2563eb);outline-offset:2px}
.ct-select-trigger:disabled{opacity:.55;cursor:wait}
.ct-select-menu{position:fixed;z-index:20000;box-sizing:border-box;overflow:auto;padding:6px;background:var(--card,#fff);color:var(--ink,#172033);border:1px solid var(--stroke,#dbe2ed);border-radius:14px;box-shadow:0 14px 40px rgba(15,23,42,.18)}
.ct-select-menu .ct-select-option{display:block;width:100%;box-sizing:border-box;padding:12px 34px 12px 12px;border:0;border-radius:9px;background:transparent;color:inherit;text-align:left;white-space:normal;overflow-wrap:anywhere;font:inherit;font-size:14px;cursor:pointer;position:relative}
.ct-select-option:hover,.ct-select-option:focus{background:var(--field,#f1f5f9);outline:none}
.ct-select-option[aria-selected=true]{background:var(--ai-dim,#edf1ff);color:var(--ai,#315bff);font-weight:700}
.ct-select-option[aria-selected=true]:after{content:'✓';position:absolute;right:12px;top:12px}
.ct-select-option:disabled{opacity:.45;cursor:not-allowed}
.ct-select-search{box-sizing:border-box;width:100%;padding:10px 12px;border:1px solid var(--stroke,#dbe2ed);border-radius:9px;margin-bottom:6px;font:inherit;background:var(--card,#fff);color:inherit}
.ct-select-empty{padding:12px;color:var(--muted,#64748b);font-size:13px}

/* ── Меню v2: плоский список вместо карточек, светлый тонкий скролл, закреплённый поиск ── */
.ct-select-menu{padding:6px;border-radius:12px;box-shadow:0 12px 32px rgba(15,23,42,.14),0 0 0 1px rgba(15,23,42,.04);scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent;color-scheme:light}
.ct-select-menu::-webkit-scrollbar{width:10px}
.ct-select-menu::-webkit-scrollbar-track{background:transparent}
.ct-select-menu::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:8px;border:3px solid var(--card,#fff)}
.ct-select-menu::-webkit-scrollbar-thumb:hover{background:#94a3b8}
.ct-select-menu .ct-select-search{position:sticky;top:-6px;z-index:1;height:36px;margin:-6px -6px 6px;width:calc(100% + 12px);padding:0 14px;border:0!important;border-bottom:1px solid var(--stroke,#e2e8f0)!important;border-radius:12px 12px 0 0;background:var(--card,#fff);font-size:14px;box-shadow:none!important}
.ct-select-menu .ct-select-search:focus{outline:0}
.ct-select-menu .ct-select-option{display:flex;align-items:center;min-height:36px;padding:7px 34px 7px 12px;border:0!important;border-radius:8px;background:transparent!important;box-shadow:none!important;color:var(--ink,#172033);font-size:14px;font-weight:500;line-height:1.35}
.ct-select-menu .ct-select-option:hover,.ct-select-menu .ct-select-option:focus{background:rgba(15,23,42,.05)!important}
.ct-select-menu .ct-select-option[aria-selected=true]{background:var(--brand-dim,rgba(255,90,0,.08))!important;color:var(--brand-strong,#d44d00);font-weight:600}
.ct-select-menu .ct-select-option[aria-selected=true]:after{top:50%;right:12px;transform:translateY(-50%);font-size:13px}
.ct-select-menu .ct-select-empty{padding:14px 12px;text-align:center}
