/*.select2-container {*/
/*    min-width: 20em;*/
/*}*/
:root {
  --primary: #428bca;
  --info: #5bc0de;
  --success: #28a745;
  --danger: #ff3547;
  --gray: #777777;
  --gray-lighter: #eeeeee;
  --box-shadow: 5px 5px 13px #626262;
  --sm-box-shadow: 0 6px 12px rgba(0,0,0,.175);
  --sm-inset-box-shadow: inset 1px 0px 5px 0px #010101;
}

ul li.select2-selection__choice,
ul li.select2-search {
  /* Cancel out django's style */
  list-style-type: none;
}

span.select2-dropdown.select2-dropdown--above {
  min-width: 200px;
}

.select2-selection__clear {
  font-size: 25px;
  color: var(--primary);
}

.select2-selection__rendered {
  padding-right: 3px !important;
}

.select2-selection__arrow {
  display: none;
}

.selection > .select2-selection:focus, .selection > .select2-selection:hover {
  border: 1px solid var(--primary) !important;
}

.select2 *:focus {
  outline: 0;
}

.select2-container--default .select2-selection--single {
  border: 1px solid #ccc;
  height: 29px !important;
}

.select2-dropdown {
  min-width: max-content !important;
  min-width: -moz-max-content !important;
}

.select2-container .select2-selection--single {
  user-select: text !important;
  -webkit-user-select: text !important;
}

/* phone and tablet */
@media (max-width: 768px) {
  .select2-dropdown {
    min-width: 100% !important;
  }

  body > .select2-container input[type=search] {
    font-size: 16px;
  }

  /* Búsqueda en pantalla completa en mobile — single Y multiple */
  body > .select2-container--open {
    left: 0 !important;
    right: 0 !important;
    top: 0 !important;
    bottom: 56px !important;   /* respeta el bottom nav */
    position: fixed !important;
    z-index: 1062 !important;
    width: 100vw !important;
    font-size: 16px;
  }

  /* El dropdown llena todo el container */
  body > .select2-container--open .select2-dropdown {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100% !important;
    min-width: 100% !important;
    height: 100% !important;
    border-radius: 0 !important;
    border: none !important;
    box-shadow: none !important;
    display: flex !important;
    flex-direction: column !important;
  }

  /* Cabecera con el nombre del campo (inyectada por JS) */
  body > .select2-container--open .select2-mobile-header {
    padding: 14px 16px;
    font-size: 17px;
    font-weight: 600;
    color: #333;
    background: #fff;
    border-bottom: 1px solid #ddd;
    flex-shrink: 0;
  }

  /* Input de búsqueda + botón de cierre en línea */
  body > .select2-container--open .select2-search--dropdown {
    padding: 12px !important;
    background: #f5f5f5 !important;
    border-bottom: 1px solid #ddd !important;
    flex-shrink: 0 !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
  }

  /* Botón de cierre (inyectado por JS) */
  body > .select2-container--open .select2-mobile-close {
    flex-shrink: 0;
    background: none;
    border: none;
    font-size: 22px;
    line-height: 1;
    padding: 8px 10px;
    color: #333;
    cursor: pointer;
    border-radius: 4px;
  }

  body > .select2-container--open .select2-mobile-close:active {
    background: #e0e0e0;
  }

  /* Fallback multi-select: botón como fila propia en la parte superior */
  body > .select2-container--open > .select2-dropdown > .select2-mobile-close {
    align-self: flex-start;
    padding: 14px 16px;
    border-bottom: 1px solid #ddd;
    background: #f5f5f5;
  }

  body > .select2-container--open .select2-search--dropdown .select2-search__field {
    font-size: 18px !important;
    padding: 12px 14px !important;
    border-radius: 4px !important;
    width: auto !important;
    flex: 1 !important;
    height: auto !important;
  }

  /* Resultados llenan el resto con scroll */
  body > .select2-container--open .select2-results {
    flex: 1 !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
  }

  body > .select2-container--open .select2-results__options {
    max-height: none !important;
  }

  body > .select2-container--open .select2-results__option {
    padding: 14px 16px !important;
    font-size: 16px !important;
    border-bottom: 1px solid #f0f0f0 !important;
    line-height: 1.4 !important;
  }
}

/*# sourceMappingURL=select2.css.map */
