*,*:focus{outline:none !important;}
.no-gutters { margin-right: 0; margin-left: 0; }
.no-gutters>.col, .no-gutters>[class*=col-] { padding-right: 0; padding-left: 0; }
.invalid-feedback, div.is-invalid { display: none; width: 100%; margin-top: 0.25rem; font-size: 87.5%; color: #cd201f; }
#alert-wrapper{ cursor: pointer; position: fixed; right: 0; z-index: 9999; top: 0; margin-top: 22px; margin-right: 15px; max-width: 300px; }
button.link-secondary { border: none; background: none; outline:none; }
.input-group-flat div.is-invalid { position: absolute; bottom: -25px; }
.input-group-text.is-valid{border-color:#5eba00;}
.input-group-text.is-invalid{border-color:#cd201f;}
.footer{margin:0;}
.box-for-datatable td.status0 { opacity: 0.5; }
.box-for-datatable td.connection1 { }
.box-for-datatable td.connection1 span.connection { color: #4ba94b; }
.box-for-datatable td.connection, span.connection { color: #cd201f; }
.box-for-datatable td .state{display: block;font-size: 18px;}
.box-for-datatable td .state.danger { color: #cd201f !important; animation: blinker 0.9s linear infinite;}
.box-for-datatable td .state.success { color: #4ba94b !important; }
.box-for-datatable td .copy-url { position: relative;cursor: pointer; max-width: 150px; display: flex; white-space: nowrap; overflow: hidden; flex-direction: row-reverse; align-items: flex-start; }
.box-for-datatable td .copy-url:after{content:"";position: absolute; left: 0; top: 0; width: 50%; height: 100%;background: -moz-linear-gradient(left,  rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%);background: -webkit-linear-gradient(left,  rgba(255,255,255,1) 0%,rgba(255,255,255,0) 100%);background: linear-gradient(to right,  rgba(255,255,255,1) 0%,rgba(255,255,255,0) 100%);filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#00ffffff',GradientType=1 );}
.box-for-datatable .dataTable tfoot { display: none; }
.box-for-datatable .dataTables_length,
.box-for-datatable .dataTables_filter{ display: flex; white-space: nowrap; align-items: center; }
.box-for-datatable .card-body label { display: flex; }
.box-for-datatable .card-body .form-control { margin: 0 10px; }
.box-for-datatable .card-body .dataTables_filter .form-control { margin-right: 0; }
.box-for-datatable .card-footer .select-info { margin-left: 15px; font-weight: 600; }
.box-for-datatable .card-footer .pagination { margin: 0; }
.box-for-datatable th.sorting_desc:after { content: "\f106"; font-family: fontawesome; padding-left: 10px; }
.box-for-datatable th.sorting_asc:after { content: "\f107"; font-family: fontawesome; padding-left: 10px; }
.box-for-datatable .dataTables_processing { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: none; text-align: center; align-items: center; display: block; justify-content: center; box-shadow: none; margin: 0; border-radius: 0; padding-top: 40px; }
#template { position: relative; }
#template.updating:before { content: ""; position: absolute; left: 0; top: 0; width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; background: rgba(255,255,255,0.5); z-index: 9; color: #000; }
#template.updating .row .col{position:relative;}
#template.updating .row .col .fa-spinner { position: absolute; left: calc(50% - 15px); top: calc(50% - 15px); width: auto; height: auto; font-size: 20px; z-index:10;}
#template > .card-body .tab-pane > div.row{margin-bottom:15px;}
#template > .card-body .tab-pane > div.row:last-child{margin-bottom:0;}
#template .nav-tabs .nav-item .process{display:none;}
#template.edit { padding: 15px; border: 2px dashed #c0d0ef;}
#template.edit .nav-tabs .nav-item { display: flex; }
#template.edit .nav-tabs .nav-item .process { display: flex; align-items: center; font-size: 10px; }
#template.edit .nav-tabs .nav-item .process i { padding-left: 5px; cursor: pointer; opacity:0.6; }
#template.edit .nav-tabs .nav-item .process i:hover { opacity:1; }
#template.edit .nav-tabs .nav-item .nav-link { padding-right: 50px; margin-right: -40px; }
#template .nav-tabs .nav-item .nav-link.text-danger.active{border-color:#cd201f!important;}
#template.edit > .card-body { padding-left: 0; padding-right: 0; }
#template.edit > .card-body .tab-pane > div.row { background: #fbf9f5; padding: 15px; border: 2px dashed #e4e0d8; margin: 0; position: relative;}
#template.edit > .card-body .tab-pane > div.row > div { background: #fff; border: 2px solid #e8dec8; padding: 10px 15px; }
#template.edit > .card-body .tab-pane > div.row > div.col { padding: 15px; }
#template.edit > .card-body .tab-pane > div.row > div.col.ui-state-active{background:#adb8e0;}
#template.edit .btn-row-create { display: block; margin: 10px auto; }
#template.edit .row > .mini-menu { position: absolute; right: 0; background: #e0d8c8; width: auto; top: 0; height: auto; z-index: 9; opacity:0; }
#template.edit .row:hover > .mini-menu { opacity:1; }
#template.edit .row > .mini-menu span { font-size: 13px; display: inline-block; vertical-align: middle; margin-left: 10px; cursor:pointer; }
#template.edit .row > .mini-menu span:first-child { margin-left: 0; }
#template.edit .row > .create-col { width: 160px; margin: auto; }
#template .badge-for-widget {cursor:auto;width: 100%;min-height: 50px; align-items: center;display: none;}
#template.edit .badge-for-widget {cursor:move;display:flex;}
#template.edit .badge-for-widget i{display:flex;}
#template.edit .badge-for-widget i:hover{color:#fff;}
#template.edit .badge-for-widget.old-key { background: #cd201f; }
.badge-for-widget { font-size: 12px; cursor:move; }
.badge-for-widget.no-drag { background: #a8aeb7 !important; cursor:auto;}
.badge-for-widget i { color: #fff; font-size: 10px; display: none; align-items: center; padding-left: 6px; cursor: pointer; opacity:0.6;}
.badge-for-widget i:hover { opacity:1;}
.keys{ position: sticky; top: 30px; -webkit-position: sticky; }
.keys .badge-for-widget {min-height:auto;}
.widget { box-shadow: rgba(53,64,82,.04) 0 2px 4px 0; padding: 15px; border-radius: 3px; border: 1px solid rgba(110,117,130,.2); height: 100%;}
.widget-model-3 { position: relative; height: 100%; }
.widget-model-3 canvas { width: 100% !important; height: auto !important; }
.widget-model-3 .d-flex { align-items: center; justify-content: center; width: 100%; height: 100%; flex-direction: column;}
.widget-model-4 canvas { margin: auto; display: block; }
.widget .widget-alerts { width: 100%; }
.widget .widget-alerts .alert { margin-bottom: 0; margin-top: 10px; font-size: 12px; padding: 5px 10px; width: 100%; display: block; }
.widget .widget-alerts .alert span{ animation: blinker 0.9s linear infinite; }
.widget.widget-model-3 .widget-alerts .alert,
.widget.widget-model-4 .widget-alerts .alert{text-align:center;}
.widget.widget-model-5 .widget-map { /*max-height: 50vh !important; min-height:450px !important;*/ }
.widget.widget-model-5 .widget-map > div { height: calc(100% + 25px) !important; }
.widget.has-alert{border-color:#eba6a5;}
#report #refreshTime { max-width: 70px; }
#refreshProgress { position: absolute; top: 0; left: 0; width: 100%; height: auto; z-index: 999; }
#refreshProgress span{ height:2px; background:#206bc4;display:block;width:0;transition:1s linear;-moz-transition:1s linear;-webkit-transition:1s linear; }
#emails .email-content { border-left: 1px solid rgba(110,117,130,.2)!important; height: 100%; padding: 15px; }
#emails table td { cursor: pointer; }
#emails table tr:hover > td { background:#f5f7fb; }
#emails table tr.selected > td { background:#eee; }
#navbar-menu.hide { display: none !important; }
.data-type-contents .data-type-content { display: flex; }
.data-type-contents .data-type-content.collapse { display: none !important; }
.flatpickr-day.inRange{box-shadow:none;-webkit-box-shadow:none;}
/*table .row-report, table .row-data, table .row-edit, table .row-mail, table .row-log, table .row-template { padding: 0 !important; }*/
.table th span.vertical { writing-mode: vertical-rl; display: flex; transform: rotate( 180deg); margin: 0 0 10px; width: 100%; align-items: center; font-family: monospace; font-weight: 700; border-top: 1px solid #ccc; padding: 10px 0 0 0; }
#vehicleData .table th { text-align: center; }
@media (min-width: 75.25rem){
    .container, .container-lg, .container-md, .container-sm, .container-xl{max-width:80vw;}
}
@keyframes blinker {
    50% { opacity: 0; }
}