  body {
    font-size: 0.80rem;
    padding-top: 15px;
    line-height: 1.1;
  }

  .container {
    max-width: 960px;
  }
  
  .feather {
    width: 16px;
    height: 16px;
    vertical-align: text-bottom;
  }
  
  /*
   * Sidebar
   */
  
  .sidebar {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    z-index: 5; /* Behind the navbar */
    padding: 60px 0 0; /* Height of navbar */
    box-shadow: inset -1px 0 0 rgba(0, 0, 0, .1);
  }
  
  .sidebar-sticky {
    position: relative;
    top: 0;
    height: calc(100vh - 60px);
    padding-top: .5rem;
    overflow-x: hidden;
    overflow-y: auto; /* Scrollable contents if viewport is shorter than content. */
  }
  
  @supports ((position: -webkit-sticky) or (position: sticky)) {
    .sidebar-sticky {
      position: -webkit-sticky;
      position: sticky;
    }
  }
  
  .sidebar .nav-link {
    font-weight: 500;
    color: #333;
  }
  
  .sidebar .nav-link .feather {
    margin-right: 4px;
    color: #999;
  }
  
  .sidebar .nav-link.active {
    color: #007bff;
  }
  
  .sidebar .nav-link:hover .feather,
  .sidebar .nav-link.active .feather {
    color: inherit;
  }
  
  .sidebar-heading {
    font-size: .75rem;
    text-transform: uppercase;
  }

  .ui-slider-horizontal .ui-slider-handle {
    top: -.2em
  }
  
  /*
   * Content
   */
  
  [role="main"] {
    padding-top: 133px; /* Space for fixed navbar */
  }
  
  @media (min-width: 768px) {
    [role="main"] {
      padding-top: 60px; /* Space for fixed navbar */
    }
  }
  
  /*
   * Navbar
   */
  
  .navbar-brand {
    font-size: 1rem;
    background-color: rgba(38, 90, 52, 1) !important;
    box-shadow: inset -1px 0 0 rgba(0, 0, 0, .25);
    height: 60px;
    margin-right: 0px;
    padding-left: 10px;
  }
  
  .element-pad {
    padding-top: 8px;
    /* padding-bottom: 8px; */
    margin: 0px 16px;
  }

  .pad-left-right {
    padding-top: 0px;
    padding-bottom: 0px;
    margin: 0px 16px;
  }

  .inputbox {
    width: 80%;
  }
  
  .navbar .form-control {
    padding: .75rem 1rem;
    border-width: 0;
    /* border-radius: 0; */
  }

  .form-control {
    font-size: .7rem;
  }
  
  .form-control-dark {
    color: #fff;
    background-color: rgba(255, 255, 255, .1);
    border-color: rgba(255, 255, 255, .1);
  }
  
  .form-control-dark:focus {
    border-color: transparent;
    box-shadow: 0 0 0 3px rgba(255, 255, 255, .25);
  }
  
