﻿/* ==========================================================================
   BASIC ELEMENTS AND TYPOGRAPHY
   ========================================================================== */
a.navbar-brand {
  white-space: normal;
  text-align: center;
  word-break: break-all;
}

.mg-btm {
  margin-bottom: 20px;
}

/* ==========================================================================
   CUSTOM COMPONENTS
   ========================================================================== */
.k-pager-refresh.k-button:hover {
  color: #0366d6;
}

.infobox {
  background: linear-gradient(90deg, rgb(82, 19, 127) 0%, rgb(214, 11, 132) 100%);
  color: #fff;
  padding: 24px;
}

.infobox a {
  text-decoration: none;
}

.infoboxheader {
  font-size: 18px;
  line-height: 1.4;
  color: rgb(0, 163, 255);
}

.infoboxtext {
  font-size: 25px;
  line-height: 1.4;
  color: #fff;
}

/* ==========================================================================
   LAYOUT AND CONTAINERS
   ========================================================================== */
html {
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 14px;
  }
}
.border-top {
  border-top: 1px solid #e5e5e5;
}

.border-bottom {
  border-bottom: 1px solid #e5e5e5;
}

.box-shadow {
  box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.05);
}

button.accept-policy {
  font-size: 1rem;
  line-height: inherit;
}

html {
  position: relative;
  min-height: 100%;
}

.searchbox {
  margin-bottom: 20px;
}

/* ==========================================================================
   MENU
   ========================================================================== */
.dropdown-item:hover {
  color: #000;
  font-weight: bold;
}

/* ==========================================================================
   FORM ELEMENTS
   ========================================================================== */
.form-control[type=checkbox] {
  width: 1.5em;
}

.field-validation-error > .k-tooltip-content {
  color: #fff;
}

/* ==========================================================================
   HEADER AND NAVIGATION
   ========================================================================== */
#header {
  margin-bottom: 30px;
}

#header_topbar {
  /*float: left;*/
  width: 100%;
  display: block;
  height: 32px;
  background-image: linear-gradient(90deg, #003f72, #035188, #05649f, #0477b5, #008bcc);
  line-height: 32px;
  font-size: 14px;
}

#header_topbar a {
  color: #fff;
  font-size: 14px;
}

#header_topbar svg.icon-for-text {
  margin-right: 5px;
}

#navbar-language {
  height: 32px;
  line-height: 32px;
  position: relative !important;
}

nav.navbar {
  z-index: 800;
}

.modal {
  z-index: 12100;
}

#navbar-language .navbar-nav {
  margin: 0 auto;
  position: static !important;
}

#navbar-language .nav-item.dropdown {
  position: static !important;
}

#navbar-language .dropdown-menu {
  /*min-width: 0;*/
  background-color: #0477b5;
  border: none;
  border-radius: unset;
  /* Fix dropdown positioning to be consistent between hover and click */
  position: absolute !important;
  z-index: 1000;
}

#navbar-language .navbar-nav > li {
  line-height: 1rem;
  color: #000;
}

#navbar-language .navbar-nav > li > a {
  padding: 0.6rem 20px 0 20px;
}

#navbar-language .navbar-nav li a {
  text-decoration: none;
}

#navbar-language .dropdown-menu > li > a:focus,
#navbar-language .dropdown-menu > li > a:hover,
#navbar-language .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus,
#navbar-language .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover {
  color: #003868;
  background-color: #0477b5;
}

#navbar-language .nav > li > a:focus, .nav > li > a:hover {
  background: none;
}

.navbar-toggler:hover {
  background-color: #eee;
}

#toast-container {
  margin-top: 30px;
}

button[name=navbutton], button[name=navbutton].btn-default, button[name=navbutton].btn-primary {
  float: right;
  margin-left: 10px;
}

#nav-logo {
  width: 135px;
  margin: 0.5rem 0;
}

/* ==========================================================================
   GRID AND TABLE STYLES
   ========================================================================== */
/* Make the expand/collapse column as narrow as possible */
.k-grid .k-hierarchy-col {
  width: 16px;
}

.k-grid .k-detail-row .k-detail-cell {
  padding: 0;
}

.k-command-cell > .k-button {
  margin-bottom: auto;
  margin-top: auto;
}

/*.k-grid .k-hierarchy-col {width:auto;}*/
.k-grid td {
  overflow: visible;
}

.k-grid-header th.k-header {
  font-weight: bold;
}

.k-edit-form-container {
  overflow: hidden;
}

.k-edit-form-container .k-edit-buttons {
  bottom: auto;
  text-align: center;
}

.k-window-titlebar .k-window-actions {
  position: relative;
}

.k-pane-wrapper .k-content {
  overflow: visible;
}

.k-tabstrip .k-content {
  overflow: visible;
}

.k-pane-wrapper .k-grid-column-menu .k-content, .k-pane-wrapper .k-grid-edit-form .k-content, .k-pane-wrapper .k-grid-filter-menu .k-content, .k-pane-wrapper .k-popup-edit-form .k-content {
  overflow-y: visible;
}

