/* Openlayers */
:root {
    --border-soft: #E2E4E9;
    --border-gray: #949599;
    --primary-base: #0765E3;
    --bg-soft: #E2E4E9;
    --text-main: #0A0D14;
    --scrollbar-thumb: #C1C1C1;
}

.map-container {
    max-width: 100%;
    height: 75vh;
    position: relative;
}

.modal .map-container {
    height: 75vh;
}

.map-container {
    position: relative;
}

.map-container .map {
    height: 100%;
    width: 100%;
}

.map {
    width: 100%;
    min-height: 400px;
}

.ol-popup {
    position: absolute;
    background-color: white;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);
    padding: 20px;
    border-radius: 10px;
    border: 1px solid #cccccc;
    bottom: 12px;
    left: -50px;
    min-width: 280px;
    width: 400px;
}

.map-container.map-has-fullscreen .ol-popup {
    z-index: 1;
}

.ol-popup:after,
.ol-popup:before {
    top: 100%;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
}

.ol-popup:after {
    border-top-color: white;
    border-width: 10px;
    left: 48px;
    margin-left: -10px;
}

.ol-popup:before {
    border-top-color: #cccccc;
    border-width: 11px;
    left: 48px;
    margin-left: -11px;
}

.ol-popup-closer,
.ol-popup-closer:hover {
    text-decoration: none;
    position: absolute;
    top: 8px;
    right: 8px;
    color: #6e6e6e;
}

/* .ol-popup-closer:after {
    content: "✖";
} */

.ol-popup .popup-content {
    max-height: 300px;
    overflow: auto;
}

.map-container > #popup {
    display: none;
}

.map .ol-geocoder.gcd-txt-container,
.map-container .search-container {
    top: 15px;
    left: auto;
    right: 15px;
}

.map .ol-geocoder .gcd-txt-control,
.map .ol-geocoder.gcd-txt-container {
    height: auto;
}

.map .ol-geocoder ul.gcd-txt-result {
    top: 42px;
}

.map .ol-geocoder .gcd-txt-label {
    display: none;
}

.map .ol-geocoder .gcd-txt-input {
    position: static;
}

.map .ol-geocoder .gcd-txt-glass {
    top: 0;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.map-container .search-container {
    position: absolute;
    z-index: 2;
    width: 240px;
}

.map-container .search-container .search-form {
    position: relative;
}

.map-container .search-container .search-form input {
    padding-right: 64px;
    font-size: 14px;
    line-height: 20px;
    height: auto !important;
    border: 1px solid #CDD2D8;
    box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.12);
    border-radius: 4px;
}

.map-container .search-container .search-form input::placeholder {
    font-family: 'Roboto';
    font-size: 14px;
    line-height: 20px;
    letter-spacing: 0.5px;
}

.map-container .search-container .search-form input::-webkit-input-placeholder {
    font-family: 'Roboto';
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
    color: #99A0B1;
}

.map-container .search-container .search-form .search-group-btn {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    z-index: 1;
}

.map-container .search-container .search-form .search-group-btn button {
    font-size: 16px;
    color: var(--text-title);
    background-color: transparent;
    border: 0;
    width: 32px;
    height: 32px;
    padding: 0;
    position: static;
    box-shadow: none;
}

.map-container .search-container .search-form .search-group-btn button .ol-icon,
.map-container .search-container .search-form .search-group-btn button .ol-icon::before {
    width: 32px;
    height: 32px;
}

.map-container .search-container .search-form .search-group-btn button .ol-icon::before,
.ol-popup__icon.ol-icon::before  {
    background-size: 20px auto;
}

.map-container .search-result {
    display: none;
    position: absolute;
    top: calc(100% + 2px);
    max-height: 300px;
    overflow: auto;
    background-color: var(--white);
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
}

.map-container .search-result.show {
    display: block;
}

.map-container .search-result .search-result-item {
    padding: 12px 16px;
    cursor: pointer;
    border-bottom: 1px solid #E6EBF1;
    cursor: pointer;
    font-size: 14px;
}

.map-container .search-result .search-result-item p {
    margin-bottom: 0;
}

.ol-control-container .ol-control {
    position: static;
    background-color: transparent;
}

.map-container .ol-control-container {
    position: absolute;
    top: 146px;
    right: 15px;
}

.map-container .map + .ol-control-container,
.map-container.map-has-fullscreen .map .ol-control-container {
    top: 15px;
}

.map-container .search-container + .ol-control-container,
.map-container.map-has-fullscreen .map .search-container + .ol-control-container {
    top: 68px;
}

.map-container.map-has-fullscreen .ol-control-container {
    z-index: 1;
}

.map-container .ol-control-container .ol-control {
    margin-bottom: 10px;
}