/* Custom styling */

  .imgLogo {
    position: relative;
    margin-left: 10px;
    top: 5px;
    cursor: pointer;
  }

  .imgLink {
    object-fit: contain; 
    width: 100%;
    margin: 5px 0px;
  }

  #datetimepickerEnd, #airspeed {
    background-color: #fff;
  }

  #slider, #sliderAirspeed {
    width: 80%;
    margin-bottom: 10px;
  }

  #navTitle {
    display: inline-block;
    position: relative;
    padding-left: 10px;
    top: 10px;
    color: #fff;
  }

  .no-pad {
    padding: 0px;
  }

  #inputApiKey {
    width: 160px;
    padding-left: 4px;
    padding-right: 0px;
  }

  #map {
    height: 45vh;
    width: 100%;
    position: relative;
    box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.2), 0 3px 10px 0 rgba(0, 0, 0, 0.19);
  }

  .popover {
    box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.2), 0 3px 10px 0 rgba(0, 0, 0, 0.19);
  }

  .popup table * {
    white-space: nowrap;
  }

  .popup td {
    padding-right: 8px;
  }

  .popup td:first-child {
    color: rgba(38, 90, 52, 1);
    font-weight: bold;
  }

  .popup pre {
    white-space: pre-wrap;
    font-size: 0.8em;
    padding-top: 0.5em;
  }

  #map-big {
    height: 90vh;
    width: 100%;
    position: relative;
    box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.2), 0 3px 10px 0 rgba(0, 0, 0, 0.19);
  }

  #map-60 {
    height: 60vh;
    width: 100%;
    position: relative;
    box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.2), 0 3px 10px 0 rgba(0, 0, 0, 0.19);
  }

  /* put above Map Scale which has bottom of 8px and height of 18px */
  #mrmsLegend {
    position: absolute;
    bottom: 30px; 
    left: 8px;
    z-index: 1;
    background-color: rgb(248, 249, 250);
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.2), 0 2px 6px 0 rgba(0, 0, 0, 0.19);
    border-radius: 5px;
    padding: 5px;
  }

  #flightLegend {
    position: absolute;
    top: 55px;
    left: 8px;
    z-index: 1;
    background-color: rgba(255, 255, 255, 0.5);
    border-radius: 5px;
    padding: 5px;
  }
  
  #spinner {
    margin: 0px 16px;
  }

  #mapMenu {
    color: rgb(153, 153, 153);
    top: 6px;
    left: 42px;
    z-index: 1;
    position: absolute;
    cursor: pointer;
  }

  #mapMenuCard {
    top: 6px;
    left: 70px;
    z-index: 6;
    position: absolute;
    padding: 10px 20px 10px 10px;
    border-radius: 3px;
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
    font-size: 0.7rem;
    line-height: 1.0;
  }

  .move {
    cursor: move;
  }
  
  /* #timeLabel {
    top: 6px;
    right: 10px;
    font-size: 1.5rem;
    z-index: 1;
    position: absolute;
    background-color: rgba(255, 255, 255, 1);
    padding: 5px 10px;
    border-radius: 3px;
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
  } */

  #windLabel {
    top: 6px;
    right: 10px;
    font-size: 1.1rem;
    z-index: 1;
    position: absolute;
    background-color: rgba(255, 255, 255, 1);
    padding: 5px 10px;
    border-radius: 3px;
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
  }

  input.large_check_box {
    width : 15px;
    height : 15px;
    margin: 5px 2px 5px 2px;
    cursor: pointer;
    position: relative;
    top: 2px;
  }

  .custom-select {
    margin: 5px 0px;
    width: unset;
  }

  #swapCityPair {
    cursor: pointer;
    /* bottom: 10px;
    left: -2px;
    position: absolute; */
    float: left;
    width: 30px;
    /* padding: 0px; */
    /* box-sizing: border-box; */
    z-index: 1;
  }

  .float-left-margin-right {
    float:left;
    margin-right:20px;
  }

  #buttonExportCsv {
    cursor: pointer;
    display: none;
    margin-bottom: 8px;
  }

  #loginForm {
    position: absolute;
    right: 10px;
    top: 11px;
  }

  #statusLogin {
    color: rgba(255, 255, 255, 1);
    margin-right: 6px;
  }

  #helpMenu {
    color: rgba(255, 255, 255, 1);
    margin-right: 15px;
    cursor: pointer;
  }

  #contactUs {
    position: absolute;
    right: 15px;
    top: 20px;
    color: rgba(255, 255, 255, 1);
    cursor: pointer;
  }

  #bookmarkMenu {
    position: relative;
    top: -20px;
    margin-top: 0px;
    margin-bottom: 0px;
    margin-left: 100px;
    margin-right: 350px;
  }

  .nav-menu-item {
    color: rgba(255, 255, 255, 1);
    cursor: pointer;
    /* padding: 10px 5%; */
  }

  .nav-menu-item:hover {
    color: #5cee8b;
  }

  #statusUpdate {
    margin-right: 10px;
    color: rgba(255, 255, 255, 1);
  }

  #helpMenuList {
    box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.2), 0 3px 10px 0 rgba(0, 0, 0, 0.19);
  }

  /* styleing for dropdown list */
  .dropdown-item:hover {
    background-color: #28a74631
  }

  #apiDocsLink {
    color: rgba(255, 255, 255, 1);
    margin-right: 10px;
  }

  #buttonLogin {
    margin-right: 15px;
  }

  /* Data Tables */
  #flightList tbody tr.selected {
    background-color: rgba(255, 255, 0, 0.5) !important;
  }

  #routeList tbody tr.selected {
    background-color: rgba(255, 255, 0, 0.5) !important;
  }

  #airportSummary tbody tr.selected {
    background-color: rgba(255, 255, 0, 0.5) !important;
  }

  /* indicate links when mouse over on table row */
  .tableRowPointer tbody tr {
    cursor: pointer;
  }

  #buttonDashboard, #buttonDashboardDest, #buttonStaDelayReport, #buttonTbfmDelayReport, #buttonArrivals, #buttonStreamClass, #buttonFixConformance {
    margin-top: 10px;
  }

  .align-right {
    text-align: right;
  }

  .ul-no-indent { 
    margin-left: -25px; 
  }

  .line-height-1 {
    line-height: 1.5;
  }
  
  .large-font {
    font-size: 2.5em;
    padding-top: 60px;
  }

  .small-font {
    font-size: 0.8em;
  }
  
  .lead-1 {
    font-size: 1rem;
    font-weight: 300;
  }
  
  .xs-font {
    font-size: 0.6em;
  }

  hr {
    margin-top: 5px;
    margin-bottom: 0px;
  }

  th {
    font-size: 0.7em;
  }

  td {
    font-size: 0.8em;
  }
  
  #tableFlightList {
    overflow-x: auto;
  }
  
  /* summary table font a bit larger than other tables */
  #tableFlightSummary {
    font-size: 1.1em;
  }

  /* shift summary table headers to right where sort arrows are hidden */
  #flightSummary th {
    position: relative;
    right: -10px;
  }

  #flightSummary thead th {
    border-bottom: 0;
  }

  #flightSummary tfoot th {
    border-top: 0;
  }

  /* style for time series charts and .container */
  .chart-container {
    display: none;
  }

  .time-series-chart {
    width: 100%;
    height: 40vh;
    display: none;
  }

  /* Class for making tables not spill out of container */
  .fit-table {
    table-layout: fixed;
    width: 100% !important;
  }
  .fit-table td,
  .fit-table th{
    width: auto !important;
    white-space: normal;
    text-overflow: ellipsis;
    overflow: hidden;
  }

  .metadata {
    font-size: 0.8em;
  }

  .fa-star, .fa-envelope, .fa-info-circle, .fa-arrow-alt-circle-right  {
    /* color: #94c2ff; */
    color: #28A745;
  }

  #routeTitle {
    font-size: 1.2rem;
  }

  #routeString {
    height: 30vh;
    overflow-y: auto; /* Scrollable contents if viewport is shorter than content. */
    overflow-wrap: break-word;
    font-family: Consolas,"courier new";
    color: rgb(0, 0, 0);
    background-color: #f8f9fa;
    border-style: solid;
    border-color: rgb(206, 212, 218);
    padding: 5px;
    border-radius: 4px;
  }

  #routeGeoJSON {
    height: 30vh;
    overflow-y: auto; /* Scrollable contents if viewport is shorter than content. */
    font-family: Consolas,"courier new";
    color: rgb(46, 196, 255);
    background-color: #363636;
    border-style: solid;
    border-color: rgb(206, 212, 218);
    padding: 5px;
    border-radius: 4px;
  }

  #examplePanel {
    height: 85vh;  
    overflow-y: auto; /* Scrollable contents if viewport is shorter than content. */
  }

  #queryPanel {
    height: 85vh;
    overflow-y: auto; /* Scrollable contents if viewport is shorter than content. */
    overflow-x: hidden;
  }

  .pdf-viewer {
    width: 100%;
    height: 90vh;
    border: none
  }

  #notesModalBody {
    line-height: 1.5;
  }

  .btn-xs {
    padding: 2px 6px;
    font-size: 0.75rem;
    cursor: pointer;
  }

  .btn-xxs {
    padding: 1px 3px;
    font-size: 0.5rem;
    cursor: pointer;
  }

  .center-90 {
    margin: auto;
    width: 90%;
  }

  .center-80 {
    margin: auto;
    width: 80%;
  }

  .center-60 {
    margin: auto;
    width: 60%;
  }

  .highlight {
    color: rgba(38, 90, 52, 1);
    font-weight: bold;
  } 

  .cavan-green {
    color: rgba(38, 90, 52, 1);
  } 

  .link {
    cursor: pointer;
    text-decoration: underline;
  }

  .pt-50 {
    padding-top: 50px;
  }

  /* Side full user role content by default */
  .role-full {
    display: none;
  }

  .card-body {
    padding-bottom: 0.25rem;
  }