.menu-dropdown-toggle {
    border: solid #c6c6c6;
    border-width: 0 2px 2px 0;
    padding: 3px;
    margin-bottom: .5rem;
    margin-left: .5rem;
    transform: rotate(45deg);
    transition: all .25s;
}

.menu-dropdown-toggle.dropdown-open {
    margin-bottom: .25rem;
    transform: rotate(-135deg);
}

.dropdown-menu-group .dropdown-menu-content {
    max-height: 0;
    overflow: hidden;
    transition: all .35s ease-out;
}


/* Custom - Input */

.custom-textbox {
    padding-left: 13px;
    border: 1px solid #c6c6c6;
    border-radius: 8px;
}

.custom-textbox:focus {
    outline: none;
    border: 1px solid #cb2e27!important;
}


/* Custom - Radio */

.custom-radio {
    display: block;
    position: relative;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.custom-radio input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
}

.custom-radio .checkmark {
    position: absolute;
    width: 25px;
    height: 25px;
    margin-left: -12px;
    background-color: #fff;
    border: 1px solid #cb2e27;
}

.custom-radio .checkmark:after {
    content: "";
    position: absolute;
    display: none;
    left: 9px;
    top: 5px;
    width: 5px;
    height: 10px;
    border: solid white;
    border-width: 0 3px 3px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

.custom-radio:hover input~.checkmark {
    background: rgb(241, 238, 238);
}

.custom-radio input:checked~.checkmark {
    background-color: #cb2e27;
}

.custom-radio input:checked~.checkmark:after {
    display: block;
}


/* Custom - Checkbox */

.custom-checkbox {
    display: block;
    position: relative;
    cursor: pointer;
    color: #000;
    font-family: 微軟正黑體;
    font-size: 14px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    margin: .25rem 0;
}

.custom-checkbox input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    width: 0;
    height: 0;
}

.custom-checkbox .checkmark {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 77px;
    height: 35px;
    letter-spacing: .1rem;
    border-radius: 10px;
    background-color: #c6c6c6;
}

.custom-checkbox-group {
    color: #000;
    padding: .5rem 1rem;
    border-radius: .65rem;
    background-color: #c6c6c6;
}

.custom-checkbox-group .checkbox-item {
    width: 50%;
    cursor: pointer;
    margin-bottom: 0;
}

.custom-checkbox-pair {
    position: relative;
}

.custom-checkbox-pair::before {
    content: '';
    width: .15px;
    height: 45%;
    position: absolute;
    z-index: 500;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: #000;
}

.custom-checkbox-pair .custom-checkbox .checkmark {
    width: 85px;
}

.custom-checkbox-pair label:nth-child(odd) .checkmark {
    border-radius: 10px 0 0 10px;
}

.custom-checkbox-pair label:nth-child(even) .checkmark {
    border-radius: 0 10px 10px 0;
}

.custom-checkbox .checkmark:after {
    content: '';
    position: absolute;
    display: none;
    top: 5px;
    left: 9px;
    width: 5px;
    height: 10px;
    border: solid white;
    border-width: 0 3px 3px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

.custom-checkbox:hover input~.checkmark,
.custom-checkbox input:checked~.checkmark {
    background-color: #fff;
}


/* Custom - Button */

.custom-btn {
    color: #000;
    font-family: 微軟正黑體;
    font-weight: bold;
    font-size: .9rem;
    letter-spacing: .05rem;
    background-color: #fff;
    border: 1px solid #fff;
    width: 100%;
    height: auto;
}

.custom-btn:hover {
    background-color: #c6c6c6;
    border-color: #c6c6c6;
}

.custom-btn:focus {
    outline: 0;
}


/* Custom - Select */

.custom-form-select {
    width: 100%;
    /* font-size: 12px; */
    font-size: .9rem;
    position: relative;
    font-family: 微軟正黑體;
}

.custom-form-select select {
    display: none;
}

.select-selected {
    background-color: #fff;
    /* border: 1px solid #cb2e27;
    border-radius: 5px; */
}

.reverse-elements .select-selected {
    background-color: #fff;
    border: 1px solid #c6c6c6;
}

.select-selected:after {
    position: absolute;
    /* content: ""; */
    top: 11px;
    right: 10px;
    width: 0;
    height: 0;
    border: 6px solid transparent;
    border-color: #000 transparent transparent transparent;
}

.reverse-elements .select-selected:after {
    border-color: #cb2e27 transparent transparent transparent;
}

.select-selected.select-arrow-active:after {
    border-color: transparent transparent #000 transparent;
    top: 7px;
}

.reverse-elements .select-selected.select-arrow-active:after {
    border-color: transparent transparent #cb2e27 transparent;
}

.select-items div,
.select-selected {
    color: #000;
    padding: 4px 12px;
    cursor: pointer;
    user-select: none;
    text-align: center;
}

.select-items {
    position: absolute;
    border: 1px solid #000;
    top: 100%;
    left: 0;
    right: 0;
    z-index: 2000;
    background-color: #fff;
}

.reverse-elements .select-items {
    border: 1px solid #c6c6c6;
}

.select-hide {
    display: none;
}

.select-items div:hover {
    color: #fff!important;
    background-color: rgb(134, 8, 8);
}


/* Custom - Range Selector */

.custom-range-selector {
    position: relative;
    width: 100%;
    height: 15px;
    background-color: #fff;
    border-radius: 7px;
}

.range-tick {
    position: absolute;
    top: 0;
    width: 15px;
    height: 15px;
    background-color: #cb2e27;
    border-radius: 7px;
    cursor: move;
    transition: all;
}

.min-range-tick {
    left: 0;
}

.max-range-tick {
    right: 50%;
}