.map-container .ol-full-screen {
    top: 91px;
    left: 15px;
    right: auto;
}

.map-container .ol-zoom {
    top: 70px;
    right: 15px;
    left: auto;
    border: 1px solid #CDD2D8;
}

.content-wrapper .map-container .ol-zoom,
.map-container .ol-zoom {
    top: 15px;
    left: 15px;
    right: auto;
}

.content-wrapper .ol-control-container {
    top: 15px;
}

.content-wrapper .search-container ~ .ol-control-container {
    top: 63px;
}

.map-container .ol-zoom .ol-zoom-in {
    border-bottom: 1px solid #CDD2D8;
}

.map-container .ol-zoom .ol-zoom-in,
.map-container .ol-zoom .ol-zoom-out {
    font-size: 24px;
    font-weight: 500;
    color: #16161D;
}

.map-container .ol-zoom .ol-zoom-in,
.map-container .ol-zoom .ol-zoom-in:hover,
.map-container .ol-zoom .ol-zoom-out,
.map-container .ol-zoom .ol-zoom-out:hover {
    outline: 0;
}

.map-container .ol-control {
    border-radius: 4px;
    border: 1px solid #CDD2D8;
    box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.12);
    overflow: hidden;
}

.map-container .ol-control button {
    border: 0;
    width: 32px;
    height: 32px;
    margin: 0;
}

.ol-icon {
    width: 24px;
    height: 24px;
    display: inline-block;
}

.ol-icon::before {
    content: "";
    width: 24px;
    height: 24px;
    display: block;
    background-size: 24px auto;
    background-repeat: no-repeat;
    background-position: center center;
}

.ol-icon-locate::before {
    background-image: url('../images/icon_locate.svg');
}

.ol-icon-search::before {
    background-image: url('../images/icon_search.svg');
}

.ol-icon-layer::before {
    background-image: url('../images/icon_layer.svg');
}

.ol-icon-eraser::before {
    background-image: url('../images/icon_eraser.svg');
}

.ol-icon-delete::before {
    background-image: url('../images/icon_delete.svg');
}

.ol-icon-dismiss::before {
    background-image: url('../images/icon_dismiss.svg');
}

.ol-icon-maps::before {
    background-image: url('../images/icon_maps.svg');
}

.ol-icon-arrow-left::before {
    background-image: url('../images/icon_arrow_left.svg');
}

.ol-icon-chevron-left::before {
    background-image: url('../images/icon_chevron_left.svg');
}

.ol-icon-chevron-right::before {
    background-image: url('../images/icon_chevron_right.svg');
}

.ol-icon-directions::before {
    background-image: url('../images/icon_directions.svg');
}

.ol-icon-layer-white::before {
    background-image: url('../images/icon_stack.png');
}

.ol-icon-fullscreen::before {
    background-image: url('../images/icon_fullscreen.svg');
} 

.ol-icon-fullscreen-exit::before {
    background-image: url('../images/icon_fullscreen_exit.svg');
}

.ol-popup .ol-popup-title {
    font-family: 'Roboto Bold';
    font-size: 20px;
    font-weight: normal;
    line-height: 27px;
    color: var(--primary-base);
    margin-bottom: 16px;
}

.ol-popup .ol-popup-widget .ol-popup-content {
    padding: 0;
    max-height: 160px;
    overflow: auto;
}

@-moz-document url-prefix() {
    .ol-popup .ol-popup-widget .ol-popup-content {
        scrollbar-color: var(--scrollbar-thumb) var(--white);
        scrollbar-width: thin;
    }
}

.ol-popup .ol-popup-widget .ol-popup-content::-webkit-scrollbar {
    width: 8px;
    border-radius: 999px;
    -webkit-border-radius: 999px;
}

.ol-popup .ol-popup-widget .ol-popup-content::-webkit-scrollbar-track {
    background: var(--white);
    border-radius: 999px;
    -webkit-border-radius: 999px;
}

.ol-popup .ol-popup-widget .ol-popup-content::-webkit-scrollbar-thumb {
    background-color: var(--scrollbar-thumb);
    border-radius: 999px;
    -webkit-border-radius: 999px;
}

.ol-popup .ol-popup-widget .ol-popup-content .ol-popup-info:not(.active) {
    display: none;
}

.ol-popup .ol-popup-widget .ol-popup-widget-nav {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    margin-top: 16px;
}

.ol-popup .ol-popup-widget .ol-popup-widget-nav button,
.ol-popup .ol-popup-widget .ol-popup-widget-nav button:hover,
.ol-popup .ol-popup-widget .ol-popup-widget-nav button:focus {
    border: none;
    background: none;
    padding: 0;
    margin: 0;
    cursor: pointer;
}

