/* Global styles */
@font-face {
  font-family: 'ubuntu';
  src: url("../fonts/Ubuntu-R.ttf"); }
* {
  padding: 0;
  margin: 0;
  list-style: none; }

body {
  background-color: #2E2E2E;
  color: #EBF5ED;
  font-family: ubuntu, Tahoma, Geneva, sans-serif;
  margin-bottom: 20px; }

.content {
  background-color: #F2F2F2;
  color: #2E2E2E;
  padding: 10px;
}

.row {
  margin: 0; }

a {
  color: #0F368F;
  font-weight: bold;
}

a:focus,
a:hover {
  color: #6382C9;
  text-decoration: underline; }

input[type="text"],
input[type="password"],
select,
textarea {
  color: #000; }

h2 {
  color: #2538B1;
  margin-top: 10px;
  margin-bottom: 4px; }

/* Header styles */
.logo > a img {
  height: 40px; }

.logo > a > h2 {
  margin-left: 1em;
  display: inline-block; }

.logo-col-highlight {
  color: #FAA40E; }

h4 > .icon {
  height: 30px;
  padding: 1px 4px 1px 0; }

.top-bar {
  border-bottom: 1px solid #CCC; }

.icon-bar {
  font-size: 150%;
}

.icon-bar a {
  color: #6382C9;
}

.icon-bar a:hover,
.icon-bar a:focus {
  text-decoration: none;
  color: #FFF;
}

.nav .nav-item {
    padding: 4px 2px 4px 2px;
}

.nav .nav-link {
    background-color: #F2F2F2;
    color: #2538B1;
    padding: 6px 20px;
    font-size: 13pt;
    font-weight: normal;
    transition: color .15s ease-in-out, background-color .15s ease-in-out;
}

.nav .nav-link:focus,
.nav .nav-link:hover {
    background-color: #6382C9;
    color: #FFF;
}

.sub-nav {
    padding-top: 30px;
}

.sub-nav li {
  padding-top: 2px;
}

.sub-nav li:first-child {
  padding-bottom: 20px;
  color: #FAA40E;
}

.sub-nav a > .oi {
  width: 14px;
}

.sub-nav a {
  display: block;
  background-color: #F2F2F2;
  color: #2538B1;
  padding: 4px 1px 4px 10px;
  text-decoration: none;
  font-weight: normal;
  transition: color .15s ease-in-out, background-color .15s ease-in-out;
}

.sub-nav a:focus,
.sub-nav a:hover {
  background-color: #6382C9;
  color: #FFF;
}

.user-form h4 {
  color: #2538B1;
  padding: 8px 0 4px 0;
}

#user_tab .nav-item {
    padding: 0 2px 1px 0;
}

#user_tab .nav-link {
  border: 1px solid #DEE2E6;
  border-bottom: none;
}

#user_tab .nav-link:focus,
#user_tab .nav-link:hover,
#user_tab .nav-link.active {
    background-color: #6382C9;
    color: #FFF;
}

.tab-content {
  padding: 4px;
  border: 1px solid #DEE2E6;
  border-top: none;
  margin-bottom: 10px;
}

/* Dashboard styles */
.dash-tile-container {
  padding: 8px;
  font-size: 110%; }

.dash-tile {
  padding: 0.5em;
  border: 1px dotted #0F368F;
  background-color: #FFF;
}

.dash-tile > h4 {
  font-size: 120%;
  padding: 0.1em 0; }

.dash-tile > h4 > span {
  color: #0F368F;
}

.content h2 {
  padding: 0.3em 0; }

/* List styles */
.table thead tr {
  background-color: #BCC4E2;
  color: #000;
}

.table th {
  padding: 5px;
}

.table td {
  padding: 5px;
}

.table tr:nth-child(even) {
  background-color: #D6DDF5;
}

.btn-main {
  background-color: #4454BB;
  color: #F2F2F2;
  border-radius: 0;
  border: none; }

