html, body {
  font-size: 1rem;
  font-family: Helvetica,Arial,sans-serif;
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  background: white; }

a {
  color: black;
  text-decoration: none; }

a:hover {
  text-decoration: none; }

.bold {
  font-weight: 700; }

#login-panel {
  width: 100vw;
  height: 100vh;
  padding-left: 20px;
  vertical-align: middle;
  display: table-cell; }
  #login-panel input {
    padding: 5px;
    margin: 5px; }

.layout-container {
  position: relative;
  display: grid;
  height: 100vh;
  grid-template-columns: 200px 1fr;
  grid-template-rows: 50px 1fr 25px;
  grid-template-areas: "brand header" "nav main" "nav footer"; }
  .layout-container .brand {
    grid-area: brand;
    background: #2a3d5d;
    line-height: 50px;
    padding: 0 5px; }
  .layout-container .layout-header {
    grid-area: header;
    background: white;
    color: #444444;
    border-bottom: solid thin #e0dfdf;
    line-height: 50px;
    padding: 0 10px;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-rows: 1fr; }
    .layout-container .layout-header a {
      color: #444444; }
    .layout-container .layout-header .header-center {
      text-align: center; }
      .layout-container .layout-header .header-center input {
        width: 100%;
        border: thin solid silver;
        text-align: center; }
    .layout-container .layout-header .header-right {
      text-align: right; }
  .layout-container .layout-nav {
    grid-area: nav;
    background: #3c4b64;
    color: #cccccc; }
    .layout-container .layout-nav a {
      color: #cccccc; }
    .layout-container .layout-nav li {
      line-height: 20px;
      list-style-type: none; }
  .layout-container .layout-main {
    grid-area: main;
    background: #ccc; }
  .layout-container .layout-footer {
    grid-area: footer;
    color: #3c4b64;
    background: #ebedef;
    line-height: 25px;
    padding: 0 10px;
    font-size: 0.75rem;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr; }
    .layout-container .layout-footer a {
      margin-right: 1em;
      color: #444; }
    .layout-container .layout-footer .footer-left {
      height: 25px; }
    .layout-container .layout-footer .footer-right {
      height: 25px;
      text-align: right; }
  .layout-container .layout-slide {
    grid-area: slide;
    background: pink; }

.content-header {
  background: white;
  font-size: 0.8em;
  padding: 0 10px;
  box-shadow: 0 2px 2px 0 rgba(60, 75, 100, 0.14), 0 3px 1px -2px rgba(60, 75, 100, 0.12), 0 1px 5px 0 rgba(60, 75, 100, 0.2); }

.main-menu {
  display: inline; }
  .main-menu ul {
    padding: 0;
    display: inline; }
    .main-menu ul li {
      display: inline;
      line-height: 50px; }
  .main-menu a {
    height: 50px;
    padding: 16px 10px; }
  .main-menu a:hover {
    background: #eee; }
  .main-menu a.active {
    background: #e8e6e6; }

.apps-menu ul {
  margin: 0;
  padding: 0; }
  .apps-menu ul li {
    line-height: 2em;
    display: block;
    width: 100%;
    clear: both;
    padding: 0; }
  .apps-menu ul li:hover {
    background: #50617d; }
  .apps-menu ul .apps-menu-item {
    line-height: 2em;
    padding: 5px; }
    .apps-menu ul .apps-menu-item .app-icon {
      padding: 10px;
      display: inline; }
      .apps-menu ul .apps-menu-item .app-icon i {
        width: 1em;
        display: inline-block;
        line-height: 1em; }
    .apps-menu ul .apps-menu-item .app-link {
      padding: 10px 0;
      display: inline; }
  .apps-menu ul .apps-menu-item.active {
    background: #465c80; }

.brand {
  line-height: 50px;
  color: #cccccc;
  font-weight: bold;
  font-size: 1.2rem; }
  .brand img {
    height: 30px;
    padding-top: 5px;
    display: inline;
    float: left;
    margin: 5px; }

.content .danger, .danger, #delete-action {
  background: #b42323;
  color: white;
  box-shadow: none;
  border-color: #e55353; }
  .content .danger:hover, .danger:hover, #delete-action:hover {
    background: #e55353;
    border-color: #e27f7f;
    color: white;
    transition: background 0.2s ease-out; }

.content .caution, .caution {
  background: #fde34f;
  color: black;
  box-shadow: none;
  border-color: #f3df85; }
  .content .caution:hover, .caution:hover {
    background: #e7e569;
    border-color: #f3df85;
    color: black;
    transition: background 0.2s ease-out; }

.tabulator {
  font-size: 12px;
  border: thin solid #ddd; }
  .tabulator .tabulator-header {
    font-weight: normal;
    border-bottom: thin solid #ddd; }
    .tabulator .tabulator-header .tabulator-col {
      border-right: thin solid #ddd; }
  .tabulator .tabulator-cell {
    border-right: thin solid #ddd; }

.card-highlight {
  background: #e1f5e1;
  border: thin solid green; }

a.badge-success-action {
  background: #dbf3db;
  color: #444; }

.chat-counter {
  background: #ffc107;
  color: #212529;
  margin-left: 0.5rem;
  padding: 0 0.25rem;
  border-radius: 5px;
  font-size: 0.9rem; }

.outline {
  border: thin solid silver; }

.outliner {
  border: thin solid red; }

.outlineg {
  border: thin solid green; }

.outlinep {
  border: thin solid purple; }

.outlineb {
  border: thin solid blue; }