.ol-popup .ol-popup-widget .ol-popup-widget-nav button[disabled],
.ol-popup .ol-popup-widget .ol-popup-widget-nav button[disabled]:hover,
.ol-popup .ol-popup-widget .ol-popup-widget-nav button[disabled]:focus {
    cursor: default;
    opacity: 0.5;
}

.ol-popup .ol-popup-widget .ol-popup-widget-nav .ol-icon {
    vertical-align: top;
    width: 20px;
}

.ol-popup .ol-popup-widget .ol-popup-widget-nav .ol-icon::before {
    width: 20px;
    background-size: 20px 24px;
    background-position: center center;
}

#popupDirection .ol-popup-widget .ol-popup-content {
    /* max-height: 300px; */
    max-height: calc(100% - 43px);
}

.ol-widget__table {
    color: #323232;
    border: none;
    border-collapse: collapse;
    line-height: 1.3em;
    width: 100%;
}

.ol-popup .ol-popup-widget .ol-popup-content .ol-popup-info p {
    margin-bottom: 0.5rem;
    padding-bottom: 0;
}

.ol-popup .ol-popup-widget .ol-popup-content .ol-popup-info p:last-of-type {
    margin-bottom: 0;
}

table.ol-widget__table tr th {
    border-right: 1px solid var(--primary-base);
}

.ol-widget__table tr th, .ol-widget__table tr td {
    border: 1px solid var(--primary-base);
    background: var(--white);
    font-family: 'Roboto';
    font-size: 16px !important;
    font-weight: normal;
    line-height: 27px;
    color: var(--text-title);
    padding: .5em .7em;
    word-break: break-word;
    vertical-align: top;
    font-weight: 400;
}

.ol-popup .ol-popup-action {
    margin-top: 20px;
}

.ol-popup .btn.btn-primary {
    border: 1px solid var(--primary-base);
    background: var(--primary-base);
    margin: 0 6px 0 0;
    /* border-radius: 4px !important; */
    padding: 6px 8px !important;
    font-family: 'Roboto';
    font-size: 14px !important;
    font-weight: normal;
    line-height: 20px !important;
    color: var(--white);
    min-width: unset;
    height: auto;
    min-height: auto !important;
}

.ol-popup .btn.btn-primary:hover,
.ol-popup .btn.btn-primary:focus {
    background-color: var(--primary-base) !important;
    border-color: var(--primary-base) !important;
    color: var(--white) !important;
}

#popupDirection {
    top: 0;
    right: 0;
    left: auto;
    bottom: 0;
    max-width: 300px;
    z-index: 2;
    border-width: 0 0 0 1px;
    border-radius: 0;
    right: -100%;
    transition: right 0.5s ease-in-out;
    /* box-shadow: 0 0 1px rgba(0, 0, 0, 0.125), 0 1px 3px rgba(0, 0, 0, 0.2); */
}

#popupDirection.show {
    right: 0;
}

#popupDirection::before,
#popupDirection::after {
    content: none;
}

#popup-direction-content,
#popup-direction-content .ol-popup-widget {
    height: 100%;
}

.ol-tooltip {
    position: relative;
    background: rgba(0, 0, 0, 0.5);
    border-radius: 4px;
    color: white;
    padding: 4px 8px;
    opacity: 0.7;
    white-space: nowrap;
    font-size: 12px;
    cursor: default;
    user-select: none;
}

.ol-tooltip-measure {
    opacity: 1;
    font-weight: bold;
}

.ol-tooltip-static {
    background-color: #ffcc33;
    color: black;
    border: 1px solid white;
}

.ol-tooltip-measure:before,
.ol-tooltip-static:before {
    border-top: 6px solid rgba(0, 0, 0, 0.5);
    border-right: 6px solid transparent;
    border-left: 6px solid transparent;
    content: "";
    position: absolute;
    bottom: -6px;
    margin-left: -7px;
    left: 50%;
}

.ol-tooltip-static:before {
    border-top-color: #ffcc33;
}

.map-sidebar {
    position: absolute;
    top: 0;
    left: -100%;
    bottom: 0;
    margin-bottom: 0;
    width: 360px;
    max-width: 100%;
    border: 0;
    border-radius: 0;
    z-index: 10;
    transition: left 0.5s ease-in-out;
    box-shadow: 0 0 1px rgba(0, 0, 0, 0.125), 0 1px 3px rgba(0, 0, 0, 0.2);
}

.map-sidebar.filter-sidebar {
    width: 500px;
}

.map-sidebar.show {
    left: 0;
}

.map-sidebar .card-body:not(.filter-fixed) {
    overflow-y: auto;
}

.map-sidebar .card-body.filter-fixed {
    display: flex;
    flex-direction: column;
    height: calc(100% - 50px);
}

