/* =========================================================
   File: /Hotel/css/select2_pms.css
   Scopo: Select2 coerente con PMS e UNIFORME (usa le stesse variabili dei campi)
   Dipende da: forms_pms_compact.css (define --pms-ctl-*)
   ========================================================= */

/* fallback se forms_pms_compact.css non fosse caricato */
:root{
  --pms-ctl-minh: calc(1.5em + .5rem + 2px);
  --pms-ctl-pad-y: .25rem;
  --pms-ctl-pad-x: .5rem;
  --pms-ctl-font: .875rem;
}

.select2-container{ width:100% !important; }
.select2-container *{ box-sizing:border-box; }

/* ====== SINGLE ====== */
.select2-container--default .select2-selection--single,
.select2-container--bootstrap-5 .select2-selection--single{
  background-color:#f8f9fa !important;
  border:1px solid #ced4da !important;
  border-radius:var(--pms-radius-md, 12px) !important;
  overflow:hidden;

  min-height: var(--pms-ctl-minh) !important;
  padding: var(--pms-ctl-pad-y) var(--pms-ctl-pad-x) !important;

  font-size: var(--pms-ctl-font) !important;
  line-height: 1.5 !important;

  display:flex !important;
  align-items:center !important;
}

.select2-container--default .select2-selection--single .select2-selection__rendered,
.select2-container--bootstrap-5 .select2-selection--single .select2-selection__rendered{
  color:#212529 !important;
  padding:0 !important;
  line-height:1.5 !important;
  flex:1 1 auto !important;
  margin-right:2.25rem;
}

.select2-container--default .select2-selection--single .select2-selection__arrow,
.select2-container--bootstrap-5 .select2-selection--single .select2-selection__arrow{
  height:100% !important;
  top:0 !important;
  right:.5rem !important;
}

.select2-container--default .select2-selection--single .select2-selection__clear,
.select2-container--bootstrap-5 .select2-selection--single .select2-selection__clear{
  position:absolute !important;
  right:1.75rem !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  margin:0 !important;
  padding:0 .25rem !important;
  line-height:1 !important;
}

.select2-container--default .select2-selection--single .select2-selection__placeholder,
.select2-container--bootstrap-5 .select2-selection--single .select2-selection__placeholder{
  color:#6c757d !important;
}

/* ====== MULTIPLE ====== */
.select2-container--default .select2-selection--multiple,
.select2-container--bootstrap-5 .select2-selection--multiple{
  background-color:#f8f9fa !important;
  border:1px solid #ced4da !important;
  border-radius:var(--pms-radius-md, 12px) !important;
  overflow:hidden;

  min-height: var(--pms-ctl-minh) !important;
  padding: .15rem .4rem !important;

  font-size: var(--pms-ctl-font) !important;
  line-height: 1.5 !important;
}

.select2-container--default .select2-selection--multiple .select2-selection__rendered,
.select2-container--bootstrap-5 .select2-selection--multiple .select2-selection__rendered{
  padding:0 !important;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice,
.select2-container--bootstrap-5 .select2-selection--multiple .select2-selection__choice{
  border:1px solid #ced4da !important;
  background:#fff !important;
  border-radius:999px !important;
  padding:.1rem .5rem !important;
  margin:.15rem .25rem 0 0 !important;
  font-size: var(--pms-ctl-font) !important;
}

/* focus/open */
.select2-container--default.select2-container--focus .select2-selection,
.select2-container--default.select2-container--open  .select2-selection,
.select2-container--bootstrap-5.select2-container--focus .select2-selection,
.select2-container--bootstrap-5.select2-container--open  .select2-selection{
  border-color:#86b7fe !important;
  box-shadow:0 0 0 .25rem rgba(13,110,253,.25) !important;
}

.select2-container--disabled .select2-selection{
  background-color:#e9ecef !important;
  cursor:not-allowed !important;
}

/* dropdown */
.select2-dropdown{
  border:1px solid #ced4da !important;
  border-radius:var(--pms-radius-md, 12px) !important;
  overflow:hidden;
  z-index: 2000;
}

.select2-search--dropdown .select2-search__field{
  background:#fff !important;
  border:1px solid #ced4da !important;
  border-radius:var(--pms-radius-md, 12px) !important;

  padding: var(--pms-ctl-pad-y) var(--pms-ctl-pad-x) !important;
  min-height: var(--pms-ctl-minh) !important;

  font-size: var(--pms-ctl-font) !important;
  line-height: 1.5 !important;

  outline:none;
}

.select2-results__option{
  padding:.45rem .75rem !important;
  font-size: var(--pms-ctl-font) !important;
}

/* Opt-in: Select2 grande
   Usa: class="select2-lg" sul <select>
*/
select.select2-lg + .select2-container--default .select2-selection--single,
select.select2-lg + .select2-container--bootstrap-5 .select2-selection--single{
  min-height: calc(1.5em + 1rem + 2px) !important;
  padding: .5rem 1rem !important;
  font-size: 1rem !important;
}
