.efma-modal{
    position: fixed;
    display: none;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 10;
    background-color: rgba(0,0,0,0.5);
}

.efma-modal-box{
    position:absolute;
    left: 50%;
    top: 50%;
    width: 960px;
    height: 720px;
    transform: translate(-480px,-1000px);
    background-color: #ffffff;
    transition: all 0.3s;
    -webkit-transition: all 0.3s;
}
.modal-field,
.modal-field-multiple,
.modal-check {
    height: 56px;
    padding: 8px 0 0 0;
    position: relative;
}

.modal-check{
    height: 60px;
}

.modal-field.field-text {
    height: 80px;
}

.modal-field.field-text span {
    color: #ccc;
}

.modal-field-multiple {
    height: auto;
}

.modal-field.modal-image {
    width: 100%;
    height: auto;
    padding-top: 24px;
}

.modal-field.modal-image input {
    max-width: 100%;
}

.modal-field-multiple option {
    position: relative;
    padding: 10px;
    text-overflow: ellipsis;
    overflow: hidden;
}

.modal-field::after,
.modal-field::before,
.modal-field-multiple option::after,
.modal-field-multiple option::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: #e7e7e7;
}

.modal-field.field-text span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}


.modal-field-multiple option::after,
.modal-field-multiple option::before {
    bottom: 0;
}

.modal-field.modal-image::after,
.modal-field.modal-image::before {
    bottom: 14px;
}

.modal-field::after,
.modal-field-multiple option::after {
    background-color: #C70808;
    -webkit-transition: transform 0.3s;
    transition: transform 0.3s;
    transform: scaleX(0);
    transform-origin: 0 50%;
}

.modal-field label,
.modal-field-multiple label {
    position: relative;
    height: 16px;
    font-size: 16px;
    line-height: 16px;
    color: #cccccc;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    transform: translateY(24px);
    transform-origin: 0 50%;
}

.modal-field.modal-image label {
    transform: translateY(26px);
}

.modal-field input,
.modal-field select,
.modal-field.field-text span{
    display: block;
    position: relative;
    -webkit-appearance: none;
    width: 100%;
    padding: 0;
    border: none;
    font-size: 16px;
    line-height: 20px;
    outline: none;
    background-color: transparent;
    cursor: pointer;
}

.modal-field.field-text span{
    cursor: default;
}

.modal-field input[type="time"],
.modal-field input[type="date"],
.modal-field input[type="datetime-local"] {
    color: transparent;
    transition: color 0.3s;
}

.modal-field input[type="image"] {
    height: auto;
}

.modal-field input[type="image"][src=""] {
    opacity: 0;
}

.modal-field.has-label input[type="time"],
.modal-field.is-focused input[type="time"],
.modal-field.has-label input[type="datetime-local"],
.modal-field.is-focused input[type="datetime-local"],
.modal-field.has-label input[type="date"],
.modal-field.is-focused input[type="date"] {
    color: #333333;
}

.modal-field-multiple select,
.modal-field-multiple select:focus {
    height: 350px;
    border: 1px solid #e7e7e7;
    outline: none;
    width: 100%;
}

.modal-field.has-label label,
.modal-field-multiple label {
    transform: translateY(0) scale(0.75);
}

.modal-field.modal-image.has-label label {
    transform: translateY(-8px) scale(0.75);
}

.modal-field.is-focused label,
.modal-field:hover label,
.modal-field-multiple.is-focused label,
.modal-field-multiple:hover label {
    color: #C70808;
}

.modal-field.is-focused::after{
    transform: scaleX(1);
}

.modal-field.modal-textarea {
    height: auto;
}

.modal-field.modal-textarea::before,
.modal-field.modal-textarea::before,
.modal-field.modal-button::before,
.modal-field.modal-button::before {
    display: none;
}

.search_middle {
    margin-top: 150px;
}

button.btn,
button.btn:focus {
}