.map-sidebar .card-body.filter-fixed .filter-results {
    flex: 1 1 auto;
    overflow-y: auto;
}

@-moz-document url-prefix() {
    .map-sidebar .card-body,
    .map-sidebar .card-body.filter-fixed .filter-results {
        scrollbar-color: var(--scrollbar-thumb) var(--white);
        scrollbar-width: thin;
    }
}

.map-sidebar .card-body::-webkit-scrollbar,
.map-sidebar .card-body.filter-fixed .filter-results::-webkit-scrollbar {
    width: 8px;
    border-radius: 999px;
    -webkit-border-radius: 999px;
}

.map-sidebar .card-body::-webkit-scrollbar-track,
.map-sidebar .card-body.filter-fixed .filter-results::-webkit-scrollbar-track {
    background: var(--white);
    border-radius: 999px;
    -webkit-border-radius: 999px;
}

.map-sidebar .card-body::-webkit-scrollbar-thumb,
.map-sidebar .card-body.filter-fixed .filter-results::-webkit-scrollbar-thumb {
    background-color: var(--scrollbar-thumb);
    border-radius: 999px;
    -webkit-border-radius: 999px;
}

.map-sidebar .form-search-icon button {
    position: absolute;
    top: 0;
    right: 0;
    border: none;
    background: none;
    padding: 8px;
    margin: 0;
    cursor: pointer;
}

.map-sidebar .card-body .card-item:not(:last-child) {
    margin-bottom: 1rem;
}

.map-sidebar .card-header h5,
.map-sidebar .card-item__title {
  font-size: 16px;
  line-height: 24px;
  font-weight: 600;
  cursor: pointer;
  display: flex;
}

.map-sidebar .card-header h5 .ol-icon,
.map-sidebar .card-item__title .ol-icon {
    margin-right: 8px;
    flex: none;
}

/* .map-sidebar .card-item__title {
    font-size: 14px;
    line-height: 20px;
    display: flex;
    gap: 8px;
} */

/* .map-sidebar .form-check {
  display: block;
  min-height: 1.5rem;
  padding-left: 1.5em;
  margin-bottom: .125rem;
}

.map-sidebar .form-check .form-check-input {
  left: 0;
  transform: none;
  display: unset;
  height: auto;
  width: auto;
  width: 1em;
  height: 1em;
  margin-top: .25em;
  vertical-align: top;
  background-color: #fff;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  border: 1px solid rgba(0,0,0,.25);
}

.map-sidebar .form-check .form-check-input::before {
    content: none;
}

.map-sidebar .form-check-input[type="checkbox"] {
  border-radius: .25em !important;
}

.map-sidebar .form-check .form-check-label {
    padding-left: 0;
}

.map-sidebar .form-check-input:checked[type="checkbox"] {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3l6-6'/%3e%3c/svg%3e");
}

.map-sidebar .form-check-input:checked {
  background-color: #0d6efd;
  border-color: #0d6efd;
} */

.map-sidebar .card-item__content .form-check:not(:last-of-type) {
    margin-bottom: 8px;
}

.map-sidebar .form-check {
    position: relative;
    padding-left: 28px;
}

.map-sidebar input[type="number"] {
    -moz-appearance: textfield;
}

.map-sidebar input[type="number"]::-webkit-inner-spin-button,
.map-sidebar input[type="number"]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.map-sidebar .group-button-action {
    flex-direction: row !important;
    justify-content: flex-end;
}

/* .filter-results {
    position: sticky;
    top: 0;
} */

.filter-results .filter-title {
    font-size: 20px;
    line-height: 28px;
    font-weight: 600;
    margin-bottom: 16px;
    color: var(--primary-base);
}

.filter-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.filter-list .filter-item:not(:last-of-type) {
    margin-bottom: 1rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid #E6EBF1;
}

.filter-list .filter-item .filter-item__title {
    font-size: 16px;
    line-height: 24px;
    font-weight: 600;
    margin-bottom: 8px;
    /* color: var(--primary-base); */
}

.filter-list .filter-item .filter-item__info {
    margin-bottom: 8px;
}

.filter-list .filter-item .filter-item__info:last-of-type {
    margin-bottom: 0;
}

.map-container .filter-more .btn {
    color: var(--primary-base) !important;
    padding: 0 !important;
    border: 0;
    background: none;
    text-decoration: underline;
    height: auto;
    line-height: 24px !important;
    min-height: unset !important;
}

.map-container .loading-inner {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    border: 2px solid var(--border-gray);
    border-top-color: var(--white);
    vertical-align: top;
}

.basemap-widget {
    position: absolute;
    bottom: 15px;
    left: 15px;
    z-index: 10;
    display: flex;
    align-items: flex-end;
    gap: 15px;
    transition: all 0.5s ease-in-out;
}

