
@font-face {
    font-family: 'Avenir Roman';
    src: url("../fonts/avenir-roman.otf") format("opentype");
}
@font-face {
    font-family: 'Avenir Black';
    src: url("../fonts/avenir-black.otf") format("opentype");
}


html, body{
    height: 100%;
    font-size: 13px;
    /*font-weight: 500;*/
    /*font-family: Verdana, Arial, sans-serif;*/
    /*font-family:  "Helvetica Neue", Helvetica, Arial, sans-serif;*/
    font-family: 'Avenir Roman', Arial, sans-serif;
    /*background: #f0f0f0;*/
    /*color: #000000;*/
    /*overflow-x: hidden; */
    /*position: relative;*/
}
body{ overflow-x: hidden; overflow-y: auto }

main{ margin-top: 58px; padding-bottom: 20px; }
main > .container {
    padding: 70px 15px 20px;
}

h1,.h1{
    font-size: 20px;
}
.btn { min-width: 130px; }

.site-login{
    font-size: 14px !important;
}
.alert {
    font-size: 13px;
    margin-top: 20px;
}

.navbar-nav .nav-link{
    padding-right: 1rem !important;
    padding-left: 1rem !important;
    font-size: 14px;
}
.footer {
    background-color: #f2f2f2;
    font-size: .9em;
    height: 60px;
    
    margin-top:auto; 
}

.footer > .container {
    padding-right: 15px;
    padding-left: 15px;
}

.not-set {
    color: #c55;
    font-style: italic;
}

/* add sorting icons to gridview sort links */
a.asc:after, a.desc:after {
    content: '';
    left: 3px;
    display: inline-block;
    width: 0;
    height: 0;
    border: solid 5px transparent;
    margin: 4px 4px 2px 4px;
    background: transparent;
}

a.asc:after {
    border-bottom: solid 7px #FFFFFF;
    border-top-width: 0;
}

a.desc:after {
    border-top: solid 7px #FFFFFF;
    border-bottom-width: 0;
}
.kv-grid-bs4 a.asc:after,.kv-grid-bs4 a.desc:after{ content: "";  }

.grid-view th,
.grid-view td:last-child {
    white-space: nowrap;
}

.grid-view .filters input,
.grid-view .filters select {
    min-width: 50px;
}

.hint-block {
    display: block;
    margin-top: 5px;
    color: #999;
}

.error-summary {
    color: #a94442;
    background: #fdf7f7;
    border-left: 3px solid #eed3d7;
    padding: 10px 20px;
    margin: 0 0 15px 0;
}

/* align the logout "link" (button in form) of the navbar */
.nav li > form > button.logout {
    padding-top: 5px;
    color: rgba(255, 255, 255, 0.5);
    font-size: 14px;
}

