
@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: Arial, sans-serif;*/
/*    font-family:  "Helvetica Neue", Helvetica, Arial, sans-serif;*/
    font-family: 'Avenir Roman', "Helvetica Neue", Helvetica, Arial, sans-serif;
    letter-spacing: 0.3px;
    /*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;*/ padding-left:2em; padding-right: 2em; }
.toggle-group > .btn{min-width: 0px !important; padding-right: 0;  }
.toggle-off.btn{  padding-left:12px; padding-right: 0; }
.toggle-on.btn{ padding-left:0; padding-right: 12px; }

.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: 1.1em;
    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;
    font-size: 12px !important;
}

.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: 12px;*/
    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: 12px; }

.image-card.selected-green {
    border-color: #C0FFD2;       /* green border */
    background-color: #C0FFD2;   /* light green bg */
}

/*.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: bold !important;}
.invalid-feedback{ font-size: 90%; }

.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: 12px !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 }

.field-property-entries_owner_contact .select2-container{ width: calc(100% - 36px) !important; }
.fakelayer{ position:absolute;top:24px;height:31px;left:0;right: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; }*/
    .tab-heading{ font-size: 14px !important; }
}


/** Old Mansion CSS **/
#mobile-top-search{ }
#mobile-top-search.sticky{  background:#EEEEEE; position: fixed; top:56px;  left:auto; right:auto; margin:auto; z-index: 200; border-left:1px solid #EEEEEE;border-right:1px solid #EEEEEE;border-bottom:1px solid #EEEEEE; padding-top:10px; border-radius: 0 0 5px 5px; width:calc(100% - 30px) !important; max-width:1500px; }
#mobile-top-search.sticky .form-group{ margin-bottom: 2px; }
#mobile-top-search .mobile-top-search-more{ display: inline-block; width: 100%; }
#mobile-top-search.sticky .mobile-top-search-more{ display: none;/* max-height: 250px;*/ }
#mobile-top-search .mobile-top-search-more.force-open{ display: inline-block !important; }
a#mobile-toggle{ width: 50%;  }
#mobile-more-toggle{ text-align: center; display: none; }
#mobile-more-toggle a{ padding-bottom:5px; display: inline-block; text-decoration: none; }
#mobile-more-toggle a:hover{ }
#mobile-top-search.sticky #mobile-more-toggle{ display: block;  }
.only-show-scrolldown{ display: none; }

h1,
.h1 {
  font-size: 28px;
}
h2,
.h2 {
  font-size: 26px;
}
h3,
.h3 {
  font-size: 22px;
}
h4,
.h4 {
  font-size: 18px;
}
h5,
.h5 {
  font-size: 13px;
}
h6,
.h6 {
  font-size: 13px;
}
h1,
.h1,
h2,
.h2,
h3,
.h3 {
  margin-top: 10px;
  margin-bottom: 5px;
}