.basemap-widget.layer-show {
    left: 375px;
}

.basemap-widget.filter-show {
    left: 515px;
}

.basemap-control {
    width: 90px;
    height: 90px;
    background: url("../images/base_maps.png") no-repeat center / cover;
    border: 2px solid #fff;
    border-radius: 4px;
    box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.12);
    overflow: hidden;
    padding: 6px;
    cursor: pointer;
}

.basemap-control .basemap-toggle {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    width: 100%;
    height: 100%;
}

.basemap-control .basemap-toggle-text {
    font-size: 14px;
    line-height: 20px;
    font-weight: 500;
    color: #fff;
    display: block;
}

.basemap-list {
    position: absolute;
    bottom: 0;
    left: 105px;
    /* z-index: 10; */
    background-color: #fff;
    border-radius: 4px;
    box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.12);
    width: 260px;
    padding: 6px 0;
    opacity: 0;
    /* display: none; */
    visibility: hidden;
    transition: all 0.3s ease-in-out;
}

.basemap-list.show {
    opacity: 1;
    visibility: visible;
    /* display: block; */
}

.basemap-list .basemap-item {
    display: flex;
    align-items: center;
    padding: 6px 12px;
    cursor: pointer;
    transition: all 0.3s ease-in-out;
    position: relative;
    border-left: 2px solid transparent;
}

.basemap-list .basemap-item:hover {
    background-color: rgba(0, 0, 0, 0.02);
}

.basemap-list .basemap-item.active,
.basemap-list .basemap-item.active:hover {
    background-color: #F5F7FA;
    border-color: var(--primary-base);
}

.basemap-list .basemap-item img {
    width: 64px;
    height: 64px;
    object-fit: cover;
    border: 1px solid #E6EBF1;
    border-radius: 4px;
    margin-right: 8px;
    flex: none;
}

.basemap-list .basemap-item .basemap-item-text {
    font-size: 14px;
    line-height: 20px;
}

.detail-container {
    background-color: #fff;
    padding: 24px;
    border-radius: 8px;
    border: 1px solid #CDE0F9;
    position: relative;
}

.detail-container .title-detail {
    font-family: "Roboto Bold";
    font-size: 20px;
    line-height: 28px;
    font-weight: 700;
    color: var(--primary-base);
    margin-bottom: 16px;
}

.detail-container .detail-content p {
    padding-bottom: 0;
}

.map-container,
.detail-container .map-container {
    border: 1px solid rgba(0, 0, 0, 0.125);
    border-radius: 8px;
    overflow: hidden;
}

.map-container .card-header {
    background-color: transparent;
    border-bottom: 1px solid rgba(0, 0, 0, 0.125);
    padding: 0.75rem 1.25rem;
    position: relative;
    border-radius: calc(.25rem - 1px) calc(.25rem - 1px) 0 0;
}

.map-container .btn, .group-button-action .btn {
    border-radius: 8px !important;
    padding: 8px 16px !important;
    font-family: 'Roboto Medium', sans-serif;
    font-style: normal;
    font-weight: 500 !important;
    font-size: 14px !important;
    line-height: 18px !important;
    color: #FFFFFF;
    font-weight: 500 !important;
    min-width: 125px;
    outline: none !important;
    box-shadow: none !important;
    text-shadow: none !important;
    margin-bottom: 0;
    height: 36px;
    letter-spacing: 0.1px !important;
    min-height: 36px !important;
}

.map-container .btn-outline-primary {
    border: 1px solid var(--border-soft) !important;
    color: #101828 !important;
}

.map-container .btn-outline-primary:hover, 
.map-container.btn-light:hover {
    background: #D0D5DD !important;
    color: #101828 !important;
}

.map-container .btn-primary {
    background: var(--primary-base) !important;
    border: 1px solid var(--primary-base) !important;
    color: #fff !important;
}

.map-container [type="checkbox"]::before {
    content: "";
    width: 24px;
    height: 24px;
    display: block;
    background: transparent url("../images/checkmark-uncheck.svg") no-repeat;
    transition: all 0.2s ease-in-out;
}

.map-container [type="checkbox"]:checked::before {
    content: "";
    width: 24px;
    height: 24px;
    display: block;
    background: transparent url("../images/checkmark-check.svg") no-repeat;
}

.map-container [type="checkbox"]:indeterminate::before {
    content: "";
    width: 24px;
    height: 24px;
    display: block;
    background: transparent url("../images/checkmark-indeterminate.svg") no-repeat;
}

.map-container .form-check-input:checked,
.map-container .form-check-input:indeterminate {
    background-color: transparent;
}

.map-container .form-check-input:focus {
    outline: 0;
    box-shadow: none;
}