.btn-main:focus,
.btn-main:hover {
  background-color: #2538B1; }

.btn-secondary {
  background-color: #6382C9;
  border-radius: 0;
  color: #F2F2F2; }

.btn-secondary:focus,
.btn-secondary:hover {
  background-color: #2538B1; }

.btn-cancel {
  background-color: #999;
  border-radius: 0;
  color: #F2F2F2;
  border: none;}

.btn-cancel:focus,
.btn-cancel:hover {
  background-color: #CCC;
  color: #000;
}

ul.messages,
ul.errorlist {
  font-size: 16px;
}

ul.messages li,
ul.errorlist li {
  padding: 4px 10px;
  margin: 2px 0;
}

ul.messages .success {
  background-color: #78D168;
  border-left: 4px solid green;
}

ul.messages .error,
ul.errorlist li {
  background-color: #E7A1A2;
  border-left: 4px solid red;
}

p.help-block {
  font-size: 10pt;
  font-style: italic;
}

/* Forms */
form {
  padding: 0.4em 0.2em; }

.control-label {
  width: 25%;
  vertical-align: top;
}

.controls {
  display: inline-block;
  width: 70%; }

form input[type="text"],
form input[type="password"],
form select,
form textarea {
  width: 85%; }

form select.select-small,
form input[type="text"].input-small {
  width: 40%;
}

form input:disabled,
form select:disabled,
form textarea:disabled {
  color: #888;
  font-style: italic;
}

form textarea {
    height: 100px;
}

form .alert {
  padding: 10px 4px;
}

form .alert-error li {
  padding: 2px 4px;
  background-color: red;
  color: #FFF;
}

.leaflet-popup-content {
  color: #000; }

.footer {
  text-align: right;
  padding: 4px 8px;
  font-size: 10pt;
}

.footer a {
  color: #6382C9;
  font-weight: normal;
}

.table-promotion {
  line-height: 1;
}

.table-promotion tbody td {
  font-size: 80%;
  padding: 2px;
  text-align: center;
}

.table-promotion td:first-child {
  font-size: 100%;
  min-width: 180px;
  padding: 4px;
  text-align: left;
}

.table-overview th:nth-child(1),
.table-overview td:nth-child(1),
.table-overview th:nth-child(2),
.table-overview td:nth-child(2) {
  width: 30%;
}

.g26-expired {
  border-left: 4px solid red;
  border-right: 4px solid red;
}

.g26-expired h4 {
  color: red;
}

.bar-chart {
  width: 100%;
}

.bar-chart span {
  height: 20px;
  display: inline-block;
  margin: 0;
  padding: 0;
  text-align: center;
  font-size: 75%;
}

/* Responsive styles */
@media (min-width: 1200px) {
  .control-label {
    width: 20%; }

  .controls {
    width: 75%; }

  form input[type="text"],
  form input[type="password"],
  form select,
  form textarea {
    width: 70%; } }
@media (max-width: 1200px) {
  #img-storm {
    width: 100%;
    max-width: 100%;
  }

  .nav .nav-link {
      padding: 4px 10px;
      font-size: 12pt;
  }
}
/* Responsive styles */
@media (max-width: 768px) {
  .content {
    padding: 4px;
  }

  /* smaller fonts and main menu items */
  .content h2 {
    font-size: 20pt;
    padding: 4px 0;
  }

  .content h4 {
    font-size: 16pt;
  }

  .top-bar h5 {
    font-size: 12pt;
  }

  .logo > a > h2 {
    font-size: 16pt;
  }

  .control-label {
    width: 100%; }

  .controls {
    width: 100%; }

  form input[type="text"],
  form input[type="password"],
  form select,
  form textarea {
    width: 100%; }

  form select.select-small,
  form input[type="text"].input-small {
    width: 60%; }

  .icon-bar {
    font-size: 125%;
  }

  .sub-nav {
    padding-top: 14px;
  }

  .sub-nav h4 {
    font-size: 14pt;
  }

  .sub-nav li:first-child {
    padding-bottom: 0;
  }

  .sub-nav a {
    padding: 2px 1px 2px 10px;
    font-size: 95%;
  }

  .btn,
  .table tr th,
  .table tr td {
    font-size: 90%;
  }

  .table-promotion tr td {
    font-size: 70%;
    padding: 1px;
  }
}

@media (max-width: 576px) {

  body {
    min-width: 500px;
  }

  .nav .nav-link {
      font-size: 11pt;
  }

  .sub-nav {
    padding: 0;
  }

  .sub-nav li:first-child {
    padding: 4px;
  }

  form select.select-small,
  form input[type="text"].input-small {
    width: 100%;
  }

  .btn,
  .table tr th,
  .table tr td {
    font-size: 80%;
  }
}
