/*
 * Ajustes do campo de lookup (`wwwroot/js/alpha-lookup.js`).
 *
 * Sao tres correcoes ao skin `bootstrap5` que o `plugins.bundle.css` do Metronic ja traz —
 * o resto (cores, foco, dropdown, tema dark) vem pronto de la e nao se repete aqui.
 */

/*
 * 1. Campo vazio colapsava de altura.
 *
 * O CSS base do Select2 fixa `.select2-container .select2-selection--single { height: 28px }`
 * e o skin do Metronic troca por `height: auto`, contando com o **conteudo** para dar
 * altura — o padding de `.form-select` (`0.775rem`) sozinho nao chega la.
 *
 * Campo de FK sem placeholder tem o `rendered` vazio, entao o campo ficava com a metade da
 * altura do campo preenchido. E a maioria nao tem placeholder de proposito: o `.dfm` do
 * Delphi manda o combo abrir vazio, e inventar um texto ali seria mexer na tela (`NN6`).
 *
 * Uma linha de altura minima resolve sem escrever nada na tela. `1.5` e o `line-height` do
 * proprio `.form-select` do tema, entao a altura final fica identica a do campo preenchido
 * e a do botao da lupa (`.btn-icon`, `calc(1.5em + 1.55rem + 2px)`).
 */
.select2-container--bootstrap5 .select2-selection__rendered {
	min-height: 1.5em;
	line-height: 1.5;
}

/*
 * 2. A lupa caia para a linha de baixo.
 *
 * O proprio `plugins.bundle.js` faz `$.fn.select2.defaults.set('width', '100%')`, e o
 * Select2 escreve esse `width: 100%` **inline** no container. Dentro do `.input-group`,
 * que e `display: flex; flex-wrap: wrap`, isso consome a linha inteira e empurra o botao
 * para a proxima.
 *
 * `width: 1%` com `flex: 1 1 auto` e o padrao do proprio Bootstrap para campo dentro de
 * input-group: o `1%` so serve de base para o flex distribuir o espaco que sobra.
 */
.input-group > .select2-container {
	flex: 1 1 auto;
	width: 1% !important;
}

/*
 * 3. Cantos do lado da lupa.
 *
 * O Bootstrap tira o arredondamento do lado que encosta no vizinho com
 * `.input-group > :not(:last-child)`, mas o campo real e o `<select>` escondido — quem
 * encosta no botao e o `<span>` que o Select2 injeta, que aquela regra nao alcanca.
 */
.input-group > .select2-container:not(:last-child) .select2-selection {
	border-top-right-radius: 0;
	border-bottom-right-radius: 0;
}

/*
 * Mesmo caso do outro lado: o `Incl. Compr.` do cabecalho do orcamento fica **antes** do
 * campo (`uOrcamento01.dfm:1122`, `Left = 2`, contra `Left = 90` do rotulo `Comprador:`),
 * entao quem encosta no botao e a borda esquerda do `<span>` do Select2.
 *
 * O teste e no `<select>`, nao no `<span>`: o Select2 insere o `<span>` logo depois do
 * `<select>` escondido, entao o `<span>` nunca e `:first-child` — com
 * `.select2-container:not(:first-child)` todo lookup com lupa perdia o canto esquerdo
 * (24/09/2026). So ha vizinho visivel a esquerda quando o proprio `<select>` nao e o primeiro.
 */
.input-group > select:not(:first-child) + .select2-container .select2-selection {
	border-top-left-radius: 0;
	border-bottom-left-radius: 0;
}