.map-container .form-check [type="checkbox"] {
  transform: translateY(1px);
  position: absolute;
  float: none;
  margin-left: 0;
}

.map-container .form-check .form-check-label {
  padding-left: 32px;
}

/****************************************************************************************************************/
/***********************************************************************CMS - SELECT2 - VER 4.X*************************************************************************/
/****************************************************************************************************************/
.map-container .select2-container .select2-selection {
    margin-top: -9px !important;
    min-height: 40px !important;
    padding: 8px 16px !important;
    border: none;
    background-color: transparent;
    height: 100%;
}

.map-container .select2-container--default .select2-selection--single {
    border: 0 !important;
    border-radius: 0 !important;
    margin: 0;
    height: auto !important;
}

.map-container .select2-container .select2-selection .select2-selection__rendered {
    margin-top: 0;
    font-family: Roboto, sans-serif;
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 1.5 !important;
    letter-spacing: 0.5px;
    color: var(--text-main) !important;
    display: block;
    margin-left: 0;
    padding-left: 0;
    padding-right: 20px;
    height: auto;
}

.map-container .select2-container--default .select2-selection--single .select2-selection__arrow {
    top: 0 !important;
}

.map-container .select2-container--default .select2-selection--single .select2-selection__arrow b {
    border: none;
    background-image: url('data:image/svg+xml,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M4.22007 8.47C4.52007 8.17 4.99007 8.17 5.28007 8.47L12.0001 15.19L18.7201 8.47C18.7887 8.39631 18.8715 8.33721 18.9635 8.29622C19.0555 8.25523 19.1548 8.23319 19.2556 8.23141C19.3563 8.22963 19.4563 8.24816 19.5497 8.28588C19.6431 8.3236 19.7279 8.37974 19.7991 8.45096C19.8703 8.52218 19.9265 8.60702 19.9642 8.7004C20.0019 8.79379 20.0204 8.89382 20.0187 8.99452C20.0169 9.09523 19.9948 9.19454 19.9539 9.28654C19.9129 9.37854 19.8538 9.46134 19.7801 9.53L12.5301 16.78C12.2301 17.08 11.7601 17.08 11.4701 16.78L4.22007 9.53C4.07962 9.38938 4.00073 9.19875 4.00073 9C4.00073 8.80125 4.07962 8.61063 4.22007 8.47Z" fill="%230A0D14"/></svg>');
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    width: 24px;
    height: 24px;
    position: absolute;
    left: -4px;
    top: 8px;
    background-color: #fff;
    margin-top: 0;
    transition: all 0.3s ease-in-out;
}

.map-container .select2-container--default.select2-container--disabled .select2-selection--single .select2-selection__arrow b {
    background-color: transparent;
}

.map-container .select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b {
    transform: rotate(180deg);
}

.select2-container--bootstrap4 .select2-dropdown {
    border-color: #D0D5DD;
    border-radius: 0 0 8px 8px;
}

.select2-dropdown {
    margin-top: 0;
    border: 1px solid #D0D5DD;
    padding: 8px 0 0;
}

.select2-dropdown .select2-search input {
    background: #FFFFFF;
    padding: 4px 12px;
    border-radius: 8px;
    border: 1px solid #E2E4E9;
    margin-bottom: 8px;
    margin-top: 4px;
    box-shadow: none;
    /* Body/Large */
    /* font-family: 'Inter'; */
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 24px;
    /* identical to box height, or 150% */
    letter-spacing: 0.5px;
    /* Content/text-main */
    color: var(--text-main);
    height: 40px;
}

.select2-dropdown .select2-results .select2-results__options::-webkit-scrollbar {
    width: 4px;
}

.select2-dropdown .select2-results .select2-results__options::-webkit-scrollbar-track {
    background: transparent;
    border-radius: 12px;
}

.select2-dropdown .select2-results .select2-results__options::-webkit-scrollbar-thumb {
    background: #c1c1c1;
    border-radius: 12px;
}

.select2-dropdown .select2-results .select2-results__options::-webkit-scrollbar-thumb:hover {
    background: #979595;
    border-radius: 12px;
}

.select2-dropdown .select2-results .select2-results__options li {
    /* Body/Large */
    font-family: Roboto, sans-serif;
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 1.5;
    /* identical to box height, or 150% */
    letter-spacing: 0.5px;
    /* Content/text-main */
    color: var(--text-main);
    padding: 8px;
}

.select2-dropdown .select2-results .select2-results__options li:hover,
.select2-dropdown .select2-results .select2-results__options .select2-results__option--highlighted {
    background: var(--primary-base);
    color: var(--text-white);
}

