/* --- Main Container & Trigger --- */
.mvr-select-container {
    position: relative;
    font-family: sans-serif;
    width: 100%;
}

.mvr-select-trigger {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.75rem 1rem;
    background-color: #ffffff;
    border: 1px solid #ced4da;
    border-radius: 0.375rem;
    cursor: pointer;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    user-select: none;
}

.mvr-select-trigger:focus,
.mvr-select-container.open .mvr-select-trigger {
    border-color: #86b7fe;
    outline: 0;
    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}

.mvr-select-value {
    color: #212529;
}

.mvr-select-value.placeholder {
    color: #6c757d;
}

.mvr-select-arrow {
    border: solid #212529;
    border-width: 0 2px 2px 0;
    display: inline-block;
    padding: 3px;
    transform: rotate(45deg);
    transition: transform 0.2s ease;
}

.mvr-select-container.open .mvr-select-arrow {
    transform: rotate(-135deg);
}

/* --- Dropdown Panel, Search, and Options --- */
.mvr-select-dropdown {
    display: none; /* Hidden by default */
    position: absolute;
    top: calc(100% + 0.5rem);
    left: 0;
    width: 100%;
    background-color: #fff;
    border: 1px solid #ced4da;
    border-radius: 0.375rem;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
    z-index: 1000;
}

.mvr-select-container.open .mvr-select-dropdown {
    display: block; /* Show when open */
}

.mvr-select-search {
    width: 100%;
    padding: 0.75rem 1rem;
    border: none;
    border-bottom: 1px solid #ced4da;
    outline: none;
    font-size: 1rem;
    box-sizing: border-box; /* Important for padding */
}

.mvr-select-options {
    list-style: none;
    margin: 0;
    padding: 0;
    max-height: 200px;
    overflow-y: auto;
}

.mvr-select-options li {
    padding: 0.75rem 1rem;
    cursor: pointer;
    transition: background-color 0.15s ease;
}

.mvr-select-options li.hidden {
    display: none;
}

.mvr-select-options li:hover,
.mvr-select-options li.focused {
    background-color: #e9ecef;
}

.mvr-select-options li.selected {
    background-color: #0d6efd;
    color: #fff;
}

/* Style for the special "Add new..." list item */
.mvr-select-add-new {
    font-style: italic;
    color: #0d6efd; /* Bootstrap primary color */
    background-color: #f8f9fa;
    border-top: 1px solid #dee2e6;
}