  .bs-select {
    width: 100%;
  }

  .bs-select .bs-select-btn {
    width: 100%;
    text-align: left;
    cursor: pointer;
    text-wrap: nowrap;
    overflow-x: hidden;
  }

  /* menu na szerokość selecta */
  .bs-select .dropdown-menu {
    z-index: var(--bs-dropdown-zindex);
    min-width: var(--bs-dropdown-min-width);
    padding: var(--bs-dropdown-padding-y) var(--bs-dropdown-padding-x);
    margin: 0;
    font-size: var(--bs-dropdown-font-size);
    color: var(--bs-dropdown-color);
    text-align: left;
    list-style: none;
    background-color: var(--bs-dropdown-bg);
    background-clip: padding-box;
    border: var(--bs-dropdown-border-width) solid var(--bs-dropdown-border-color);
    border-radius: var(--bs-dropdown-border-radius);
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
    width: 100%;
    overflow-x: hidden;
  }

  .bs-select .dropdown-item {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .bs-select .dropdown-item.is-active {}

  /* ukryj prawdziwy select, ale zostaw w DOM (submit + JS listeners dalej działają) */
  .bs-select select.form-select {
    position: absolute !important;
    left: -9999px !important;
    width: 1px !important;
    height: 1px !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }