	@font-face {
		font-family: 'ScaniaSans-Regular';
		src: url('../resources/ScaniaSans-Regular.ttf') format('truetype');
		font-weight: normal;
		font-style: normal;
	}
	
	.swal2-popup, .swal2-confirm, .swal2-cancel {
		font-family: 'ScaniaSans-Regular';
	}

	html, body {
	  font-family: 'ScaniaSans-Regular';
	  background: #090A0D;
	  color: #FFFFFF;
	  margin: 0;
	  padding: 0;
	  display: flex;
	  flex-direction: column;
	  justify-content: center;
	  align-items: center;
	  height: 100vh;
	}

	.container {
	  width: 1000px;
	  height: 700px;
	  background: #1F252B;
	  border-radius: 6px;
	  box-shadow: 0 0 10px 10px rgba(0, 0, 0, 0.35);
	  position: relative;
	  overflow: hidden;
	}

	.footer {
	  margin-top: 8px;
	  margin-right: 35px;
	  font-size: 12px;
	  color: #FFFFFF;
	  text-align: right;
	  width: 100%;
	}
	
	.blocker {
	  user-select: none;
	  -webkit-user-select: none;
	  -ms-user-select: none;
	  -moz-user-select: none;
	}

/* MENU */
    .tabs {
      display: flex;
      align-items: center;
      background: #181C22;;
      border-bottom: 0px solid #090A0D;
    }

    .tab {
      max-width: 200px;
      text-align: center;
      padding: 25px;
      cursor: pointer;
      color: #FFFFFF;
	  font-size: 18px;
      transition: background 0.2s, color 0.2s;
    }

    .tab:last-child {
      border-right: none;
    }

	.tab.active, .tab:hover {
	  background: #1F252B;
	}
	
	.utility_swv {
	  margin: 0;
	  font-size: 20px;
	  padding-right: 20px;
	}
	
	.crest {
	  width: 48px;
	  padding-right: 15px;
	}

    .spacer {
      flex: 1;
    }
	
	
/* CONTENT */
    .content {
      display: none;
      padding: 20px;
    }

    .content.active {
      display: block;
    }

	.info-box {
		padding: 10px;
		width: 900px;
		margin: 0 auto;
		margin-top: 150px;
	}

	div.connect-box {
		padding: 10px;
		width: 900px;
		margin: 0 auto;
		margin-top: 50px;
	}

	.connect-box p {
		text-align: center;
	}

	.connect-box img, .connect-box button {
		display: block;
		margin: 0 auto;
	}

	.connect-box .ajax-loader {
	  width: 60px;
	  height: 60px;
	  border: 8px solid #181C22;
	  border-top: 8px solid #7287A3;
	  border-radius: 50%;
	  animation: spin 1s linear infinite;
	  display: none;
	  margin: 80px auto;
	}
	
	p.info-text {
		font-size: 20px;
		font-weight: bold;
	}

	fieldset {
	  position: relative;
	  float: right;
      width: 650px;
	  margin-top: 55px;
	  margin-right: 10px;
	  height: 400px;
	  padding: 10px;
	  border: 1px solid #CDCDCD;
	  border-radius: 4px; 
      overflow: hidden;
	}
	
	fieldset p {
	  margin: 10px;
	  margin-left: 15px;
	}
	
	fieldset p.release-text {
	  margin-top: 30px;
	}

	fieldset p.update-status-text {
		font-size: 22px;
		position: absolute;        
		bottom: 0;
		margin-bottom: 50px;
		text-align: center;
		width: 100%;
	}
	
