/* =========================================================
   DEGAS - CAMADAS FLUTUANTES COM ZOOM GLOBAL
   Carregar por último, depois do {% block css %}.
   ========================================================= */

/*
 * Chosen não calcula coordenadas em JavaScript; ele deve permanecer
 * ancorado ao próprio .chosen-container. Os overrides antigos do projeto
 * usavam top: 0 ou top: 30px e faziam a lista abrir sobre o campo.
 */
.chosen-container {
    position: relative !important;
}

.chosen-container .chosen-drop,
div.div-products-list .chosen-drop,
.price-item-edit .chosen-container .chosen-drop,
#id_produto_category_chosen .chosen-drop,
#id_fornecedor_chosen .chosen-drop,
#product-sale .chosen-container .chosen-drop,
#prices .chosen-container .chosen-drop {
    top: 100% !important;
    left: 0 !important;
    right: auto !important;
    width: 100% !important;
    box-sizing: border-box;
}

/*
 * A busca do Chosen da edição de item estava absoluta, com 30rem,
 * enquanto os resultados recebiam margin-top: 3rem. Isso produz uma
 * segunda fonte de deslocamento independente do zoom.
 */
.price-item-edit .chosen-container-single .chosen-search {
    position: relative !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box;
}

.price-item-edit .chosen-container-single .chosen-search input[type="text"],
.price-item-edit .chosen-container .chosen-results {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box;
}

.price-item-edit .chosen-container .chosen-results {
    margin-top: 0 !important;
}

/*
 * Camadas criadas fora do fluxo normal precisam ficar acima dos modais.
 * A posição é corrigida em degas-zoom-positioning.js; aqui tratamos apenas
 * empilhamento e contenção visual.
 */
.select2-container--open,
body > .ui-autocomplete,
body > #ui-datepicker-div,
body > .ui-timepicker-wrapper,
body > .daterangepicker {
    z-index: 2060 !important;
}

.select2-container--open .select2-dropdown,
body > .ui-autocomplete {
    max-width: calc(100vw - 24px);
    box-sizing: border-box;
}