.select2-container .select2-search .select2-search__field {
    margin: 0;
    /* font-family: 'Inter'; */
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 1.5;
    /* identical to box height, or 150% */
    letter-spacing: 0.5px;
    box-shadow: none;
    /* Content/text-main */
    color: var(--text-main);
    border-radius: 8px;
}

.select2-container .select2-selection--multiple .select2-search__field {
    width: auto !important;
    height: 24px;
}

.select2-container--default .select2-dropdown .select2-search__field:focus, .select2-container--default .select2-search--inline .select2-search__field:focus {
  outline: none;
  border: 1px solid #80bdff !important;
}

.select2-container--default.select2-container--focus .select2-selection--multiple {
    border: none;
    outline: 0;
}

.select2-container .select2-selection .select2-selection__choice {
    margin: 0;
    border: none;
    background: var(--bg-soft);
    border-radius: 8px;
    display: flex;
    align-items: center;
    margin-right: 0;
    /* Label/Large */
    font-family: 'Inter';
    font-style: normal;
    font-weight: 500;
    font-size: 14px;
    line-height: 1.43;
    /* identical to box height, or 143% */
    letter-spacing: 0.1px;
    /* Content/text-main */
    color: var(--text-main);
    padding: 2px 8px 2px 0;
    margin-bottom: 0;
}

.select2-container .select2-selection .select2-selection__choice__remove {
    font-size: 0;
    top: 50%;
    transform: translateY(-50%);
}

.select2-container .select2-selection .select2-selection__choice__remove::before {
    content: "";
    width: 16px;
    height: 16px;
    display: block;
    flex-shrink: 0;
    background-image: url('data:image/svg+xml,<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M2.93331 3.03333L2.97997 2.98C3.06504 2.89492 3.17793 2.84336 3.29794 2.83479C3.41794 2.82622 3.53701 2.86121 3.63331 2.93333L3.68664 2.98L7.99998 7.29333L12.3133 2.98C12.3591 2.93088 12.4143 2.89147 12.4756 2.86415C12.5369 2.83682 12.6032 2.82212 12.6703 2.82094C12.7374 2.81976 12.8041 2.8321 12.8664 2.85725C12.9286 2.8824 12.9852 2.91983 13.0327 2.96731C13.0801 3.01479 13.1176 3.07134 13.1427 3.1336C13.1679 3.19586 13.1802 3.26255 13.179 3.32968C13.1779 3.39682 13.1632 3.46303 13.1358 3.52436C13.1085 3.58569 13.0691 3.64089 13.02 3.68667L8.70664 8L13.02 12.3133C13.2 12.4933 13.22 12.7667 13.0666 12.9667L13.02 13.02C12.9349 13.1051 12.822 13.1566 12.702 13.1652C12.582 13.1738 12.4629 13.1388 12.3666 13.0667L12.3133 13.02L7.99998 8.70667L3.68664 13.02C3.59186 13.1083 3.46649 13.1564 3.33696 13.1541C3.20743 13.1518 3.08384 13.0994 2.99223 13.0077C2.90062 12.9161 2.84814 12.7926 2.84586 12.663C2.84357 12.5335 2.89165 12.4081 2.97997 12.3133L7.29331 8L2.97997 3.68667C2.89489 3.6016 2.84334 3.48871 2.83477 3.36871C2.8262 3.2487 2.86118 3.12963 2.93331 3.03333Z" fill="%230A0D14"/></svg>');
}

.select2-container.select2-container--disabled .select2-selection--single {
    background-color: #E2E4E9;
    cursor: default;
}

.form-group .select2-container {
    background: #FFFFFF;
    padding: 8px 0 0 0;
    /* padding: 0; */
    border-radius: 8px;
    border: 1px solid #E2E4E9;
    min-height: 40px;
    margin-bottom: 0;
    width: 100% !important;
}

.select2-container--default .select2-dropdown.select2-dropdown--below {
    border-top: 0;
}

.select2-container--open .select2-dropdown--below {
    border-top: 0 !important;
    border-top-left-radius: 0 !important;
    border-top-right-radius: 0 !important;
}