.table th, .table td{ padding:0.5rem; }
table.table tr:hover{ background:#C0FFD2 !important;  }
table.table thead tr:hover{ background:transparent !important; }
table.table thead tr th{ background:#343a40 !important; color:#FFFFFF; font-size: 13px;/* border-color:#343a40  */}
table.table thead tr th a{ color:#FFFFFF;  }
table.table tbody tr td{ font-size: 13px; }

.pagination{ float:right; }


.bg-light{ background:#f2f2f2 !important; }
.was-validated .form-control:valid, .form-control.is-valid{ background-image: none !important; padding-right: 0.75rem !important; }
.was-validated .form-control:invalid, .form-control.is-invalid{  background-image: none !important; padding-right: 0.75rem !important;}
/*.col-form-label{ font-weight: 500; }*/
.invalid-feedback{ font-size: 90%; }

.select2-container{ width:100% !important; }
.select2-container--bootstrap.select2-container--disabled .select2-selection, .select2-container--bootstrap.select2-container--disabled .select2-selection--multiple .select2-selection__choice{ background-color: #e9ecef; }
.select2-container--bootstrap .select2-selection{ border:1px solid #ced4da !important;font-size: 13px !important; /*line-height: 1.828571429 !important; *//*color:#495057 !important;*/  }
.select2-container--bootstrap .select2-selection--single .select2-selection__clear{ top:-3px; }
.select2-container--bootstrap .select2-selection--single{ height: 29px !important; }

.view-col{ min-height:33.5px; width: 100%; border-radius: 5px }

.bootstrap-dialog .bootstrap-dialog-message{ font-size: 1rem !important }
.bootstrap-dialog-title{ font-size: 1.5rem !important; font-weight: bold; }
table .fas{ font-size: 14px; }
.modal-dialog {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    min-height: calc(100% - 1rem);
    margin-top: -30px;
}

/*.scrollable-y{
  max-width:80px;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  overflow-y: auto;
}
*/
.scrollable{
  max-height: 85px;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  overflow-x: hidden;
  overflow-y: auto;
}
.scrollable > .scroll-element,
.scrollable > .scroll-element div
{
    border: none;
    margin: 0;
    padding: 0;
    position: absolute;
    z-index: 10;
}

.scrollable > .scroll-element div {
    display: block;
    height: 100%;
    left: 0;
    top: 0;
    width: 100%;
}

.scrollable > .scroll-element.scroll-x {
    bottom: 2px;
    height: 5px;
    left: 0;
    width: 100%;
}

.scrollable > .scroll-element.scroll-y {
    height: 100%;
    right: 2px;
    top: 0;
    width: 5px;
}

.scrollable > .scroll-element .scroll-element_outer {
    overflow: hidden;
}

.scrollable > .scroll-element .scroll-element_outer,
.scrollable > .scroll-element .scroll-element_track,
.scrollable > .scroll-element .scroll-bar {
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}

.scrollable > .scroll-element .scroll-element_track,
.scrollable > .scroll-element .scroll-bar {
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=40)";
    filter: alpha(opacity=40);
    opacity: 0.4;
}

.scrollable > .scroll-element .scroll-element_track { background-color: #e0e0e0; }
.scrollable > .scroll-element .scroll-bar { background-color: #c2c2c2; }
.scrollable > .scroll-element:hover .scroll-bar { background-color: #919191; }
.scrollable > .scroll-element.scroll-draggable .scroll-bar { background-color: #919191; }


/* update scrollbar offset if both scrolls are visible */
.scrollable > .scroll-element.scroll-x.scroll-scrolly_visible .scroll-element_track { left: -12px; }
.scrollable > .scroll-element.scroll-y.scroll-scrollx_visible .scroll-element_track { top: -12px; }
.scrollable > .scroll-element.scroll-x.scroll-scrolly_visible .scroll-element_size { left: -12px; }
.scrollable > .scroll-element.scroll-y.scroll-scrollx_visible .scroll-element_size { top: -12px; }
.bs-radio-inline{  
    display: -ms-inline-flexbox;
    display: inline-flex;
    -ms-flex-align: center;
    align-items: center;
    padding-left: 0;
    margin-right: 0.75rem;
}
.bs-radio-inline .bs-radio-input{
    position: static;
    margin-top: -7px;
    margin-right: 0.3125rem;
    margin-left: 0;
}

@media only screen and (max-width:767px) {
    .nav li > form > button.logout {
        display:block;
        text-align: left;
        width: 100%;
        padding: 10px 0;
    }
    .navbar-nav .nav-link{
        padding-right: 0 !important;
        padding-left: 0 !important;
        padding-top:1rem ;
    }
    .dropdown-item{ padding:0.8rem 1.5rem; }
}

.nav > li > form > button.logout:focus,
.nav > li > form > button.logout:hover {
    text-decoration: none;
    color: rgba(255, 255, 255, 0.75);
}

.nav > li > form > button.logout:focus {
    outline: none;
}

@media only screen and (max-width:576px) {
    .btn { min-width: 100px; }
}