button.multiselect_btn,
button.multiselect_btn:focus {
    outline:0;
    background-color: transparent;
    color: #C70808;
    border-radius: 50%;
    height: 35px;
    line-height: 31px;
    width: 35px;
    transition: border 0.3s, color 0.3s;
    margin: 5px auto;
    border: 2px solid #fff;

}

button.multiselect_btn i{
    margin-left: 1px;
}

button.multiselect_btn i.fa-chevron-left {
    margin-left: -2px;
}

button.multiselect_btn i.fa-backward {
    margin-left: -4px;
}

button.multiselect_btn:hover {
    border: 2px solid #C70808;
}

.search_left {
    border-right: 2px dashed #e7e7e7;
}

.search_left > .row > div:last-child,
.search_right > .row > div:last-child {
    height:90px;
    display: flex;
    flex-flow: row wrap;
    vertical-align: bottom;
    float: none;
}

.search_right > .row > div:last-child button{
    align-self: flex-end;
}

.search_left > .row > div:last-child {
    text-align:right;
    flex-flow: row wrap-reverse;
}

.search_right > .row > div:first-child {
    float:right;
}

.modal-title {
    height: 80px;
    padding:20px;
    position: relative;
    z-index: 1;
    transition: box-shadow 0.3s;
}

.modal-title.scroll{
    box-shadow: 0 0 5px 1px rgba(0,0,0,0.3);
}

.modal-form {
    padding: 0 20px;
    overflow: auto;
    height: 640px;
}

button.valid_btn,
button.valid_btn:focus,
button.cancel_btn,
button.cancel_btn:focus,
button.next_btn,
button.next_btn:focus,
button.add_btn,
button.add_btn:focus,
button.upload_btn,
button.upload_btn:focus,
button.del_btn,
button.del_btn:focus {
    outline:0;
    background-color: transparent;
    color: #C70808;
    border-radius: 50%;
    height: 35px;
    line-height: 31px;
    width: 35px;
    transition: border 0.3s, color 0.3s;
    margin: 5px auto;
    border: 2px solid transparent;
}

button.next_btn {
    padding-left: 8px;
    padding-top: 0;
}

button.del_btn {
    padding-top: 0;
}

button.valid_btn,
button.valid_btn:focus {
    color: #89a32a;
}

button.valid_btn:hover {
    border: 2px solid #89a32a;
}

button.cancel_btn:hover,
button.next_btn:hover,
button.add_btn:hover,
button.del_btn:hover,
button.upload_btn:hover {
    border: 2px solid #C70808;
}

.modal-check label {
    cursor: pointer;
}

.modal-check > div {
    color: #ccc;
}

.modal-check label input {
    position:absolute;
    left:-9999px;
}

.modal-check label div {
    outline:0;
    background-color: transparent;
    color: transparent;
    border-radius: 5px;
    height: 25px;
    line-height: 21px;
    width: 25px;
    display: inline-block;
    transition: border 0.3s, color 0.3s;
    margin: 5px 5px 5px 5px;
    border: 2px solid #ccc;
}

.modal-check label input[type='radio'] + div{
    border-radius: 50%;
}

.modal-check label span{
    transition: border 0.3s, color 0.3s;
    color: #ccc;
    font-size: 20px;
    margin-right: 5px;
}

.modal-check label:hover span {
    color: #C70808;
}
.modal-check label div i {
    margin-left: 3px;
}

.modal-check label:hover div,
.modal-check label input:checked + div {
    border: 2px solid #C70808;
}

.modal-check label input:checked + div {
    color: #C70808;
}

.field-list table{
    width: 100%;
    table-layout: fixed;
    text-align: left;
}


.field-list .table-scroll {
    width: 100%;
    height: 350px;
    overflow-y: scroll;
    border-left: 2px solid #efefef;
    border-bottom: 2px solid #efefef;
}

.field-list {
    position: relative;
    height: auto;
    margin: 50px 0;
}

.field-list .modal-field {
    padding-top: 0;
    padding-bottom: 0;
    height: 70px;
}

.field-list .modal-field:before,
.field-list .modal-field:after{
    bottom: 0
}

select.inner-table{

}

.field-list th{
    font-weight: normal;
}

.table-scroll tr{
    height: 40px;
    padding: 10px;
    background-color: #fff;
    cursor: pointer;
    transition: background-color 0.3s;
}

.table-scroll tr:hover{
    background-color: #efefef;
}

.field-list > table {
    width: calc(100% - 17px);
}

select option{
    transition: box-shadow 0.3s;
    cursor: pointer;
}
select option:hover{
    box-shadow: 0 0 10px 100px #e7e7e7 inset;
}

select option:checked
 {
    box-shadow: 0 0 10px 100px #ccc inset;
}

.table_alert{
    color: #be2716;
    text-align: center;
    display: none;
    width: 90%;
    margin: 5%;
    padding: 20px;
    font-size: 18px;
    background-color: #efefef;
}

.table-scroll td{
    padding: 10px;
}

.table-scroll select{
    border: none;
    display: inline-block;
    background-color: inherit;
    height: 40px;
    width: 100%;
    outline: none;
    appearance:none;
    -moz-appearance:none;
    -webkit-appearance:none;
    cursor: pointer;
    transition: filter 0.3s;
    -moz-transition: -moz-filter 0.3s;
    -webkit-transition: -webkit-filter 0.3s;
}


.table-scroll select:hover,
.table-scroll select:focus{
    color: #be2716;
}

.table-scroll select option{
    color: #333;
    line-height: 30px;
    padding: 10px;
}

.banner_img button{
    min-height: 20px;
    transition: filter 0.3s, -webkit-filter 0.3s;
}

.banner_img button:hover{
    filter: brightness(0.9);
    -webkit-filter: brightness(0.9);
}

.banner_img img[src=""] {
    display: none;
}

.classic_btn {
    display: inline-block;
    width: 150px;
    height: 150px;
    padding: 20px;
    margin: 10px 20px;
    color: #be2716;
    background-color: #efefef;
    font-size: 18px;
    line-height: 25px;
    transition: all 0.3s;
}

.program_btn,
.primary_btn {
    display: block;
    height: 52px;
    width: 100%;
    padding: 0;
    vertical-align: middle;
    color: #be2716;
    background-color: #fff;
    font-size: 18px;
    line-height: 52px;
    transition: all 0.3s;
}

.primary_btn{
    display: inline-block;
    margin-top: 34px;
    width: 50%;
    background-color: #efefef;
}

.classic_btn i{
    margin-bottom: 20px;
    display: block;
}

.program_btn span,
.primary_btn span {
    display: none;
}

.classic_btn:hover,
.program_btn:hover,
.primary_btn:hover {
    background-color: #be2716;
    color: #fff;
}

.program_btn:hover i,
.primary_btn:hover i{
    /*display: none;*/
}

.program_btn:hover span,
.primary_btn:hover span{
    display: inline;
}

.finder_btn{
    z-index: 3;
    display: block;
    position: absolute;
    right: 0;
    top: 34px;
    width: 50px;
    height: 50px;
    padding: 0;
    color: #be2716;
    background-color: #efefef;
    transition: all 0.3s;
}

.finder_btn:hover{
    background-color: #be2716;
    color: #efefef;
}

.table-scroll td {
    overflow: hidden;
    text-overflow: ellipsis;
}

.clear_all{
    width: 30px;
    height: 30px;
    position: absolute;
    top: 75px;
    right: 0;
    line-height: 30px;
    color: #be2716;
    text-align: center;
    cursor: pointer;
    transition: all 0.3s;
    border-radius: 50%;
}

.clear_all:hover{
    background-color: #be2716;
    color: #fff;
}

.search_box{
    display: none;
}


.open_search.selected{
    background-color: #be2716;
    color: #fff;
}