.map-container .select2-container--open.select2-container--below {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}
/****************************************************************************************************************/
/***********************************************************************CMS - INPUT / TEXTAREA / SELECT*************************************************************************/
/****************************************************************************************************************/
.map-container .form-group select {
    background: #FFFFFF;
    border: 1px solid #E2E4E9;
    padding: 8px 12px;
    border-radius: 8px;
    outline: none;
    height: 40px;
    font-family: Roboto, sans-serif;
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 1.5;
    /* identical to box height, or 150% */
    letter-spacing: 0.5px;
    box-shadow: none;
    /* Content/text-main */
    color: var(--text-main);
    background-repeat: no-repeat;
    background-position: calc(100% - 12px) center;
    background-image: url('data:image/svg+xml,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M4.22007 8.47C4.52007 8.17 4.99007 8.17 5.28007 8.47L12.0001 15.19L18.7201 8.47C18.7887 8.39631 18.8715 8.33721 18.9635 8.29622C19.0555 8.25523 19.1548 8.23319 19.2556 8.23141C19.3563 8.22963 19.4563 8.24816 19.5497 8.28588C19.6431 8.3236 19.7279 8.37974 19.7991 8.45096C19.8703 8.52218 19.9265 8.60702 19.9642 8.7004C20.0019 8.79379 20.0204 8.89382 20.0187 8.99452C20.0169 9.09523 19.9948 9.19454 19.9539 9.28654C19.9129 9.37854 19.8538 9.46134 19.7801 9.53L12.5301 16.78C12.2301 17.08 11.7601 17.08 11.4701 16.78L4.22007 9.53C4.07962 9.38938 4.00073 9.19875 4.00073 9C4.00073 8.80125 4.07962 8.61063 4.22007 8.47Z" fill="%230A0D14"/></svg>');
    margin-bottom: 0;
}

.map-container select {
    -webkit-appearance: none;
    -moz-appearance: none;
    text-indent: 1px;
    text-overflow: '';
}

.map-container .form-control,
.map-container .form-control[type="text"] {
    display: block;
    width: 100%;
    height: 40px;
    padding: 8px 16px;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.3;
    color: #0A0D14;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid #E2E4E9;
    border-radius: 8px;
    box-shadow: unset;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .map-container .form-control {
    transition: none;
  }
}

.map-container .form-control::-ms-expand {
  background-color: transparent;
  border: 0;
}

.map-container .form-control:focus {
  color: #495057;
  background-color: #fff;
  border-color: #80bdff;
  outline: 0;
  box-shadow: inset 0 0 0 rgba(0, 0, 0, 0);
}

.map-container .form-control::-webkit-input-placeholder {
  color: #939ba2;
  opacity: 1;
}

.map-container .form-control::-moz-placeholder {
  color: #939ba2;
  opacity: 1;
}

.map-container .form-control:-ms-input-placeholder {
  color: #939ba2;
  opacity: 1;
}

.map-container .form-control::-ms-input-placeholder {
  color: #939ba2;
  opacity: 1;
}

.map-container .form-control::placeholder {
  color: #939ba2;
  opacity: 1;
}

.map-container .form-control:disabled, .form-control[readonly] {
  background-color: #e9ecef;
  opacity: 1;
}

.map-container select.form-control:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #495057;
}

.map-container select.form-control:focus::-ms-value {
  color: #495057;
  background-color: #fff;
}

.map-container label:not(.form-check-label):not(.custom-file-label) {
    font-family: 'Roboto Medium', sans-serif;
    font-weight: 500;
    line-height: 1.5;
    margin: 0 0 4px 0;
    font-size: 14px;
    color: #0A0D14;
}

.cursor-pointer {
    cursor: pointer !important;
}

.animate-spin {
    animation: spin 1s linear infinite;
}

@keyframes spin {
    from {
      transform: rotate(0deg);
    }
    to {
      transform: rotate(360deg);
    }
}

.option-color__item {
    display: flex;
    gap: 8px;
}

.option-color__item .option-color__item-swatch {
    width: 48px;
    height: 24px;
    border-radius: 4px;
    overflow: hidden;
    border: 1px solid var(--bg-soft);
    flex-shrink: 0;
}

/* Font chữ ngoài */

.wrapper-page .map-container {
    color: #101828;
}

.wrapper-page .map-container .map-sidebar .card-header h5,
.wrapper-page .map-container .map-sidebar .card-item__title,
.wrapper-page label:not(.form-check-label):not(.custom-file-label),
.wrapper-page .map-container .btn, 
.wrapper-page .group-button-action .btn,
.wrapper-page .ol-popup .ol-popup-title,
.wrapper-page .detail-container .title-detail,
.wrapper-page .map-container .search-container .search-form input::placeholder,
.wrapper-page .map-container .search-container .search-form input::-webkit-input-placeholder {
    font-family: "Roboto Flex", sans-serif;
}

.wrapper-page .ol-popup .ol-popup-title {
    font-weight: 700;
}

.wrapper-page .map-container .map-sidebar .card-header h5,
.wrapper-page .map-container .map-sidebar .card-item__title,
.wrapper-page label:not(.form-check-label):not(.custom-file-label) {
    font-weight: 600;
}

/* .wrapper-page label:not(.form-check-label):not(.custom-file-label) {
    font-weight: 500;
} */

.wrapper-page .detail-container {
    margin-bottom: 24px;
}

.wrapper-page .detail-container .map-container {
    margin-bottom: 0;
}