.k-pane-wrapper .k-view {
  position: relative;
}

.k-grid-edit-row > td > .text-box {
  width: 100%;
}

.k-window {
  z-index: 12200 !important;
}

.tabstripdevicemanagement .k-tabstrip-content {
  /*margin-top: 0px;*/
  padding-bottom: 40px;
}

form footer button {
  float: right;
}

.norecords {
  margin: 5px auto;
}

/* ==========================================================================
   TIMELINE
   ========================================================================== */
#cd-timeline {
  position: relative;
  padding: 2em 0;
  margin-bottom: 2em;
}

#cd-timeline::before {
  /* this is the vertical line */
  content: "";
  position: absolute;
  top: 0;
  left: 18px;
  height: 100%;
  width: 4px;
  background: #d7e4ed;
}

@media only screen and (min-width: 800px) {
  #cd-timeline {
    margin-bottom: 3em;
  }
  #cd-timeline::before {
    left: 50%;
    margin-left: -2px;
  }
}
.cd-timeline-block {
  position: relative;
  margin: 2em 0;
}

.cd-timeline-block:after {
  content: "";
  display: table;
  clear: both;
}

.cd-timeline-block:first-child {
  margin-top: 0;
}

.cd-timeline-block:last-child {
  margin-bottom: 0;
}

@media only screen and (min-width: 800px) {
  .cd-timeline-block {
    margin: 4em 0;
  }
  .cd-timeline-block:first-child {
    margin-top: 0;
  }
  .cd-timeline-block:last-child {
    margin-bottom: 0;
  }
}
.cd-timeline-img {
  position: absolute;
  top: 0;
  left: 0;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  box-shadow: 0 0 0 4px white, inset 0 2px 0 rgba(0, 0, 0, 0.08), 0 3px 0 4px rgba(0, 0, 0, 0.05);
}

.cd-timeline-img img {
  display: block;
  width: 24px;
  height: 24px;
  position: relative;
  left: 50%;
  top: 50%;
  margin-left: -12px;
  margin-top: -12px;
}

.cd-timeline-img .timeline-icon {
  margin-left: 9px;
  margin-top: 14px;
}

.cd-timeline-img.cd-position {
  background: #c36cdc;
}

.cd-timeline-img.cd-voicealarm {
  background: #2770e4;
}

.cd-timeline-img.cd-techalarm-open {
  background: #c03b44;
}

.cd-timeline-img.cd-techalarm-close {
  background: #1db100;
}

.cd-timeline-img.cd-techalarm-info {
  background: #e9f822;
}

.cd-timeline-img.cd-event-communication {
  background: #9933ff;
}

.cd-timeline-img.cd-event-device {
  background: #ff8c1a;
}

.cd-timeline-img.cd-info {
  background: #acb7c0;
}

@media only screen and (min-width: 800px) {
  .cd-timeline-img {
    width: 70px;
    height: 70px;
    left: 50%;
    margin-left: -35px;
    /* Force Hardware Acceleration in WebKit */
    -webkit-transform: translateZ(0);
    -webkit-backface-visibility: hidden;
  }
  .cssanimations .cd-timeline-img.is-hidden {
    visibility: hidden;
  }
  .cssanimations .cd-timeline-img.bounce-in {
    visibility: visible;
    -webkit-animation: cd-bounce-1 0.6s;
    -moz-animation: cd-bounce-1 0.6s;
    animation: cd-bounce-1 0.6s;
  }
}
@-webkit-keyframes cd-bounce-1 {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.5);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale(1.2);
  }
  100% {
    -webkit-transform: scale(1);
  }
}
@-moz-keyframes cd-bounce-1 {
  0% {
    opacity: 0;
    -moz-transform: scale(0.5);
  }
  60% {
    opacity: 1;
    -moz-transform: scale(1.2);
  }
  100% {
    -moz-transform: scale(1);
  }
}
@keyframes cd-bounce-1 {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.5);
    -moz-transform: scale(0.5);
    -ms-transform: scale(0.5);
    -o-transform: scale(0.5);
    transform: scale(0.5);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale(1.2);
    -moz-transform: scale(1.2);
    -ms-transform: scale(1.2);
    -o-transform: scale(1.2);
    transform: scale(1.2);
  }
  100% {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
  }
}
.cd-timeline-content {
  position: relative;
  margin-left: 60px;
  background: white;
  border-radius: 0.25em;
  padding: 1em;
  box-shadow: 2px 3px 0 #EEEEEE;
  background-color: #FEFEEF;
}

.cd-timeline-content:after {
  content: "";
  display: table;
  clear: both;
}

.cd-timeline-content.tl_new {
  box-shadow: 2px 3px 0 #A0A0A0;
  background-color: #EFEFEF;
}

.cd-timeline-content h2 {
  color: #303e49;
}