.table tr:hover{ background:#C0FFD2 !important;  }
.table thead tr:hover{ background:transparent !important; }
.navbar-dark { background: #323c60 !important; border-bottom: 1px solid #323c60 !important }
.navbar-dark  .navbar-nav > li > a{ font-size: 14px; }
.navbar-dark  .navbar-nav > li > a.active {   color: #FFFFFF; }
.navbar-dark .navbar-nav > .open > a, .navbar-dark .navbar-nav > .open > a:hover, .navbar-dark .navbar-nav > .open > a:focus{ background-color:transparent !important; }
.navbar-dark .navbar-nav .nav-link{ background: transparent !important;  }

.grid-view th{
    white-space: nowrap;
    background: #0e3e52;
    color: #FFFFFF;
}
.grid-view th a{ color:#FFFFFF;}
.filters td{ background: #FFFFFF !important}
.table tbody a {  color: #337ab7 !important; }
.left{text-align:left;}
.right{text-align:right;}
.float-right{ display: inline-block; float:right;}
.float-left{ display: inline-block; float:left;}
.clear{ clear:both; width:100%; display: block;}
.btn {  /*padding: 6px 25px;*/ margin-bottom:5px; vertical-align: top;}
.table tbody a.btn{ color:#FFFFFF !important; }
.nopadding {
   padding: 0 !important;
   margin: 0 !important;
}
.noleftpadding {
   padding-left: 0 !important;
   margin-left: 0 !important;
}
.norightpadding {
   padding-right: 0 !important;
   margin-right: 0 !important;
}
.pagination{ float:right;}

/*.table tr.rented{ background:#C9D6FC !important; }
.table tr.sold{ background:#F7C4AB !important;}
.table tr.delete{ background:#f2f2f2 !important;}
.table tr.kiv{ background:#FFC3FB !important; }
*/
.responsive-table table{  }
.responsive-table table td{ }
.table tr.rented{ background:#ADC2FF !important; }
.table tr.sold{ background:#C1C1C1 !important;}
.table tr.delete{ background:#C1C1C1 !important;}
.table tr.kiv{ background:#FFA4FA !important; }
.table tr.urgent{ background:#FFB387 !important; }
/*.table tr.notepad{  background:#9bf442 !important; }*/

/*.scrollable-y{
  max-width:80px;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  overflow-y: auto;
}
*/
.scrollable{
  max-height: 50px;
  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; }


.tooltip-inner {   text-align:left !important;  }  
.popover{
  font-size: 13px !important;
  width: 100%;
  max-width: 500px; 
  display: none;
}
.popover-title{ font-weight: bold; }

.ui-autocomplete {
  max-height: 300px;
  overflow-y: auto;
  /* prevent horizontal scrollbar */
  overflow-x: hidden;
}
/* IE 6 doesn't support max-height
 * we use height instead, but this forces the menu to always be this tall
 */
* html .ui-autocomplete {
  height: 300px;
}

/** Filter select2 dropdown **/
.select2-container--krajee .select2-selection--single{ height: 30px;    line-height: 1.428571429;    padding: 8px 44px 5px 8px;    font-size: 13px;  max-width: 120px !important; }
.select2-container--krajee .select2-selection--single .select2-selection__arrow{  height: 28px;}
.select2-container .select2-selection--single .select2-selection__rendered{  }
.select2-container--krajee .select2-selection__clear{ top:0.2rem;  cursor: pointer;}
.select2-container--krajee .select2-selection--single .select2-selection__clear{ right:2.5rem;  }
.select2-container--krajee .select2-dropdown{ width: 200px !important }

#mobile-top-search .select2-container--krajee .select2-selection--single{ max-width: 100% !important;   }
#mobile-top-search .select2-container--krajee .select2-dropdown{ width: 100% !important }

.select2-container {
    width:100%;
    box-sizing: border-box;
    display: block;
    margin: 0;
    position: relative;
    vertical-align: middle;
}

@media screen and (max-width: 599px) {
  .responsive-table{ 
      overflow-x: auto;
      width:100%;
      height:100%;
      table-layout: fixed;
  }

/*  #mobile-top-search{  background:#EEEEEE; position: fixed; top:56px;  left:auto; right:auto; margin:auto; z-index: 200; border-left:1px solid #EEEEEE;border-right:1px solid #EEEEEE;border-bottom:1px solid #EEEEEE; padding-top:10px; border-radius: 0 0 5px 5px; width:calc(100% - 30px) !important; max-width:1500px; }
  #mobile-top-search .form-group{ margin-bottom: 2px; }
  #mobile-top-search .mobile-top-search-more{ display: inline-block; width: 100%; }
  #mobile-top-search .mobile-top-search-more{ display: none; }
  #mobile-top-search .mobile-top-search-more.force-open{ display: inline-block !important; }
  a#mobile-toggle{ width: 50%;  }
  #mobile-more-toggle{ text-align: center; display: none; }
  #mobile-more-toggle a{ padding-bottom:5px; display: inline-block; text-decoration: none; }
  #mobile-top-search#mobile-more-toggle{ display: block;  }
  .only-show-scrolldown{ display: none; }*/

}

.ui-widget{ font-family: 'Avenir Roman', "Helvetica Neue", Helvetica, Arial, sans-serif; /*font-size: 1.05em; */}
.ui-widget button{ font-family: 'Avenir Roman', "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: inherit !important; }
.modal-body .btn{ font-size: 1rem !important; }
/*.modal { position: fixed; top:30%; vertical-align: middle; left:0; right:0; }   */
.modal-dialog{     
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  min-height: calc(100% - 1rem);
  margin-top:-30px;
}
/*.ui-widget-content a.btn{ line-height: 1.8em; }*/
.top-logo{ width:50px; height:50px; border-radius: 50%; background: transparent; color:#6782a4; padding: 4px; font-size: 18px;  }
.main-logo{ width:50px; height:50px; border-radius: 50%; background: transparent; color:#6782a4; padding: 4px; font-size: 28px; //border:2px solid #6782a4; }
label.has-star{ font-weight: bold; }
table .fas{ font-size: 14px; }
.bootstrap-dialog .bootstrap-dialog-message{ font-size: 1rem; }
.remarks-column{ overflow-y: auto; height: 200px; }

.page-link {   color: #007bff !important; font-size: 14px;}
.page-item.active .page-link{ color: #ffffff !important; }
.page-item.disabled .page-link{ color:#bdbdbd !important;  }

.form-check-label{ margin-left: 0.2em; }


#close-search{
    display: none;
}
#mobile-search-sidebar {
    position: relative;
    height: 100%;
/*    left:auto;*/
/*    top:auto;*/
}

#mobile-search-sidebar.active {
    left: 0;
}

.mobile-search-toggle {
    display: none;
    margin-bottom: 10px;
}

.search-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 15px;
}

/* HARD READONLY STATE */
.permission-readonly {
    position: relative;
}

/* Inputs */
.permission-readonly input,
.permission-readonly textarea,
.permission-readonly select {
    pointer-events: none;
    background-color: #f5f5f5 !important;
    opacity: 0.8;
}

/* Buttons */
.permission-readonly button:not(.btn-allow),
.permission-readonly .btn:not(.btn-allow) {
    pointer-events: none;
    opacity: 0.6;
}


/* Select2 / Kartik */
.permission-readonly .select2-selection,
.permission-readonly .kv-fileinput-caption,
.permission-readonly .fileinput-remove-button,
.permission-readonly .fileinput-upload-button {
    pointer-events: none;
    background-color: #eee !important;
}

/* Optional overlay label */
.permission-readonly::after {
    content: "Read-only access";
    position: absolute;
    top: 10px;
    right: 15px;
    font-size: 12px;
    color: #999;
}

@media only screen and (max-width: 579px) {
    #mobile-search-sidebar{
        background: #f8f9fa;
        z-index: 1000;
        overflow-y: auto;
        transition: left 0.3s ease;
        padding: 15px;
        box-shadow: 2px 0 5px rgba(0,0,0,0.3);
        position: fixed;
        top: 50px;
        left: -100%;
        width: 100%;
        height: calc(100% - 50px);
    }
    .mobile-search-toggle,#close-search {
        display: inline-block;
    }

    .grid-view .filters {
        display: none;
    }
}