body,
html {
    height: 100%;
    min-height: 100%;
}

body {
    font-family: "Roboto", "Helvetica", sans-serif !important;
    font-weight: 400;
    -webkit-font-smoothing: antialiased;
    -moz-font-smoothing: antialiased;
    -ms-font-smoothing: antialiased;
    font-smoothing: antialiased;
    padding: 0;
    margin: 0;
    overflow-x: hidden;
    position: relative;
}

a,
.btn {
    color: #212121;
}

a:hover, a:focus, a:active,
.btn:hover,
.btn:focus,
.btn:active {
    cursor: pointer;
    outline: none !important;
    text-decoration: none !important;
}

a:focus,
a:active,
button::-moz-focus-inner,
input[type="reset"]::-moz-focus-inner,
input[type="button"]::-moz-focus-inner,
input[type="submit"]::-moz-focus-inner,
select::-moz-focus-inner,
input[type="file"] > input[type="button"]::-moz-focus-inner {
    border: 0;
    outline: 0;
}

input:-moz-focusring {
    color: transparent;
    text-shadow: 0 0 0 transparent;
}

.scroll-x {
    overflow-x: scroll;
}

.widget {
    padding: 10px 0;
    background-color: #fff;
    margin-bottom: 20px;
}

.widget > .row {
    margin-bottom: 20px;
}

.widget > .row:last-child {
    margin-bottom: 0;
}

.widget .title {
    margin-bottom: 30px;
}

::-moz-selection {
    background-color: #ffccbc;
}

::selection {
    background-color: #ffccbc;
}

.form-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: calc(100%);
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.color-blue-a700 {
    font-size: 40px !important;
}

.customerName {
    background-color: #000;
    color: #fff;
    padding: 20px;
}

.modal-backdrop {
    visibility: hidden !important;
}

.font24 {
    font-size: 24px !important;
}

.font100 {
    font-size: 100px !important;
}

.nopad {
    padding: 0px !important;
    color: #000 !important;
}

.modal {
    background-color: rgba(0, 0, 0, 0.8);
}

/*Chat CSS*/
@import url(https://fonts.googleapis.com/css?family=Lato:400,700);
@import url('//maxcdn.bootstrapcdn.com/font-awesome/4.1.0/css/font-awesome.min.css');
/*http://codepen.io/drehimself/pen/KdXwxR?utm_source=bypeople
http://nicolasgallagher.com/pure-css-speech-bubbles/demo/*/

*, *:before, *:after {
    box-sizing: border-box;
}

.chat {
    width: 100%;
}

.chat .chat-history {
    padding: 30px 30px 20px;
    border-bottom: 2px solid white;
}

.chat .chat-history .message-data {
    margin-bottom: 15px;
}

.chat .chat-history .message-data-time {
    color: #a8aab1;
    padding-left: 6px;
}

.chat .chat-history .message {
    color: white;
    padding: 18px 20px;
    line-height: 26px;
    font-size: 16px;
    border-radius: 5px;
    margin-bottom: 30px;
    width: 90%;
    position: relative;
}

.chat .chat-history .message:after {
    content: "";
    position: absolute;
    top: -15px;
    left: 20px;
    border-width: 0 15px 15px;
    border-style: solid;
    border-color: #7CFC00 transparent;
    display: block;
    width: 0;
}

.chat .chat-history .you-message {
    background: #7CFC00;
    color: #003366;
}

.chat .chat-history .me-message {
    background: #0d47a1;
}

.chat .chat-history .me-message:after {
    border-color: #0d47a1 transparent;
    right: 20px;
    top: -15px;
    left: auto;
    bottom: auto;
}

.chat .chat-message {
    padding: 30px;
}

.chat .chat-message .fa-file-o, .chat .chat-message .fa-file-image-o {
    font-size: 16px;
    color: gray;
    cursor: pointer;
}

.chat-ul li {
    list-style-type: none;
}

.align-left {
    text-align: left;
}

.align-right {
    text-align: right;
}

.float-right {
    float: right;
}

.clearfix:after {
    visibility: hidden;
    display: block;
    font-size: 0;
    content: " ";
    clear: both;
    height: 0;
}

.you {
    color: #7CFC00;
}

.me {
    color: #0d47a1;
}

.btn-warning {
    background: #ffd700 !important;
    color: #000 !important;
}

/*End chat css */
.page-on-top {
    padding-left: 40px !important;
    padding-right: 40px !important;
    padding-bottom: 20px !important;
    padding-top: 20px !important;
}

.jumbotron-1 {
    height: 130px !important;
}

.text-message {
    width: 65% !important;
}

.chat li {
    border-bottom: none !important;
}

#SMSThreadBody, #sales_sms_thread_body {
    height:100% !important;
}

.compose-message-button {
    margin-top: 15px !important;
    margin-bottom: 15px !important;
}

.alert-message-padding {
    padding: .5rem !important;
}

div.dataTables_wrapper div.dataTables_filter label {
    font-size: 1.5rem !important;
}

div.dataTables_wrapper div.dataTables_length label {
    font-size: 1.5rem !important;
}

div.dataTables_wrapper div.dataTables_filter input {
    /*background:#000 !important;*/
    /*color: #fff !important;*/
}

.input-sm {
    color: #000 !important;
    padding-left: 15px !important;
    background-color: #fff !important;
    border-bottom-left-radius: 5px !important;
    border-top-left-radius: 5px !important;
    background-image: none !important;
}

#modal-close-ro h3 {
    cursor: default;
}

.dropbtn {
    background-color: #4CAF50;
    color: white;
    padding: 16px;
    font-size: 16px;
    border: none;
    cursor: pointer;
}

.dropbtn:hover, .dropbtn:focus {
    background-color: #3e8e41;
}

#myInput {
    border-box: box-sizing;
    background-image: url('searchicon.png');
    background-position: 14px 12px;
    background-repeat: no-repeat;
    font-size: 16px;
    padding: 14px 20px 12px 45px;
    border: none;
    border-bottom: 1px solid #ddd;
}

#myInput:focus {
    outline: 3px solid #ddd;
}

.dropdown {
    position: relative;
    display: inline-block;
}

.dropdown-content {
    display: none;
    position: absolute;
    background-color: #f6f6f6;
    min-width: 230px;
    overflow: auto;
    border: 1px solid #ddd;
    z-index: 1;
}

.dropdown-content a {
    color: black;
    padding: 12px 16px;
    text-decoration: none;
    display: block;
}

.dropdown a:hover {
    background-color: #ddd
}

.show {
    display: block;
}

.input-op {
    width: 50px
}

.services-table tbody tr td {
    border: 0 !important;
    padding: 0 !important;
}

.services-table thead tr th {
    border: 0 !important;
}

.cp {
    cursor: pointer;
}

.b {
    border: 1px solid #000;
}

.b2 {
    border: 2px solid #000;
}

.p-sm {
    padding: 5px;
}

.mt-sm {
    margin-top: 5px;
}

.ml {
    margin-left: 10px;
}

.bg-light-primary {
    background: #1c70c0;
    color: #fff;
}

.td-price-group, .th-price-group {
    width: 400px;
}

.services-table .input-description-wrapper,
.services-table .input-op-wrapper {
    border-left: 1px solid #000;
    border-right: 1px solid #000;
    border-bottom: 1px solid #000;
}

.services-table tbody tr:first-child .input-description-wrapper,
.services-table tbody tr:first-child .input-op-wrapper {
    border-top: 1px solid #000;
}

.td-price-group .price-group .price-single {
    width: 100px;
    border-right: 1px solid black;
}

.td-price-group .price-group .price-single:last-child {
    border: none;
}

.td-price-group .price-group {
    border: 1px solid black;
}

.th-price-group .price-single {
    width: 100px;
}

.price-group {
    display: inline-flex;
}

.price-single {
    padding: 0 5px;
}

.services-table input {
    border: 0;
}

.price-single input:focus {
    outline-width: 0;
}

.input-price, .input-pay-amount {
    width: 74px;
    display: inline-block;
    color: #000 !important;
}

.scrollable-modal .modal-body {
    max-height: 62vh;
    overflow-y: auto;
}

.scrollable-modal .modal-footer {
    border-top: 1px solid #cecece;
}

.op_code_list {
    max-height: 280px;
    overflow-y: auto;
}

/* Description */
.td-description {
    width: 300px;
}

.td-description .input-description-wrapper {
    width: 250px;
    margin: auto;
}

.td-description .input-description-wrapper input {
    width: 100%;
    padding-left: 5px;
}

.in-flex {
    display: inline-flex;
}

/* OP List button */
.op-list-wrapper {
    padding-right: 3px;
}

.op-list-wrapper button {
    height: 30px;
    padding: 0 15px;
}

.td-op-code {
    width: 121px;
}

.input-op-wrapper {
    width: 70px;
}

.input-op-wrapper {
    width: 100%;
}

.price-group .bmd-form-group {
    padding-top: 0 !important;
}

.quote_progress_table {
    border: 2px solid black;
    width: 100%;
}

.quote_progress_table thead {
    border: 2px solid black;
}

.quote_progress_table thead th, .quote_progress_table tfoot tr td:first-child {
    padding: 0;
}

.quote_progress_table tfoot tr td:first-child {
    border: 2px solid black;
}

.quote_progress_table tbody td {
    border-right: 2px solid black;
}

.close {
    color: #fff !important;
}

.op_code_search {
    text-align: left !important;
}

.input-op-wrapper, .op-list-btn {
    height: 33px !important;
    width: 50px !important;
    padding: 5px !important;
    margin: 0;
}

.input-op {
    padding: 0;
}

.absolute-center {
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
}

.text-white-link {
    color: #fff !important;
}

.text-white-link:hover {
    text-decoration: underline !important;
}

.center-block {
    margin-left: auto;
    margin-right: auto;
    display: block;
}

#texting_sidebar .nav a, #sales_texting_sidebar .nav a {
    font-size: .9em !important;
}

.nav-button {
    border-bottom: 2px solid #fff;
    color: #fff;
}

#dealer .product_nav {
    background-color: #0d47a0;
}

#dealer .active_product {
    background-color: #317C34;
}

@media (min-width: 768px) {
    .modal-xl {
        width: 75%;
        max-width: 1000px;
    }
}