.cd-timeline-content p, .cd-timeline-content .cd-read-more, .cd-timeline-content .cd-date {
  font-size: 13px;
  font-size: 0.8125rem;
}

.cd-timeline-content .cd-read-more, .cd-timeline-content .cd-date {
  display: inline-block;
}

.cd-timeline-content p {
  margin: 1em 0;
  line-height: 1.6;
}

.cd-timeline-content .cd-read-more {
  float: right;
  padding: 0.8em 1em;
  background: #acb7c0;
  color: white;
  border-radius: 0.25em;
}

.no-touch .cd-timeline-content .cd-read-more:hover {
  background-color: #bac4cb;
}

.cd-timeline-content .cd-date {
  float: left;
  padding: 0.8em 0;
  opacity: 0.7;
}

.cd-timeline-content::before {
  content: "";
  position: absolute;
  top: 16px;
  right: 100%;
  height: 0;
  width: 0;
  border: 7px solid transparent;
  border-right: 7px solid #EFEFEF;
}

@media only screen and (min-width: 640px) {
  .cd-timeline-content h2 {
    margin: 10px;
  }
  .cd-timeline-content p {
    font-size: 16px;
    font-size: 1rem;
  }
  .cd-timeline-content .cd-read-more, .cd-timeline-content .cd-date {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media only screen and (min-width: 800px) {
  .cd-timeline-content {
    margin-left: 0;
    padding: 1.6em;
    width: 45%;
  }
  .cd-timeline-content::before {
    top: 24px;
    left: 100%;
    border-color: transparent;
    border-left-color: #EFEFEF;
  }
  .cd-timeline-content .cd-read-more {
    float: left;
  }
  .cd-timeline-content .cd-date {
    position: absolute;
    width: 100%;
    left: 122%;
    top: 6px;
    font-size: 16px;
    font-size: 1rem;
  }
  .cd-timeline-block:nth-child(even) .cd-timeline-content {
    float: right;
  }
  .cd-timeline-block:nth-child(even) .cd-timeline-content::before {
    top: 24px;
    left: auto;
    right: 100%;
    border-color: transparent;
    border-right-color: #EFEFEF;
  }
  .cd-timeline-block:nth-child(even) .cd-timeline-content .cd-read-more {
    float: right;
  }
  .cd-timeline-block:nth-child(even) .cd-timeline-content .cd-date {
    left: auto;
    right: 122%;
    text-align: right;
  }
  .cssanimations .cd-timeline-content.is-hidden {
    visibility: hidden;
  }
  .cssanimations .cd-timeline-content.bounce-in {
    visibility: visible;
    -webkit-animation: cd-bounce-2 0.6s;
    -moz-animation: cd-bounce-2 0.6s;
    animation: cd-bounce-2 0.6s;
  }
}
@media only screen and (min-width: 800px) {
  /* inverse bounce effect on even content blocks */
  .cssanimations .cd-timeline-block:nth-child(even) .cd-timeline-content.bounce-in {
    -webkit-animation: cd-bounce-2-inverse 0.6s;
    -moz-animation: cd-bounce-2-inverse 0.6s;
    animation: cd-bounce-2-inverse 0.6s;
  }
}
@-webkit-keyframes cd-bounce-2 {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-100px);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateX(20px);
  }
  100% {
    -webkit-transform: translateX(0);
  }
}
@-moz-keyframes cd-bounce-2 {
  0% {
    opacity: 0;
    -moz-transform: translateX(-100px);
  }
  60% {
    opacity: 1;
    -moz-transform: translateX(20px);
  }
  100% {
    -moz-transform: translateX(0);
  }
}
@keyframes cd-bounce-2 {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-100px);
    -moz-transform: translateX(-100px);
    -ms-transform: translateX(-100px);
    -o-transform: translateX(-100px);
    transform: translateX(-100px);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateX(20px);
    -moz-transform: translateX(20px);
    -ms-transform: translateX(20px);
    -o-transform: translateX(20px);
    transform: translateX(20px);
  }
  100% {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
  }
}
@-webkit-keyframes cd-bounce-2-inverse {
  0% {
    opacity: 0;
    -webkit-transform: translateX(100px);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateX(-20px);
  }
  100% {
    -webkit-transform: translateX(0);
  }
}
@-moz-keyframes cd-bounce-2-inverse {
  0% {
    opacity: 0;
    -moz-transform: translateX(100px);
  }
  60% {
    opacity: 1;
    -moz-transform: translateX(-20px);
  }
  100% {
    -moz-transform: translateX(0);
  }
}
@keyframes cd-bounce-2-inverse {
  0% {
    opacity: 0;
    -webkit-transform: translateX(100px);
    -moz-transform: translateX(100px);
    -ms-transform: translateX(100px);
    -o-transform: translateX(100px);
    transform: translateX(100px);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateX(-20px);
    -moz-transform: translateX(-20px);
    -ms-transform: translateX(-20px);
    -o-transform: translateX(-20px);
    transform: translateX(-20px);
  }
  100% {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
  }
}