/* BUTTONS */
	.scania-light-button {
	  background-color: #7287A3;
	  color: #181C22;
	  font-size: 22px;
	  font-weight: bold;
	  height: 58px;
	  padding: 10px 30px;
	  border: none;
	  border-radius: 4px;
	  cursor: pointer;
	  transition: background 0.1s, color 0.1s;
	  margin-left: 30%;
	  margin-bottom: 35px;
	  bottom: 0;
	}

	.scania-light-button:hover {
	  background-color: #ADBFD9;
	}

	.scania-red-button {
	  background-color: #EB0A37;
	  color: #CDCDCD;
	  font-size: 22px;
	  font-weight: bold;
	  height: 58px;
	  padding: 10px 30px;
	  border: none;
	  border-radius: 4px;
	  cursor: pointer;
	  transition: background 0.1s, color 0.1s;
	}

	.scania-red-button:hover {
	  background-color: #ed2e54;
	}
	
	#start-sequence-btn, #connect-btn, #use-device-btn {
	  display: block;
	  margin: 0 auto;
	}

	div.loader-and-btn-box {
	  position: absolute;
	  bottom: 0;
	  right: 0;
	  width: 200px;
	  height: 60px;
	  padding: 20px;
	}
	
/* RECEIVER DIV */
	.receiver_div {
	  float: left;
	  width: 240px;
	  margin-top: 55px;
	  position: relative;
	  overflow: hidden;
	}

	.receiver_div .receiver_plugged_in {
	  width: 240px;
	  position: relative;
	  z-index: 1;
	}
	
	.receiver_div .device_sno, .receiver_div .device_addr, .receiver_div .device_pass, .receiver_div .device_fwv {
	  position: absolute;
	  z-index: 2;
	  font-size: 14px;
	  right: 12%;
	  color: #eae9e8;
	}

	.receiver_div .device_sno {
	  top: 67px;
	}

	.receiver_div .device_addr {
	  top: 90px;
	}

	.receiver_div .device_pass {
	  top: 111px;
	}

	.receiver_div .device_fwv {
	  top: 134px;
	}

/* TRANSMITTER DIV */
	#transmitter_box {
	  width: 280px;
	  position: relative;
	  margin: 0 auto;
	}

	#transmitter_img {
		max-width: 100%;
	}

	#transmitter_box .device_sno,
	#transmitter_box .device_addr,
	#transmitter_box .device_pass,
	#transmitter_box .device_fwv {
	  position: absolute;
	  font-size: 11px;
	  font-weight: bold;
	  color: #000000;
	  white-space: nowrap;
	  text-align: right;
	  right: 0;
	}

	#transmitter_box .device_sno {
	  top: 7px;
	  padding-right: 57px;
	}

	#transmitter_box .device_addr {
	  top: 26px;
	  padding-right: 57px;
	}

	#transmitter_box .device_pass {
	  top: 45px;
	  padding-right: 57px;
	}

	#transmitter_box .device_fwv {
	  top: 64px;
	  padding-right: 57px;
	}

/* RECEIVER DIV */
	#receiver_box {
	  width: 200px;
	  position: relative;
	  margin: 0 auto;
	}

	#receiver_img {
		max-width: 100%;
	}

	#receiver_box .device_sno,
	#receiver_box .device_addr,
	#receiver_box .device_pass,
	#receiver_box .device_fwv {
	  position: absolute;
	  font-size: 10px;
	  font-weight: regular;
	  color: #FFFFFF;
	  white-space: nowrap;
	  text-align: right;
	  right: 0;
	}

	#receiver_box .device_sno {
	  top: 59px;
	  padding-right: 26px;
	}

	#receiver_box .device_addr {
	  top: 78px;
	  padding-right: 26px;
	}

	#receiver_box .device_pass {
	  top: 96px;
	  padding-right: 26px;
	}

	#receiver_box .device_fwv {
	  top: 115px;
	  padding-right: 26px;
	}

	
	.hidden {
	  display: none !important;
	}

	.progress-container {
	  float: left;
	  width: 300px;
	  height: 58px;
	  background-color: #181C22;
	  border-radius: 4px;
	  position: relative;
	  overflow: hidden;

	}

	.progress-bar {
	  height: 100%;
	  background-color: #00B29F;
	  width: 0%;
	  transition: width 0.4s ease;
	}

	.progress-text {
	  position: absolute;
	  top: 50%;
	  left: 50%;
	  transform: translate(-50%, -50%);
	  font-size: 16px;
	  font-weight: bold;
	  color: white;
	  pointer-events: none;
	}

    @keyframes spin {
      0% {
        transform: rotate(0deg);
      }
      100% {
        transform: rotate(360deg);
      }
    }