﻿/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/



html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
    display: block;
}

body {
    line-height: 1;
}

ol, ul {
    list-style: none;
}

blockquote, q {
    quotes: none;
}

    blockquote:before, blockquote:after,
    q:before, q:after {
        content: '';
        content: none;
    }

table {
    border-collapse: collapse;
    border-spacing: 0;
}

html * {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.showMobileOnly {
  display: none;
}
@media only screen and (max-height: 500px), (max-width: 600px) {
  .showMobileOnly {
    display: block;
  }
}
@media only screen and (max-height: 500px), (max-width: 600px) {
  .hideMobile {
    display: none;
  }
}
/*
@linkColor: #ff6a00;
@borderColor: #ddd;
    */
/*
// Buttons
@altButtonColor: #999;
@alt2ButtonColor: #0094ff;
    */
/*
    font-family:'Helvetica Neue LT W02_41488880';
font-family:'Helvetica Neue LT W02_71488916';


    // LIGHT: Helvetica Neue LT W02_41488880
    // BOLD: Helvetica Neue LT W02_71488916
*/
/* Color scheme */
/*Modals*/
/* Breakpoints */
.spinner-bar {
  position: absolute;
  /*width: 300px;*/
  height: 6px;
  background-color: #666;
  left: 0;
  right: 0;
  top: 0;
  opacity: 0;
  z-index: 200;
  -moz-transition: all ease-out 0.1s;
  -o-transition: all ease-out 0.1s;
  -webkit-transition: all ease-out 0.1s;
  transition: all ease-out 0.1s;
}
.spinner-bar.show {
  opacity: 1;
}
.spinner-bar.page {
  right: 0;
  width: auto;
  left: 0;
  top: 0;
}
.spinner-bar:before {
  display: block;
  content: ' ';
  position: absolute;
  top: 0;
  bottom: 0;
  background-color: #c8102e;
  animation: swoop 1.5s linear infinite;
}
@keyframes swoop {
  0% {
    left: 0;
    right: 100%;
  }
  30% {
    left: 0;
  }
  60% {
    left: 50%;
    right: 0;
  }
  100% {
    left: 100%;
    right: 0;
  }
}
.loader {
  position: fixed;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  background-color: #333;
  /*
    background: #333333;
    background: -moz-radial-gradient(center, ellipse cover, #333333 0%, #111111 100%);
    background: -o-radial-gradient(center, ellipse cover, #333333 0%, #111111 100%);
    background: -webkit-gradient(radial, center center, 0px, center center, 100%, color-stop(0%, #333333), color-stop(100%, #111111));
    background: -webkit-radial-gradient(center, ellipse cover, #333333 0%, #111111 100%);
    background: -ms-radial-gradient(center, ellipse cover, #333333 0%, #111111 100%);
        */
  z-index: 1000;
  -moz-transition: opacity linear 0.4s;
  -o-transition: opacity linear 0.4s;
  -webkit-transition: opacity linear 0.4s;
  transition: opacity linear 0.4s;
  opacity: 1;
}
.loader .center {
  width: 400px;
  height: 200px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -200px;
  margin-top: -100px;
  text-align: center;
  /*background-image: url(../../gfx/logo_talgo.png);
        background-position: center 0;
        background-repeat: no-repeat;
        background-size: 80px auto;*/
  /*padding-top: 150px;*/
  color: #999;
  font-size: 0.8em;
}
.loader.hide {
  opacity: 0;
}
.loader .spinner {
  width: 100px;
  height: 100px;
  /*background-color: #333;*/
  background-image: url(../gfx/logo_talgo.png);
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  margin: 0px auto;
  margin-bottom: 50px;
  /* TEST - disable preloader animation to check if IPad issue */
  /* -webkit-animation: sk-rotateplane 1.2s infinite ease-in-out;
        animation: sk-rotateplane 1.2s infinite ease-in-out;*/
}
@-webkit-keyframes sk-rotateplane {
  0% {
    -webkit-transform: perspective(120px);
  }
  50% {
    -webkit-transform: perspective(120px) rotateY(180deg);
  }
  100% {
    -webkit-transform: perspective(120px) rotateY(180deg) rotateX(180deg);
  }
}
@keyframes sk-rotateplane {
  0% {
    transform: perspective(120px) rotateY(-20deg);
    -webkit-transform: perspective(120px) rotateY(-20deg);
  }
  /*50% {
        transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg);
        -webkit-transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg)
    }*/
  50% {
    transform: perspective(120px) rotateY(20deg);
    -webkit-transform: perspective(120px) rotateY(20deg);
  }
  100% {
    transform: perspective(120px) rotateY(-20deg);
    -webkit-transform: perspective(120px) rotateY(-20deg);
  }
}
.device-orientation-info {
  position: fixed;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  background-color: rgba(20, 20, 20, 0.97);
  z-index: 300;
  display: none;
}
.device-orientation-info .center {
  width: 400px;
  height: 200px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -200px;
  margin-top: -100px;
  text-align: center;
  color: #ccc;
  font-size: 1rem;
}
.device-orientation-info .center .rotate-device {
  position: relative;
  margin-bottom: 4rem;
}
.device-orientation-info .center .rotate-device .fa-refresh {
  font-size: 2rem;
  color: #fff;
}
.device-orientation-info .center .rotate-device .fa-tablet {
  transform: rotate(90deg);
  position: absolute;
  top: -3rem;
  left: 50%;
  font-size: 8rem;
  margin-left: -3.2rem;
  color: #ccc;
}
.device-orientation-info.show {
  display: block;
}
::-webkit-scrollbar {
  width: 10px;
  cursor: pointer !important;
}
::-webkit-scrollbar-thumb {
  border-radius: 6px;
  /*border: 2px solid #666;*/
  background-color: #666;
  cursor: pointer !important;
}
body,
html {
  position: fixed;
  touch-action: none;
}
html {
  height: 100%;
}
small {
  font-size: 0.9em;
}
h1 {
  margin-top: 1em;
  font-family: 'Helvetica Neue LT W02_41488880', Arial, sans-serif;
  font-size: 2.5em;
  line-height: 1em;
  margin-bottom: 1em;
}
h1.constrain {
  width: 50em;
  max-width: 100%;
  margin: 1em auto 0.5em auto;
  text-align: center;
}
h1 span {
  display: block;
  margin-bottom: 0.5em;
}
h1 span.primary {
  /*max-width: 540px;*/
  max-width: 16em;
  display: block;
  margin: 0 auto 0.25em;
}
h1 span.secondary {
  padding-top: 0.25em;
  font-size: 0.7em;
  margin-bottom: 1em;
}
h2 {
  font-family: 'Helvetica Neue LT W02_41488880', Arial, sans-serif;
  /*margin: 0.25em;*/
}
.centered-text {
  text-align: center;
}
strong,
b {
  font-family: 'Helvetica Neue LT W02_41488880', Arial, sans-serif;
}
body {
  background-color: #999;
  overflow: hidden;
  height: 100%;
  width: 100%;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
body.ipad {
  width: 1020px;
  height: 750px;
}
.hidden {
  display: none !important;
}
.btn {
  text-align: center;
  cursor: pointer;
  display: inline-block;
  min-width: 5.7em;
  color: white;
  text-decoration: none;
}
.btn.btn-large {
  font-size: 1.3em;
  padding: 0.2em 0.5em;
}
.btn.btn-toolbutton {
  background-color: #555555;
  color: #ddd;
  width: 100%;
  display: block;
  padding: 10px 0;
  -moz-transition: all ease-out 0.2s;
  -o-transition: all ease-out 0.2s;
  -webkit-transition: all ease-out 0.2s;
  transition: all ease-out 0.2s;
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12);
}
.btn.btn-toolbutton:hover {
  color: #fff;
  background-color: #6f6f6f;
}
.btn i.fa {
  margin-right: 0.5em;
}
.ui {
  height: 100%;
  width: 100%;
  min-width: 1000px;
  min-height: 600px;
  overflow: hidden;
  position: relative;
  background-color: #fff;
}
.ui .header {
  position: absolute;
  left: 0;
  right: 0;
  height: 4.6rem;
  top: 0;
  background-color: #000;
  z-index: 110;
}
.ui .header .talgo-logo {
  background-image: url(../gfx/Talgo_PlusConcept.png);
  width: 17rem;
  height: 4rem;
  background-position: top left;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  z-index: 110;
  left: 0.6rem;
  top: 0.3rem;
}
.ui .header .user-bar {
  position: absolute;
  right: 0;
  top: 0;
  color: #fff;
}
.ui .header .user-bar .btn {
  height: 4.6rem;
  width: 4.6rem;
  line-height: 4.6rem;
  padding: 0;
  margin: 0;
  background-color: transparent;
  border: none;
  min-width: 20px;
  font-size: 1.5em;
  display: none;
}
.ui .header .user-bar .btn[data-action='fullscreen'] {
  display: inline-block;
}
.ui .header .user-bar a {
  height: 4.6rem;
  line-height: 4.6rem;
  vertical-align: top;
  text-decoration: none;
  color: #fff;
  display: inline-block;
  margin-right: 2em;
}
@media only screen and (max-width: 1150px) {
  .ui .header .user-bar a {
    margin-right: 1em;
    font-size: 0.8em;
  }
}
.ui .header .user-bar a:hover {
  text-decoration: underline;
}
.ui .header .steps {
  color: #909090;
  position: absolute;
  left: 22rem;
  top: 0;
  font-size: 1.14em;
}
@media only screen and (max-width: 1150px) {
  .ui .header .steps {
    font-size: 1em;
    left: 20rem;
  }
}
.ui .header .steps .step {
  float: left;
  margin-right: 1em;
  line-height: 4.6rem;
  text-align: center;
  cursor: pointer;
  display: inline-block;
  min-width: 5.7em;
  position: relative;
  height: 4.6rem;
  -moz-transition: all ease-out 0.2s;
  -o-transition: all ease-out 0.2s;
  -webkit-transition: all ease-out 0.2s;
  transition: all ease-out 0.2s;
}
.ui .header .steps .step:hover {
  color: #eee;
}
.ui .header .steps .step:after {
  content: "\f0da";
  font-family: 'FontAwesome';
  display: inline-block;
  padding-left: 2rem;
  color: #909090;
}
@media only screen and (max-width: 1150px) {
  .ui .header .steps .step:after {
    padding-left: 1rem;
  }
}
.ui .header .steps .step[data-step='2'],
.ui .header .steps .step[data-step='0'] {
  display: none;
}
.ui .header .steps .step[data-step='4']:after {
  content: "";
  display: none;
}
.ui .footer {
  display: none;
  position: absolute;
  left: 0;
  right: 18rem;
  bottom: 0;
  height: 3.2rem;
  background-color: #000;
}
.ui .workspace {
  position: absolute;
  left: 0;
  right: 0;
  top: 4.6rem;
  bottom: 3.2rem;
  visibility: hidden;
}
.ui .workspace .environment-rotation {
  position: absolute;
  bottom: 2rem;
  width: 5rem;
  left: 2rem;
  opacity: 0.5;
}
.ui .workspace .environment-rotation img {
  height: 3rem;
}
.ui .workspace .sidepanel {
  position: absolute;
  right: 0;
  top: 0;
  width: 18rem;
  bottom: -3.2rem;
}
.ui .workspace .sidepanel:after {
  content: ' ';
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 5px;
  background-image: -webkit-linear-gradient(-90deg, rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0));
  background-image: -moz-linear-gradient(-90deg, rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0));
  background-image: -ms-linear-gradient(-90deg, rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0));
  background-image: -o-linear-gradient(-90deg, rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0));
  background-image: linear-gradient(90deg, rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0));
  border-left: 1px solid #222;
}
.ui .workspace .sidepanel .top-section {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  bottom: 28.2rem;
  -moz-transition: all cubic-bezier(0.8, 0, 0.2, 1) 0.5s;
  -o-transition: all cubic-bezier(0.8, 0, 0.2, 1) 0.5s;
  -webkit-transition: all cubic-bezier(0.8, 0, 0.2, 1) 0.5s;
  transition: all cubic-bezier(0.8, 0, 0.2, 1) 0.5s;
}
@media only screen and (max-height: 700px) {
  .ui .workspace .sidepanel .top-section {
    bottom: 22.2rem;
  }
}
.ui .workspace .sidepanel .tools {
  -moz-transition: all cubic-bezier(0.8, 0, 0.2, 1) 0.5s;
  -o-transition: all cubic-bezier(0.8, 0, 0.2, 1) 0.5s;
  -webkit-transition: all cubic-bezier(0.8, 0, 0.2, 1) 0.5s;
  transition: all cubic-bezier(0.8, 0, 0.2, 1) 0.5s;
  position: absolute;
  background-color: #2b2b2b;
  color: #fff;
  right: 0;
  width: 18rem;
  height: 25rem;
  bottom: 3.2rem;
}
.ui .workspace .sidepanel .tools .toggle-expanded-view {
  position: absolute;
  left: 50%;
  transform: translate(-50%, -50%);
  cursor: pointer;
  top: 0;
  width: 3rem;
  height: 1.8rem;
  line-height: 1.8rem;
  background-color: #c8102e;
  z-index: 10;
  text-align: center;
  color: #fff;
  font-size: 1.2rem;
}
.ui .workspace .sidepanel .tools .toggle-expanded-view i {
  -moz-transition: all cubic-bezier(0.8, 0, 0.2, 1) 0.5s;
  -o-transition: all cubic-bezier(0.8, 0, 0.2, 1) 0.5s;
  -webkit-transition: all cubic-bezier(0.8, 0, 0.2, 1) 0.5s;
  transition: all cubic-bezier(0.8, 0, 0.2, 1) 0.5s;
}
@media only screen and (max-height: 700px) {
  .ui .workspace .sidepanel .tools {
    height: 19rem;
  }
}
.ui .workspace .sidepanel .tools .section {
  border-bottom: 1px solid #555555;
  padding: 1.2em 1.667em;
}
@media only screen and (max-height: 700px) {
  .ui .workspace .sidepanel .tools .section {
    padding-bottom: 0.75em;
  }
}
.ui .workspace .sidepanel .tools .section:last-child {
  border-bottom: none;
}
.ui .workspace .sidepanel .tools .btn {
  margin-top: 0.5em;
  margin-bottom: 0.5em;
}
@media only screen and (max-height: 700px) {
  .ui .workspace .sidepanel .tools .btn {
    margin-bottom: 0.5em;
  }
}
.ui .workspace .sidepanel .tools .base-plate .base-plate-summary {
  -moz-transition: all ease-out 0.2s;
  -o-transition: all ease-out 0.2s;
  -webkit-transition: all ease-out 0.2s;
  transition: all ease-out 0.2s;
  opacity: 1;
  margin-bottom: 10px;
  margin-top: 10px;
  font-size: 0.9em;
  line-height: 1.4em;
}
.ui .workspace .sidepanel .tools .base-plate .base-plate-summary .base-plate-product {
  opacity: 0.3;
  /* TEMP*/
}
.ui .workspace .sidepanel .tools .base-plate .base-plate-summary.excluded {
  opacity: 0.6;
}
.ui .workspace .sidepanel .tools .base-plate .base-plate-summary.excluded .price-preview {
  /*display: none;*/
  visibility: hidden;
}
.ui .workspace .sidepanel .tools .base-plate .base-plate-summary .base-plate-verbose {
  display: none;
}
@media only screen and (min-height: 700px) {
  .ui .workspace .sidepanel .tools .base-plate .base-plate-summary .base-plate-verbose {
    display: block;
  }
}
.ui .workspace .sidepanel .price-preview {
  font-family: 'Helvetica Neue LT W02_41488880', Arial, sans-serif;
  line-height: 1.5em;
  margin-top: 1em;
}
.ui .workspace .sidepanel .price-preview .price-value {
  font-size: 1.6em;
  font-family: 'Helvetica Neue LT W02_71488916', Arial, sans-serif;
}
@media only screen and (max-height: 700px) {
  .ui .workspace .sidepanel .price-preview {
    margin-top: 0.5em;
  }
}
.ui .workspace .sidepanel .preset-selector {
  display: none;
}
.ui .workspace .sidepanel .preset-selector:after {
  content: ' ';
  display: block;
  float: none;
  clear: both;
  width: 0;
  height: 0;
  overflow: hidden;
}
.ui .workspace .sidepanel .preset-selector:before {
  content: ' ';
  display: block;
  float: none;
  clear: both;
  width: 0;
  height: 0;
  overflow: hidden;
}
.ui .workspace .sidepanel .preset-selector h3 {
  padding-top: 15px;
  text-align: center;
  font-family: 'Helvetica Neue LT W02_71488916', Arial, sans-serif;
}
.ui .workspace .sidepanel .preset-selector p {
  padding: 0 20px;
}
.ui .workspace .sidepanel .preset-selector.show {
  display: block;
}
.ui .workspace .sidepanel .preset-selector .presets {
  top: 100px;
}
.ui .workspace .sidepanel[data-editor-mode='custom'] .btn[data-action='go-custom'] {
  display: none;
}
.ui .workspace .sidepanel[data-editor-mode='custom'] .element-catalogue {
  display: block;
}
.ui .workspace .sidepanel[data-editor-mode='prebuild'] .btn[data-action='go-prebuild'] {
  display: none;
}
.ui .workspace .sidepanel[data-editor-mode='prebuild'] .preset-selector {
  display: block;
}
.ui .workspace .sidepanel[data-allow-mode-change='false'] .btn[data-action='go-prebuild'] {
  display: none;
}
.ui .workspace .sidepanel[data-allow-mode-change='false'] .btn[data-action='go-custom'] {
  display: none;
}
.ui .workspace .sidepanel.expanded-element-catalogue .top-section {
  bottom: 12.7rem;
}
@media only screen and (max-height: 700px) {
  .ui .workspace .sidepanel.expanded-element-catalogue .top-section {
    bottom: 11.4rem;
  }
}
.ui .workspace .sidepanel.expanded-element-catalogue .tools {
  height: 9.5rem;
}
@media only screen and (max-height: 700px) {
  .ui .workspace .sidepanel.expanded-element-catalogue .tools {
    height: 8.2rem;
  }
}
.ui .workspace .sidepanel.expanded-element-catalogue .tools .toggle-expanded-view i {
  transform: rotate(180deg);
}
.ui .workspace .scene {
  position: absolute;
  left: 0;
  top: 0;
  right: 18rem;
  bottom: 0;
  z-index: 100;
}
.ui .workspace .scene canvas {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  outline: none;
  touch-action: none;
  -ms-touch-action: none;
}
.ui .workspace .guide {
  z-index: 110;
  box-shadow: rgba(0, 0, 0, 0.8) 6px 12px 24px;
  position: absolute;
  left: 50%;
  margin-left: -22rem;
  width: 44rem;
  top: 50%;
  transform: translateY(-50%);
  display: none;
  color: #fff;
  background-color: rgba(50, 50, 50, 0.95);
  border-top: 8px solid #c8102e;
  padding: 1.429rem 2.857rem 2.143rem 2.143rem;
  padding-bottom: 3.5rem;
}
.ui .workspace .guide.show {
  display: block;
}
.ui .workspace .guide .body h3 {
  font-size: 1.5em;
  text-transform: uppercase;
  margin-bottom: 0.75em;
  font-family: 'Helvetica Neue LT W02_41488880', Arial, sans-serif;
}
.ui .workspace .guide .body p {
  margin-bottom: 0.5em;
}
.ui .workspace .guide .dismiss-button {
  position: absolute;
  right: 0.4rem;
  top: 0.4rem;
  width: 2.2rem;
  height: 2.2rem;
  line-height: 2.2rem;
  cursor: pointer;
  font-family: 'FontAwesome';
  text-align: center;
  font-size: 1.4em;
}
.ui .workspace .guide .dismiss-button:before {
  content: "\f00d";
}
.ui .workspace .guide .checkbox {
  position: absolute;
  left: 2.2rem;
  bottom: 0.714rem;
  font-size: 0.9em;
}
.ui .workspace .griditem-list {
  position: absolute;
  overflow-y: scroll;
  overflow-x: hidden;
  left: 10px;
  right: 0;
  bottom: 0;
  top: 7.1rem;
}
.ui .workspace .griditem-list:before {
  content: ' ';
  position: absolute;
  display: block;
  z-index: 10;
  left: 0;
  top: 0;
  right: 0;
  height: 1px;
  background-color: #fff;
}
.ui .workspace .griditem-list:after {
  content: ' ';
  position: absolute;
  display: block;
  z-index: 10;
  right: 0;
  top: 0;
  width: 1px;
  bottom: 0;
  background-color: #fff;
}
.ui .workspace .griditem-list .griditem {
  width: 50%;
  min-height: 8.6rem;
  float: left;
  position: relative;
  border-bottom: 1px solid #ccc;
  border-right: 1px solid #ccc;
  display: none;
  cursor: pointer;
}
.ui .workspace .griditem-list .griditem.show {
  display: block;
}
.ui .workspace .griditem-list .griditem:last-child:after {
  content: ' ';
  position: absolute;
  display: block;
  z-index: 10;
  left: -300px;
  bottom: -1px;
  width: 600px;
  height: 1px;
  background-color: #fff;
}
.ui .workspace .griditem-list .griditem img {
  max-height: 4.286rem;
  max-width: 80%;
  margin: 1.071rem auto 0;
  display: block;
  border: 2px solid #fff;
  position: relative;
  -moz-transition: all ease-out 0.2s;
  -o-transition: all ease-out 0.2s;
  -webkit-transition: all ease-out 0.2s;
  transition: all ease-out 0.2s;
}
.ui .workspace .griditem-list .griditem span {
  position: absolute;
  left: 0;
  bottom: 0;
  right: 0;
  text-align: center;
  font-size: 0.7rem;
  z-index: 2;
  line-height: 1.4em;
  padding: 0 0.857rem 1rem 0.857rem;
  color: #666666;
}
.ui .workspace .griditem-list .griditem span strong {
  font-family: 'Helvetica Neue LT W02_71488916', Arial, sans-serif;
  color: #000;
  font-size: 0.8rem;
}
.ui .workspace .griditem-list .griditem.selected img {
  /*border: 2px solid @brandingColor;*/
}
.ui .workspace .griditem-list .griditem.selected:before {
  content: ' ';
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  height: 2.143rem;
  background-image: url(/assets/gfx/grid-marker-115x100.png);
  background-position: left top;
  background-repeat: no-repeat;
  background-size: 100% auto;
}
.ui .workspace .griditem-list .griditem.selected span:before {
  content: ' ';
  display: block;
  position: absolute;
  left: 0;
  bottom: 0;
  right: 0;
  height: 2.143rem;
  background-image: url(/assets/gfx/grid-marker-115x100.png);
  background-position: left bottom;
  background-repeat: no-repeat;
  background-size: 100% auto;
  z-index: -1;
}
.ui .workspace .griditem-list .griditem:hover img {
  /*transform: scale(1.1);*/
}
.ui .custom-checkbox input {
  visibility: hidden;
  position: absolute;
  left: -50px;
}
.ui .custom-checkbox label {
  padding-left: 25px;
  background-position: left center;
  background-repeat: no-repeat;
  cursor: pointer;
  position: relative;
  color: #aaa;
  -moz-transition: all ease-out 0.2s;
  -o-transition: all ease-out 0.2s;
  -webkit-transition: all ease-out 0.2s;
  transition: all ease-out 0.2s;
}
.ui .custom-checkbox label:before {
  font-family: 'FontAwesome';
  display: block;
  position: absolute;
  left: 0;
  top: -2px;
  font-size: 20px;
  content: "\f096";
  color: #aaa;
  -moz-transition: all ease-out 0.2s;
  -o-transition: all ease-out 0.2s;
  -webkit-transition: all ease-out 0.2s;
  transition: all ease-out 0.2s;
}
.ui .custom-checkbox input:checked + label:before {
  /*background-image: url(checkbox-checked.png);*/
  content: "\f046";
  color: #fff;
}
.ui .custom-checkbox input:checked + label {
  color: #fff;
}
.ui .form input[type=text] {
  border: none;
  padding: 0.65rem;
  font-size: 1.25rem;
  font-family: 'Helvetica Neue LT W02_41488880', Arial, sans-serif;
  outline-color: #c8102e;
  background-color: #ccc;
  letter-spacing: 0.05rem;
  width: 30rem;
  height: 3rem;
  outline: none;
  border-bottom: solid 3px rgba(200, 16, 46, 0);
  -moz-transition: all ease-out 0.2s;
  -o-transition: all ease-out 0.2s;
  -webkit-transition: all ease-out 0.2s;
  transition: all ease-out 0.2s;
}
.ui .form input[type=text].error {
  /*background-color: @brandingColor;
                color: #fff;*/
  border-bottom: solid 3px #c8102e;
  outline: none;
}
.ui .form .input-group:after {
  content: ' ';
  display: block;
  float: none;
  clear: both;
  width: 0;
  height: 0;
  overflow: hidden;
}
.ui .form .input-group:before {
  content: ' ';
  display: block;
  float: none;
  clear: both;
  width: 0;
  height: 0;
  overflow: hidden;
}
.ui .form .input-group input {
  width: 40rem;
  float: left;
  height: 3rem;
}
.ui .form .input-group .btn {
  width: 10rem;
  background-color: #c8102e;
  color: #fff;
  padding: 0.65rem;
  float: left;
  height: 3rem;
}
.ui .form p {
  margin-bottom: 1em;
}
.ui .number-input {
  display: inline-block;
  float: right;
}
.ui .number-input:after {
  content: ' ';
  display: block;
  float: none;
  clear: both;
  width: 0;
  height: 0;
  overflow: hidden;
}
.ui .number-input:before {
  content: ' ';
  display: block;
  float: none;
  clear: both;
  width: 0;
  height: 0;
  overflow: hidden;
}
.ui .number-input .btn {
  color: #fff;
  vertical-align: top;
  float: left;
  line-height: 3rem;
  font-size: 1.2rem;
  padding: 0;
  min-width: 4rem;
  background-color: #555555;
  -moz-transition: all ease-out 0.2s;
  -o-transition: all ease-out 0.2s;
  -webkit-transition: all ease-out 0.2s;
  transition: all ease-out 0.2s;
}
.ui .number-input .btn:hover {
  background-color: #c8102e;
}
.ui .number-input input {
  border: none;
  padding: 0.65rem;
  font-size: 1.25rem;
  font-family: 'Helvetica Neue LT W02_41488880', Arial, sans-serif;
  outline-color: #c8102e;
  background-color: #ccc;
  letter-spacing: 0.05rem;
  height: 3rem;
  outline: none;
  border-bottom: solid 3px rgba(200, 16, 46, 0);
  -moz-transition: all ease-out 0.2s;
  -o-transition: all ease-out 0.2s;
  -webkit-transition: all ease-out 0.2s;
  transition: all ease-out 0.2s;
  vertical-align: top;
  width: 4rem !important;
  text-align: center;
  float: left;
  border-radius: 0;
}
.ui .call-to-action {
  position: absolute;
  /*min-height: 100px;*/
  /*width: 130px;*/
  left: 0;
  top: 0;
}
.ui .call-to-action .dropout .trigger {
  height: 3.2rem;
  line-height: 3.2rem;
  background-color: #000;
  color: #fff;
  -moz-transition: all ease-out 0.2s;
  -o-transition: all ease-out 0.2s;
  -webkit-transition: all ease-out 0.2s;
  transition: all ease-out 0.2s;
}
.ui .call-to-action .dropout .trigger:hover {
  background-color: #111;
}
.ui .call-to-action .dropout .trigger img {
  border-radius: 50%;
  width: 30px;
  vertical-align: middle;
  /*border: 2px solid #fff;*/
  margin-right: 5px;
  position: relative;
}
.ui .call-to-action .dropout .options {
  bottom: 3.4rem;
  padding: 1.5rem;
  background-color: rgba(50, 50, 50, 0.95);
  border-bottom: 8px solid #c8102e;
}
.ui .call-to-action .dropout .options .option {
  margin: 0;
  width: 15rem;
  background-color: transparent;
  color: #fff;
  margin: 0.5rem 0;
}
.ui .call-to-action .dropout .options .option img {
  border-radius: 50%;
  width: 3.5rem;
  vertical-align: middle;
  border: 0.3rem solid #1e1e1e;
  margin-right: 18px;
  position: relative;
}
.ui .call-to-action .dropout .options .option img.right-side-icon {
  border-radius: 0;
  border: none !important;
  position: absolute;
  right: 0;
  top: 1rem;
  width: 2.5rem;
}
.ui .call-to-action .dropout .options .option.selected:before {
  content: ' ';
  display: block;
  position: absolute;
  left: 1.8rem;
  top: 0;
  height: 100%;
  width: 100%;
  background-color: rgba(255, 255, 255, 0.1);
}
.ui .call-to-action .dropout .options .option.selected img {
  border: 4px solid #ffffff;
}
.ui .call-to-action .dropout.open .trigger {
  background-color: #c8102e;
}
.ui .actionbar {
  position: absolute;
  right: 0;
  bottom: 0;
  /*z-index: 120;*/
}
.ui .actionbar .btn {
  line-height: 3.2rem;
  height: 3.2rem;
  background-color: #3ca353;
  width: 18rem;
  display: block;
  text-align: left;
  padding-left: 2em;
  font-family: 'Helvetica Neue LT W02_71488916', Arial, sans-serif;
  font-size: 1.1em;
  -moz-transition: all ease-out 0.2s;
  -o-transition: all ease-out 0.2s;
  -webkit-transition: all ease-out 0.2s;
  transition: all ease-out 0.2s;
  background-repeat: no-repeat;
  background-position: right 1.4rem center;
  background-size: auto 2.3rem;
  background-image: url(/assets/icons/button-ok.png);
}
.ui .actionbar .btn.validation-errors {
  background-color: #ff6a00;
  background-image: url(/assets/icons/button-warning.png);
}
.ui .ui-tools {
  position: absolute;
  background-color: #ff9;
  /*min-height: 50px;*/
  width: 390px;
  left: 30px;
  bottom: 310px;
  z-index: 120;
}
.ui .ui-tools select {
  padding: 10px;
}
.ui .ui-tools label {
  cursor: pointer;
}
.ui .spinner {
  position: absolute;
  background-color: #a1e138;
  height: 150px;
  width: 150px;
  left: 30px;
  top: 230px;
  z-index: 110;
}
.ui .modal-dialog {
  position: fixed;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  background-color: rgba(12, 12, 12, 0.95);
  z-index: 200;
  display: none;
}
.ui .modal-dialog.show {
  display: block;
}
.ui .modal-dialog .center {
  position: absolute !important;
  left: 50%;
  top: 50%;
}
.ui .modal-dialog .center .dialog {
  position: absolute !important;
  background-color: rgba(50, 50, 50, 0.95);
  left: -28.5rem;
  top: -17.5rem;
  width: 57rem;
  height: 35rem;
  border-top: 6px solid #c8102e;
  color: #fff;
  box-shadow: rgba(0, 0, 0, 0.8) 6px 12px 24px;
}
.ui .modal-dialog .center .dialog .header {
  font-family: 'Helvetica Neue LT W02_41488880', Arial, sans-serif;
  font-size: 1.5em;
  position: absolute;
  background-color: rgba(37, 37, 37, 0.95);
  left: 0;
  top: 0;
  right: 0;
  height: 4.286rem;
  padding: 1.429rem;
}
.ui .modal-dialog .center .dialog .header i.fa {
  margin-right: 0.7em;
}
.ui .modal-dialog .center .dialog .footer {
  position: absolute;
  display: block;
  background-color: rgba(42, 42, 42, 0.95);
  left: 0;
  bottom: 0;
  right: 0;
  height: 4.286rem;
  padding: 0.714rem;
}
.ui .modal-dialog .center .dialog .footer.pull-right {
  text-align: right;
}
.ui .modal-dialog .center .dialog .footer .btn {
  background-color: #555555;
  font-family: 'Helvetica Neue LT W02_71488916', Arial, sans-serif;
  padding: 0.714rem 1.429rem;
  -moz-transition: all ease-out 0.2s;
  -o-transition: all ease-out 0.2s;
  -webkit-transition: all ease-out 0.2s;
  transition: all ease-out 0.2s;
}
.ui .modal-dialog .center .dialog .footer .btn:hover {
  background-color: #c8102e;
}
.ui .modal-dialog .center .dialog .body {
  overflow-y: auto;
  position: absolute;
  left: 0;
  bottom: 4.286rem;
  right: 0;
  top: 4.286rem;
  padding: 1.429rem;
}
.ui .modal-dialog .center .dialog .icon {
  display: none;
  width: 4.571rem;
  height: 4.571rem;
  background-position: center;
  background-repeat: no-repeat;
  /*background-size: contain;*/
  background-size: 100% auto;
  position: absolute;
  left: 8.571rem;
  top: 8.571rem;
}
.ui .modal-dialog .center .dialog .icon[data-icon='success'] {
  background-image: url(/assets/icons/green-thumbs-up.png);
}
.ui .modal-dialog .center .dialog .icon[data-icon='mode-change'] {
  background-image: url(/assets/icons/mode-change.png);
}
.ui .modal-dialog .center .dialog .icon[data-icon='engine-alert'] {
  background-image: url(/assets/icons/engine-alert.png);
}
.ui .modal-dialog .center .dialog .icon[data-icon='critical-error'] {
  background-image: url(/assets/icons/critical-error.png);
}
.ui .modal-dialog .center .dialog .icon[data-icon='confirm'] {
  background-image: url(/assets/icons/confirm.png);
}
.ui .modal-dialog .center .dialog .icon[data-icon='save'] {
  background-image: url(/assets/icons/save-info.png);
}
.ui .modal-dialog .center .dialog.has-icon .icon {
  display: block;
}
.ui .modal-dialog.small-dialog .center .dialog {
  left: -18rem;
  top: -12rem;
  width: 36rem;
  height: 24rem;
}
.ui .modal-dialog.generic-modal .content {
  position: absolute;
  /*left: 220px;
                right: 50px;
                top: 120px;*/
  left: 15rem;
  right: 3.571rem;
  top: 8.571rem;
}
.ui .modal-dialog.generic-modal .content .header,
.ui .modal-dialog.generic-modal .content .body {
  position: static;
  padding: 0;
}
.ui .modal-dialog.generic-modal .content .header {
  background-color: transparent;
}
.ui .modal-dialog.build-errors .dialog {
  left: -60rem/2;
  top: -36rem/2;
  width: 60rem;
  height: 36rem;
}
.ui .modal-dialog.build-errors .dialog .errors {
  padding-top: 3rem;
}
.ui .modal-dialog.build-errors .dialog .errors .error {
  display: none;
}
.ui .modal-dialog.build-errors .dialog .errors .error h2 {
  font-size: 1.3em;
  margin-bottom: 0.5em;
  border-bottom: 1px solid #666;
  padding-bottom: 0.5em;
  margin-right: 40rem;
}
.ui .modal-dialog.build-errors .dialog .errors .error p {
  margin-right: 40rem;
}
.ui .modal-dialog.build-errors .dialog .errors .error img {
  float: right;
  max-width: 37.333rem;
  max-height: 18.666rem;
}
.ui .modal-dialog.build-errors .dialog .errors .error.show {
  display: block;
}
.ui .modal-dialog.build-errors .dialog .error-pager {
  display: inline-block;
  margin-left: 20px;
  color: #888;
}
.ui .modal-dialog.build-errors.single-error .error-pager,
.ui .modal-dialog.build-errors.single-error .error-nav {
  display: none;
}
.ui .modal-dialog.save-dialog {
  /*min-width: 23rem;
            min-height: 16rem;*/
  /*
            &[data-state='addressing'] {
            }*/
}
.ui .modal-dialog.save-dialog .center .dialog {
  left: -20rem;
  top: -13rem;
  width: 40rem;
  height: 26rem;
}
.ui .modal-dialog.save-dialog.show {
  display: block;
}
.ui .modal-dialog.save-dialog .createshare,
.ui .modal-dialog.save-dialog .shareresponse,
.ui .modal-dialog.save-dialog .working,
.ui .modal-dialog.save-dialog .email-sent {
  display: none;
}
.ui .modal-dialog.save-dialog .footer .btn {
  display: none;
}
.ui .modal-dialog.save-dialog .shareresponse a {
  color: #ddd;
  font-size: 1.7rem;
  border-bottom: 1px solid #ccc;
  text-decoration: none;
  padding-bottom: 0.2em;
  -moz-transition: all ease-out 0.2s;
  -o-transition: all ease-out 0.2s;
  -webkit-transition: all ease-out 0.2s;
  transition: all ease-out 0.2s;
}
.ui .modal-dialog.save-dialog .shareresponse a:hover {
  color: #fff;
}
.ui .modal-dialog.save-dialog[data-state='naming'] .createshare {
  display: block;
}
.ui .modal-dialog.save-dialog[data-state='naming'] .footer .btn[data-action='cancel'],
.ui .modal-dialog.save-dialog[data-state='naming'] .footer .btn[data-action='next'] {
  display: inline-block;
}
.ui .modal-dialog.save-dialog[data-state='saving'] .working {
  display: block;
}
.ui .modal-dialog.save-dialog[data-state='saved'] .shareresponse {
  display: block;
}
.ui .modal-dialog.save-dialog[data-state='saved'] .footer .btn[data-action='close'] {
  display: inline-block;
}
.ui .modal-dialog.save-dialog[data-state='sending'] .working {
  display: block;
}
.ui .modal-dialog.save-dialog[data-state='sent'] .email-sent {
  display: block;
}
.ui .modal-dialog.save-dialog[data-state='sent'] .footer .btn[data-action='close'] {
  display: inline-block;
}
.ui .modal-dialog.email-dialog,
.ui .modal-dialog.request-pdf-dialog {
  min-width: 23rem;
  min-height: 16rem;
}
.ui .modal-dialog.email-dialog a,
.ui .modal-dialog.request-pdf-dialog a {
  color: #fff !important;
}
.ui .modal-dialog.email-dialog.show,
.ui .modal-dialog.request-pdf-dialog.show {
  display: block;
}
.ui .modal-dialog.email-dialog .addressing,
.ui .modal-dialog.request-pdf-dialog .addressing,
.ui .modal-dialog.email-dialog .working,
.ui .modal-dialog.request-pdf-dialog .working,
.ui .modal-dialog.email-dialog .email-sent,
.ui .modal-dialog.request-pdf-dialog .email-sent {
  display: none;
}
.ui .modal-dialog.email-dialog .footer .btn,
.ui .modal-dialog.request-pdf-dialog .footer .btn {
  /*display: none;*/
}
.ui .modal-dialog.email-dialog .email-sent,
.ui .modal-dialog.request-pdf-dialog .email-sent {
  padding-top: 10em;
  text-align: center;
}
.ui .modal-dialog.email-dialog label,
.ui .modal-dialog.request-pdf-dialog label {
  display: block;
  margin-top: 1em;
  padding-bottom: 0.5em;
  cursor: pointer;
}
.ui .modal-dialog.email-dialog label[for="rpAccept"],
.ui .modal-dialog.request-pdf-dialog label[for="rpAccept"] {
  display: flex;
  padding: 0.5em;
}
.ui .modal-dialog.email-dialog label[for="rpAccept"].error,
.ui .modal-dialog.request-pdf-dialog label[for="rpAccept"].error {
  background-color: #c8102e;
}
.ui .modal-dialog.email-dialog label[for="rpAccept"] input,
.ui .modal-dialog.request-pdf-dialog label[for="rpAccept"] input {
  margin-right: 0.75em;
  flex-grow: 0;
  flex-shrink: 0;
  width: 2em;
  height: 2em;
  border: none;
}
.ui .modal-dialog.email-dialog label[for="rpAccept"] span,
.ui .modal-dialog.request-pdf-dialog label[for="rpAccept"] span {
  flex-grow: 1;
}
.ui .modal-dialog.email-dialog label a,
.ui .modal-dialog.request-pdf-dialog label a {
  color: #c8102e;
}
.ui .modal-dialog.email-dialog[data-state='addressing'] .addressing,
.ui .modal-dialog.request-pdf-dialog[data-state='addressing'] .addressing {
  display: block;
}
.ui .modal-dialog.email-dialog[data-state='working'] .working,
.ui .modal-dialog.request-pdf-dialog[data-state='working'] .working {
  display: block;
}
.ui .modal-dialog.email-dialog[data-state='sent'] .email-sent,
.ui .modal-dialog.request-pdf-dialog[data-state='sent'] .email-sent {
  display: block;
}
.ui .modal-dialog.email-dialog[data-state='sent'] .footer .btn[data-action='cancel'],
.ui .modal-dialog.request-pdf-dialog[data-state='sent'] .footer .btn[data-action='cancel'] {
  display: none;
}
.ui .modal-dialog.load-dialog {
  min-width: 23rem;
  min-height: 16rem;
}
.ui .modal-dialog.load-dialog.show {
  display: block;
}
.ui .modal-dialog.load-dialog .unknown {
  padding-top: 0.5em;
}
.ui .modal-dialog.load-dialog .loadshare,
.ui .modal-dialog.load-dialog .working,
.ui .modal-dialog.load-dialog .unknown {
  display: none;
}
.ui .modal-dialog.load-dialog[data-state='load'] .loadshare {
  display: block;
}
.ui .modal-dialog.load-dialog[data-state='working'] .working {
  display: block;
}
.ui .modal-dialog.load-dialog[data-state='unknown'] .loadshare {
  display: block;
}
.ui .modal-dialog.load-dialog[data-state='unknown'] .unknown {
  display: block;
}
.ui .modal-dialog.add-single-element .center .dialog {
  height: 24rem;
  top: -12rem;
}
.ui .modal-dialog.add-single-element .center .dialog .body {
  padding-left: 14rem;
}
.ui .modal-dialog.add-single-element .center .dialog .body img {
  position: absolute;
  left: 1.429rem;
  top: 1.429rem;
  max-width: 10rem;
  max-height: 10rem;
  /*border: 1px solid red;*/
}
.ui .modal-dialog.share-dialog .center .dialog {
  left: -22rem;
  top: -13rem;
  width: 44rem;
  height: 26rem;
}
.ui .modal-dialog.share-dialog .center .dialog .some-links {
  width: 33%;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
}
.ui .modal-dialog.share-dialog .center .dialog .some-links a {
  height: 25%;
  display: block;
  border-bottom: 1px solid #666;
  border-right: 1px solid #666;
  color: #fff;
  line-height: 6.5rem;
  text-decoration: none;
  font-size: 1.1em;
  padding-left: 2.5em;
  font-family: 'Helvetica Neue LT W02_71488916', Arial, sans-serif;
  background-color: rgba(255, 255, 255, 0);
  -moz-transition: all ease-out 0.2s;
  -o-transition: all ease-out 0.2s;
  -webkit-transition: all ease-out 0.2s;
  transition: all ease-out 0.2s;
}
.ui .modal-dialog.share-dialog .center .dialog .some-links a:hover {
  background-color: rgba(255, 255, 255, 0.05);
}
.ui .modal-dialog.share-dialog .center .dialog .some-links a .fa {
  font-size: 1.8em;
  margin-right: 0.5em;
  vertical-align: middle;
}
.ui .modal-dialog.share-dialog .center .dialog .some-links a:last-child {
  border-bottom: none;
}
.ui .modal-dialog.share-dialog .center .dialog .body {
  width: 67%;
  position: absolute;
  left: 33%;
  top: 50%;
  padding: 0 4em;
  transform: translate(0, -50%);
}
.ui .modal-dialog.share-dialog .center .dialog .body h2 {
  font-family: 'Helvetica Neue LT W02_71488916', Arial, sans-serif;
  font-size: 1.3em;
  margin-bottom: 1em;
}
.ui .modal-dialog.share-dialog .center .dialog .btn {
  position: absolute;
  right: 0;
  top: 0;
  width: 4rem;
  height: 4rem;
  line-height: 4rem;
  text-align: center;
  min-width: 4rem;
  font-size: 1.5em;
}
.ui .hint {
  position: absolute;
  background-color: #c8102e;
  color: #fff;
  left: 100px;
  top: 100px;
  z-index: 3000;
  display: none;
  padding: 0.5rem 0.75rem;
  text-align: center;
  max-width: 10em;
  box-shadow: rgba(0, 0, 0, 0.2) 1px 2px 4px;
}
.ui .hint.show {
  display: block;
}
.ui .intro {
  display: none;
  background-image: url(/assets/gfx/intro-bg.jpg);
  background-size: cover;
  background-position: center;
}
.ui .intro h1 {
  font-size: 4.1em;
  line-height: 1.1em;
  position: absolute;
  left: 75px;
  top: 100px;
  max-width: 10em;
}
@media only screen and (max-width: 1150px) {
  .ui .intro h1 {
    font-size: 3.4em;
  }
}
.ui .intro h1.show {
  transform: translate(0, 0);
  opacity: 1;
}
.ui .intro .btn {
  position: absolute;
  left: 50%;
  bottom: 15vh;
  font-size: 1.42em;
  /*padding: 0.3em 1em;*/
  background-color: #c8102e;
  color: #fff;
  width: 26rem;
  margin-left: -13rem;
  height: 4.5rem;
  line-height: 4.5rem;
  text-align: left;
  padding-left: 1.8rem;
  box-shadow: rgba(0, 0, 0, 0.8) 6px 12px 24px;
  background-image: url(/assets/gfx/long-arrow.png);
  background-position: right 4rem center;
  background-repeat: no-repeat;
  transform: scale(1, 1);
  -moz-transition: all ease-out 0.2s;
  -o-transition: all ease-out 0.2s;
  -webkit-transition: all ease-out 0.2s;
  transition: all ease-out 0.2s;
}
.ui .intro .btn:hover {
  transform: scale(1.04, 1.04);
  background-position: right 2rem center;
}
.ui .intro .spotinfo {
  color: #fff;
  font-size: 1.2em;
  position: absolute;
  background-image: none;
  right: 3em;
  top: 3em;
  left: auto;
  border-radius: 0.3em;
  max-width: 15em;
  height: auto;
  bottom: auto;
  line-height: 1.5em;
  padding: 1em 2.5em;
  text-align: center;
  /* transform: rotate(5deg); */
  box-shadow: rgba(0, 0, 0, 0.4) 1px 10px 20px;
  background: #403c3c;
  display: none;
  background-color: #403c3c;
  background-image: -moz-linear-gradient(top, #403c3c, #545050);
  background-image: -o-linear-gradient(top, #403c3c, #545050);
  background-image: -webkit-gradient(linear, left top, left bottom, from(#403c3c), to(#545050));
  background-image: -webkit-linear-gradient(top, #403c3c, #545050);
  background-image: linear-gradient(to bottom, #403c3c, #545050);
}
.ui .intro .spotinfo.show {
  display: block;
}
.ui .cameras,
.ui .debug-tools,
.ui .storage,
.ui .materials,
.ui .validation {
  display: none;
}
.ui[data-step='0'] .intro {
  display: block;
  z-index: 10;
}
.ui[data-step='0'] .user-bar .btn[data-action='load'] {
  display: inline-block;
}
.ui[data-step='1'] .mode-selector {
  display: block;
  z-index: 10;
}
.ui[data-step='1'] .steps .step[data-step='1'],
.ui[data-step='1'] .steps .step[data-step='2'] {
  /*background-color: #333;*/
  color: #fff;
}
.ui[data-step='2'] .bundle-selector {
  display: block;
  z-index: 10;
}
.ui[data-step='2'] .steps .step[data-step='1'],
.ui[data-step='2'] .steps .step[data-step='2'] {
  /*background-color: #333;*/
  color: #fff;
}
.ui[data-step='3'] .workspace {
  /*display: block;*/
  visibility: visible;
}
.ui[data-step='3'] .footer {
  display: block;
}
.ui[data-step='3'] .steps .step[data-step='3'] {
  /*background-color: #333;*/
  color: #fff;
}
.ui[data-step='3'] .cameras,
.ui[data-step='3'] .debug-tools,
.ui[data-step='3'] .storage,
.ui[data-step='3'] .materials,
.ui[data-step='3'] .validation {
  display: block;
}
.ui[data-step='3'] .user-bar .btn[data-action='pdf'],
.ui[data-step='3'] .user-bar .btn[data-action='save'] {
  /*display: inline-block;*/
}
.ui[data-step='3'] .user-bar .btn[data-action='downloadimage'] {
  display: inline-block;
}
.ui[data-step='3'] .user-bar .btn[data-action='saveinfo'] {
  display: inline-block;
}
.ui[data-step='4'] .summary {
  display: block;
  z-index: 10;
}
.ui[data-step='4'] .steps .step[data-step='4'] {
  /*background-color: #333;*/
  color: #fff;
}
.ui[data-step='5'] .element-browser {
  display: block;
  z-index: 10;
}
.ui[data-step='5'] .steps .step[data-step='4'] {
  color: #fff;
}
a.centered-link-button {
  text-decoration: none;
  /*margin: 0 auto;*/
  /*border: 1px solid @brandingColor;*/
  /*color: @brandingColor;*/
  /*background-color: transparent;*/
  background-color: #c8102e;
  color: #fff;
  display: inline-block;
  /*width: 340px;*/
  /*text-align: center;*/
  /*padding: 15px 25px;*/
  margin-bottom: 3em;
  margin-top: 2em;
  font-family: 'Helvetica Neue LT W02_71488916', Arial, sans-serif;
  -moz-transition: all ease-out 0.2s;
  -o-transition: all ease-out 0.2s;
  -webkit-transition: all ease-out 0.2s;
  transition: all ease-out 0.2s;
  box-shadow: rgba(0, 0, 0, 0.2) 1px 2px 4px;
}
a.centered-link-button span {
  display: inline-block;
  padding: 15px 25px 15px 15px;
}
a.centered-link-button .left {
  background-color: #000;
  padding-right: 15px;
  padding-left: 25px;
}
a.centered-link-button .right:after {
  padding-left: 15px;
  content: "\f0da";
  font-family: 'FontAwesome';
}
a.centered-link-button:hover {
  color: #fff;
  background-color: #c8102e;
}
.bundles {
  opacity: 1;
  -moz-transition: all ease-out 0.2s;
  -o-transition: all ease-out 0.2s;
  -webkit-transition: all ease-out 0.2s;
  transition: all ease-out 0.2s;
  margin-left: -0.8rem;
  margin-right: -0.8rem;
  margin-bottom: 5em;
  /*padding: 10px;*/
  /*display: flex;
    justify-content: space-between;
    flex-flow: row wrap;

    &:after {
        content: "";
        flex: auto;
    }*/
}
.bundles:after {
  content: ' ';
  display: block;
  float: none;
  clear: both;
  width: 0;
  height: 0;
  overflow: hidden;
}
.bundles:before {
  content: ' ';
  display: block;
  float: none;
  clear: both;
  width: 0;
  height: 0;
  overflow: hidden;
}
.bundles.updating {
  opacity: 0;
}
.bundles .bundle {
  /*width: 200px;*/
  width: 30.333%;
  min-height: 10em;
  height: 15em;
  float: left;
  margin-left: 1.5%;
  margin-right: 1.5%;
  margin-bottom: 2.571em;
  display: none;
  position: relative;
  overflow: hidden;
  cursor: pointer;
  background-color: #fff;
  box-shadow: rgba(0, 0, 0, 0.2) 1px 2px 4px;
}
.bundles .bundle img {
  display: block;
  max-width: 100%;
  max-height: 100%;
  margin: 0 auto;
}
.bundles .bundle .info {
  position: absolute;
  left: 0;
  bottom: 0;
  right: 0;
  height: 2.7em;
  border-top: solid 1px #e5e5e5;
  background-color: #fff;
}
.bundles .bundle .info strong {
  color: #fff;
  background-color: #000;
  display: block;
  position: absolute;
  width: 105px;
  top: 0;
  height: 2.7em;
  left: 0;
  text-align: center;
  line-height: 2.7em;
}
.bundles .bundle .info span.price-box {
  display: block;
  position: absolute;
  left: 105px;
  top: 0;
  height: 38px;
  right: 0;
  text-align: center;
  line-height: 2.7em;
}
.bundles .bundle.show {
  display: block;
}
.bundles .bundle .overlay {
  -moz-transition: all ease-out 0.2s;
  -o-transition: all ease-out 0.2s;
  -webkit-transition: all ease-out 0.2s;
  transition: all ease-out 0.2s;
  opacity: 0;
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  background-color: #fff;
  padding: 15px;
  line-height: 1em;
}
.bundles .bundle .overlay p {
  margin-bottom: 0.5em;
}
.bundles .bundle .overlay p strong {
  display: block;
  margin-bottom: 0.25em;
  font-family: 'Helvetica Neue LT W02_71488916', Arial, sans-serif;
  font-size: 0.8em;
}
.bundles .bundle .overlay p.description {
  padding-top: 0.5em;
  /*font-size: 0.8em;*/
}
.bundles .bundle .overlay img {
  width: 70px;
  left: auto;
  top: 0;
  right: 0;
  position: absolute;
}
.bundles .bundle .overlay .select-button {
  position: absolute;
  left: 0;
  bottom: 0;
  right: 0;
  height: 2.7em;
  line-height: 2.7em;
  text-align: center;
  border-top: solid 1px #e5e5e5;
  background-color: #c8102e;
  color: #fff;
  cursor: pointer;
}
.bundles .bundle .overlay .select-button:after {
  padding-left: 10px;
  content: "\f0da";
  font-family: 'FontAwesome';
}
.bundles .bundle:hover .overlay {
  /*display: block;*/
  opacity: 1;
}
.bundles.custom-build-selection .bundle .info span.price-box {
  display: none;
}
.mode-selection {
  padding-top: 3em;
  padding-bottom: 2em;
}
.mode-selection:after {
  content: ' ';
  display: block;
  float: none;
  clear: both;
  width: 0;
  height: 0;
  overflow: hidden;
}
.mode-selection:before {
  content: ' ';
  display: block;
  float: none;
  clear: both;
  width: 0;
  height: 0;
  overflow: hidden;
}
@media only screen and (max-height: 800px) {
  .mode-selection {
    padding-top: 1.5em;
    padding-bottom: 1em;
  }
}
.mode-selection .btn-mode {
  width: 47%;
  margin-right: 1.5%;
  margin-left: 1.5%;
  /*height: 22em;*/
  float: left;
  position: relative;
  overflow: hidden;
  cursor: pointer;
  background-color: #fff;
  box-shadow: rgba(0, 0, 0, 0.2) 1px 2px 4px;
}
@media only screen and (max-height: 800px) {
  .mode-selection .btn-mode {
    max-height: 350px;
  }
}
@media only screen and (max-height: 750px) {
  .mode-selection .btn-mode {
    max-height: 300px;
  }
}
@media only screen and (max-height: 700px) {
  .mode-selection .btn-mode {
    max-height: 250px;
  }
}
.mode-selection .btn-mode img {
  display: block;
  width: 100%;
  margin-bottom: 3.5rem;
  visibility: hidden;
}
.mode-selection .btn-mode .image {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 3.5rem;
  background-position: center;
  background-size: 100%;
  opacity: 0.9;
  -moz-transition: all ease-out 0.2s;
  -o-transition: all ease-out 0.2s;
  -webkit-transition: all ease-out 0.2s;
  transition: all ease-out 0.2s;
}
.mode-selection .btn-mode .info {
  position: absolute;
  left: 0;
  bottom: 0;
  right: 0;
  height: 3.5rem;
  background-color: #000;
  color: #fff;
  text-align: center;
  line-height: 3.5rem;
}
.mode-selection .btn-mode .info:after {
  padding-left: 15px;
  content: "\f0da";
  font-family: 'FontAwesome';
}
.mode-selection .btn-mode:hover .image {
  transform: scale(1.05, 1.05);
  opacity: 1;
}
.mode-selection .btn-mode[data-value="prebuild"] .image {
  background-image: url(/img/142/1000/600/crop/prebuild);
}
.mode-selection .btn-mode[data-value="custom"] .image {
  background-image: url(/img/45/1000/600/crop/custom);
}
.element-browser {
  display: none;
  position: absolute !important;
  background-color: #ededed;
  z-index: 102;
}
.element-browser.show {
  display: block;
}
.element-browser .filters {
  margin-bottom: 3.33rem;
}
.element-browser .filters:after {
  content: ' ';
  display: block;
  float: none;
  clear: both;
  width: 0;
  height: 0;
  overflow: hidden;
}
.element-browser .filters:before {
  content: ' ';
  display: block;
  float: none;
  clear: both;
  width: 0;
  height: 0;
  overflow: hidden;
}
.element-browser .filters .dropdown {
  float: left;
  width: 33.33%;
}
.element-browser .filters .dropdown .trigger {
  width: 100%;
}
.element-browser .btn-cancel {
  background-color: #c8102e;
  color: #fff;
  width: 33%;
  margin-bottom: 2rem;
  display: inline-block;
  height: 2.857rem;
  line-height: 2.857rem;
  text-transform: uppercase;
  font-family: 'Helvetica Neue LT W02_71488916', Arial, sans-serif;
  font-size: 1.2em;
  float: right;
}
.element-browser .elements {
  opacity: 1;
  -moz-transition: all ease-out 0.2s;
  -o-transition: all ease-out 0.2s;
  -webkit-transition: all ease-out 0.2s;
  transition: all ease-out 0.2s;
  margin-left: -0.8rem;
  margin-right: -0.8rem;
  margin-bottom: 5em;
}
.element-browser .elements:after {
  content: ' ';
  display: block;
  float: none;
  clear: both;
  width: 0;
  height: 0;
  overflow: hidden;
}
.element-browser .elements:before {
  content: ' ';
  display: block;
  float: none;
  clear: both;
  width: 0;
  height: 0;
  overflow: hidden;
}
.element-browser .elements.updating {
  opacity: 0;
}
.element-browser .elements .element {
  /*width: 200px;*/
  width: 30.333%;
  min-height: 10em;
  height: 15em;
  float: left;
  margin-left: 1.5%;
  margin-right: 1.5%;
  margin-bottom: 2.571em;
  display: none;
  position: relative;
  overflow: hidden;
  cursor: pointer;
  background-color: #fff;
  box-shadow: rgba(0, 0, 0, 0.2) 1px 2px 4px;
}
.element-browser .elements .element img {
  display: block;
  max-width: 100%;
  max-height: 70%;
  margin: 1rem auto 2rem;
}
.element-browser .elements .element .info {
  position: absolute;
  left: 0;
  bottom: 0;
  right: 0;
  height: 2.7em;
  border-top: solid 1px #e5e5e5;
  background-color: #fff;
}
.element-browser .elements .element .info strong {
  color: #fff;
  background-color: #000;
  display: block;
  position: absolute;
  width: 105px;
  top: 0;
  height: 2.7em;
  left: 0;
  text-align: center;
  line-height: 2.7em;
}
.element-browser .elements .element .info span {
  display: block;
  position: absolute;
  left: 105px;
  top: 0;
  height: 38px;
  right: 0;
  text-align: center;
  line-height: 2.7em;
}
.element-browser .elements .element.show {
  display: block;
}
.element-browser .elements .element .overlay {
  -moz-transition: all ease-out 0.2s;
  -o-transition: all ease-out 0.2s;
  -webkit-transition: all ease-out 0.2s;
  transition: all ease-out 0.2s;
  opacity: 0;
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  background-color: #fff;
  padding: 15px;
  line-height: 1em;
}
.element-browser .elements .element .overlay p {
  margin-bottom: 0.5em;
}
.element-browser .elements .element .overlay p strong {
  display: block;
  margin-bottom: 0.25em;
  font-family: 'Helvetica Neue LT W02_71488916', Arial, sans-serif;
  font-size: 0.8em;
}
.element-browser .elements .element .overlay p.description {
  padding-top: 0.5em;
  /*font-size: 0.8em;*/
}
.element-browser .elements .element .overlay img {
  width: 4.667rem;
  left: auto;
  top: 0.5rem;
  right: 0.5rem;
  position: absolute;
}
.element-browser .elements .element .overlay .select-button {
  position: absolute;
  left: 0;
  bottom: 0;
  right: 0;
  height: 2.7em;
  line-height: 2.7em;
  text-align: center;
  border-top: solid 1px #e5e5e5;
  background-color: #c8102e;
  color: #fff;
  cursor: pointer;
}
.element-browser .elements .element .overlay .select-button:after {
  padding-left: 10px;
  content: "\f0da";
  font-family: 'FontAwesome';
}
.element-browser .elements .element:hover .overlay {
  /*display: block;*/
  opacity: 1;
}
.inventory {
  position: absolute;
  overflow-y: scroll;
  overflow-x: hidden;
  left: 10px;
  right: 0;
  bottom: 0;
  top: 100px;
  padding-left: 0.5em;
  padding-right: 0.75em;
}
.inventory .inventory-item {
  /*background-color: #fff;*/
  border-bottom: 1px solid #ddd;
  padding-bottom: 0.5em;
  margin-bottom: 0.5em;
  /*cursor: pointer;
        .md-shadow();*/
}
.inventory .inventory-item.in-use {
  opacity: 0.5;
  cursor: not-allowed;
}
.inventory .inventory-item:last-child {
  border-bottom: none;
}
.inventory .inventory-item .line2 {
  font-size: 0.7em;
  color: #999;
}
.inventory .inventory-item .line2 .unitprice {
  float: right;
}
.selected-element {
  position: absolute;
  z-index: 101;
  top: 50px;
  min-width: 50px;
  min-height: 50px;
  left: 50%;
  background-color: #869aad;
  display: none;
}
.selected-element.show {
  display: block;
}
.selected-element .element {
  width: 240px;
  /*height: 80px;*/
  margin: 10px;
  border: 5px solid orange;
  cursor: pointer;
  background-color: #eee;
}
.draggable {
  position: fixed !important;
  /*right: 20px;
    bottom: 20px;*/
  width: 200px;
  min-height: 250px;
  max-height: 600px;
  z-index: 101;
  border: 5px solid #2452c1;
  background-color: rgba(200, 200, 200, 0.9);
  overflow-y: scroll;
}
.draggable.collapsed {
  max-height: 60px;
  min-height: 60px;
}
.draggable .drag-handle,
.draggable h2 {
  background-color: rgba(0, 0, 0, 0.25);
  padding: 10px;
  cursor: move;
}
.draggable.yui3-dd-dragging {
  opacity: 0.8;
}
.fullscreen {
  position: fixed !important;
  left: 0 !important;
  top: 4.6rem !important;
  right: 0 !important;
  bottom: 0 !important;
}
.scrollable {
  overflow-y: scroll;
}
.contain {
  margin: 0 auto;
  /*max-width: 900px;
    min-width: 800px;*/
  max-width: 64em;
  min-width: 58em;
}
.storage {
  position: fixed;
  left: 120px;
  bottom: 220px;
  width: 200px;
  height: 250px;
}
.storage .build {
  cursor: pointer;
  border: 4px solid #650b0b;
  text-align: center;
  padding: 5px;
  margin: 5px;
}
.materials {
  position: fixed;
  right: 20px;
  bottom: 220px;
  width: 200px;
  height: 250px;
  border: 5px solid #a1e138;
  background-color: rgba(200, 200, 200, 0.9);
  overflow-y: scroll;
}
.flex-grid {
  display: flex;
}
.flex-grid.thirds .flexitem {
  width: 32%;
}
.dropout {
  display: inline-block;
  position: relative;
}
.dropout .trigger {
  cursor: pointer;
  /*background-color: red;*/
  display: inline-block;
  line-height: 2.5em;
  padding: 0 1.3em;
  position: relative;
}
.dropout .trigger span.label {
  font-family: 'Helvetica Neue LT W02_71488916', Arial, sans-serif;
}
.dropout .options {
  display: none;
  position: relative;
  background-color: #ededed;
  color: #000;
  position: absolute;
  bottom: 30px;
  /*padding: 10px;*/
  z-index: 100;
  min-width: 8.5em;
  overflow: hidden;
}
.dropout .options .option {
  display: block;
  cursor: pointer;
  line-height: 2.5em;
  position: relative;
  /*margin-bottom: 3px;*/
  /*background-color: #333;*/
}
.dropout .options .option.selected {
  /*background-color: @brandingColor;*/
}
.dropout.dropdown .trigger {
  border: 1px solid #bdbdbd;
  color: #000;
  position: relative;
}
.dropout.dropdown .trigger:after {
  position: absolute;
  content: ' ';
  right: 0;
  top: 0;
  width: 2.1em;
  text-align: center;
  height: 100%;
  content: "\f0d7";
  font-family: 'FontAwesome';
}
.dropout.dropdown .options {
  bottom: auto;
  top: 2.5em;
  width: 100%;
  border: 1px solid #bdbdbd;
}
.dropout.dropdown .options .option {
  -moz-transition: all ease-out 0.2s;
  -o-transition: all ease-out 0.2s;
  -webkit-transition: all ease-out 0.2s;
  transition: all ease-out 0.2s;
  padding: 0 1em;
}
.dropout.dropdown .options .option:hover {
  background-color: #d4d4d4;
  /*color: #fff;*/
}
.dropout.dropdown.open .option.selected {
  background-color: #c8102e;
  color: #fff;
}
.dropout.dropdown.open .trigger:after {
  content: "\f0d8";
}
.dropout.dropdown.fullwidth {
  display: block;
}
.dropout.dropdown.fullwidth .trigger {
  display: block;
}
.dropout.rightalign .options {
  right: 0;
}
.dropout.open .options {
  display: block;
}
.dropout.disabled {
  cursor: not-allowed;
}
.dropout.disabled .trigger {
  color: #aaa;
}
.dropout.disabled * {
  cursor: not-allowed;
}
.tab-control .tabs:after {
  content: ' ';
  display: block;
  float: none;
  clear: both;
  width: 0;
  height: 0;
  overflow: hidden;
}
.tab-control .tabs:before {
  content: ' ';
  display: block;
  float: none;
  clear: both;
  width: 0;
  height: 0;
  overflow: hidden;
}
.tab-control .tabs .tab {
  background-color: #2b2b2b;
  color: #909090;
  float: left;
  width: 50%;
  line-height: 40px;
  height: 40px;
  text-align: center;
  position: relative;
  cursor: pointer;
  -moz-transition: all ease-out 0.2s;
  -o-transition: all ease-out 0.2s;
  -webkit-transition: all ease-out 0.2s;
  transition: all ease-out 0.2s;
}
.tab-control .tabs .tab:hover {
  background-color: #454545;
  color: #aaaaaa;
}
.tab-control .tabs .tab:after {
  content: ' ';
  display: block;
  position: absolute;
  background-color: #2b2b2b;
  transform: rotate(45deg);
  transform-origin: 50% 50%;
  width: 10px;
  height: 10px;
  left: 50%;
  bottom: -5px;
  opacity: 0;
  -moz-transition: all ease-out 0.2s;
  -o-transition: all ease-out 0.2s;
  -webkit-transition: all ease-out 0.2s;
  transition: all ease-out 0.2s;
}
.tab-control .tabs .tab.selected {
  background-color: #c8102e;
  color: #fff;
}
.tab-control .tabs .tab.selected:after {
  opacity: 1;
  background-color: #c8102e;
}
.tab-control .tabsheet {
  display: none;
}
.tab-control .tabsheet .fixed-header {
  padding: 15px;
}
.tab-control .tabsheet.show {
  display: block;
}
.ui .pricing-info {
  text-align: center;
  margin-bottom: 2em;
}
.ui .bundle-selector {
  position: absolute;
  left: 3.33rem;
  top: 10rem;
  /*width: 900px;*/
  background-color: #ededed;
  z-index: 101;
  display: none;
}
.ui .bundle-selector.show {
  /*display: block;*/
}
.ui .bundle-selector .no-matches {
  display: none;
  text-align: center;
}
.ui .bundle-selector .no-matches.show {
  display: block;
}
.ui .bundle-selector .no-matches.show + .pricing-info {
  display: none;
}
.ui .bundle-selector .filters {
  margin-bottom: 3.33rem;
}
.ui .bundle-selector .filters:after {
  content: ' ';
  display: block;
  float: none;
  clear: both;
  width: 0;
  height: 0;
  overflow: hidden;
}
.ui .bundle-selector .filters:before {
  content: ' ';
  display: block;
  float: none;
  clear: both;
  width: 0;
  height: 0;
  overflow: hidden;
}
.ui .bundle-selector .filters .dropdown {
  float: left;
  width: 33.33%;
}
.ui .bundle-selector .filters .dropdown .trigger {
  width: 100%;
}
.ui .mode-selector {
  position: absolute;
  /*left: 600px;
        top: 380px;
        width: 300px;
        height: 200px;*/
  background-color: #ededed;
  z-index: 101;
  display: none;
}
.ui .mode-selector.show {
  /*display: block;*/
}
.ui .element-catalogue {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  /*max-height: 350px;*/
  /*overflow-y: scroll;*/
  /*background-color: #b1b1b1;*/
  /*z-index: 101;*/
  display: none;
  /*font-size: 0.8em;*/
}
.ui .element-catalogue.show {
  display: block;
}
.ui .summary {
  position: absolute !important;
  z-index: 101;
  background-color: #ededed;
  left: 200px;
  top: 600px;
  display: none;
}
.ui .summary .items .item {
  /*border: 1px solid #ccc;*/
  /*padding: 20px;
                margin: 10px;*/
  position: relative;
  margin-bottom: 2.857rem;
}
.ui .summary .items .item:after {
  content: ' ';
  display: block;
  float: none;
  clear: both;
  width: 0;
  height: 0;
  overflow: hidden;
}
.ui .summary .items .item:before {
  content: ' ';
  display: block;
  float: none;
  clear: both;
  width: 0;
  height: 0;
  overflow: hidden;
}
.ui .summary .items .item .preview {
  box-shadow: rgba(0, 0, 0, 0.2) 1px 2px 4px;
  background-color: #fff;
  position: relative;
  /*float: left;*/
  position: absolute;
  left: 0;
  top: 0;
  width: 33%;
  margin-right: 1%;
  height: 100%;
}
.ui .summary .items .item .preview img {
  margin: 0 auto;
  display: block;
  margin-top: 20px;
}
.ui .summary .items .item .description {
  box-shadow: rgba(0, 0, 0, 0.2) 1px 2px 4px;
  background-color: #fff;
  position: relative;
  float: left;
  margin-left: 34%;
  width: 66%;
  min-height: 18rem;
  padding: 2em 2em 4em 2em;
}
.ui .summary .items .item .description .line {
  margin-bottom: 0.5em;
}
.ui .summary .items .item .description .line .element-title {
  font-family: 'Helvetica Neue LT W02_71488916', Arial, sans-serif;
  font-size: 1.2em;
}
.ui .summary .items .item .description .line .element-subitem {
  font-family: 'Helvetica Neue LT W02_71488916', Arial, sans-serif;
}
.ui .summary .items .item .description .line .element-price {
  float: right;
  display: inline-block;
  font-family: 'Helvetica Neue LT W02_71488916', Arial, sans-serif;
}
.ui .summary .items .item .description .line:first-child {
  border-bottom: 1px solid #ccc;
  padding-bottom: 0.5em;
}
.ui .summary .items .item .number-input {
  display: none;
}
.ui .summary .items .item .bottombar {
  position: absolute;
  background-color: #000;
  color: #fff;
  left: 0;
  bottom: 0;
  right: 0;
  height: 2.857rem;
  line-height: 2.857rem;
  padding-left: 1.5em;
}
.ui .summary .items .item .bottombar .remove-item {
  display: none;
  cursor: pointer;
  position: absolute;
  width: 2.857rem;
  height: 2.857rem;
  line-height: 2.857rem;
  right: 0;
  top: 0;
  color: #fff;
  text-align: center;
  font-size: 1.3em;
}
.ui .summary .items .item.editable .number-input {
  display: block;
}
.ui .summary .items .item.editable .item-count {
  display: none;
}
.ui .summary .items .item.editable .bottombar .remove-item {
  display: block;
}
.ui .summary .totals {
  margin-bottom: 2rem;
}
.ui .summary .totals:after {
  content: ' ';
  display: block;
  float: none;
  clear: both;
  width: 0;
  height: 0;
  overflow: hidden;
}
.ui .summary .totals:before {
  content: ' ';
  display: block;
  float: none;
  clear: both;
  width: 0;
  height: 0;
  overflow: hidden;
}
.ui .summary .totals.action-buttons {
  margin-bottom: 6rem;
}
.ui .summary .totals .content {
  float: right;
  width: 66%;
}
.ui .summary .totals .content.price {
  font-family: 'Helvetica Neue LT W02_71488916', Arial, sans-serif;
  font-size: 1.8em;
}
.ui .summary .totals .content.price span.price-label {
  font-size: 0.5em;
}
.ui .summary .totals .content .btn {
  background-color: #c8102e;
  color: #fff;
  width: 49%;
  display: inline-block;
  height: 2.857rem;
  line-height: 2.857rem;
  text-transform: uppercase;
  font-family: 'Helvetica Neue LT W02_71488916', Arial, sans-serif;
  font-size: 1.2em;
}
.ui .summary .fees {
  margin-bottom: 1rem;
  display: none;
}
.ui .summary .fees:after {
  content: ' ';
  display: block;
  float: none;
  clear: both;
  width: 0;
  height: 0;
  overflow: hidden;
}
.ui .summary .fees:before {
  content: ' ';
  display: block;
  float: none;
  clear: both;
  width: 0;
  height: 0;
  overflow: hidden;
}
.ui .summary .fees.show {
  display: block;
}
.ui .summary .fees .content {
  float: right;
  width: 66%;
}
.ui .summary .fees .content.price {
  font-family: 'Helvetica Neue LT W02_71488916', Arial, sans-serif;
}
.ui .summary .btn-open-element-browser,
.ui .summary .btn-download-single-elements-pdf {
  background-color: #c8102e;
  color: #fff;
  width: 33%;
  margin-bottom: 2rem;
  display: inline-block;
  height: 2.857rem;
  line-height: 2.857rem;
  text-transform: uppercase;
  font-family: 'Helvetica Neue LT W02_71488916', Arial, sans-serif;
  font-size: 1.2em;
}
.ui .summary .empty-order-list {
  margin-bottom: 4em;
}
.ui .summary .project-action-buttons {
  /*margin-bottom: 4rem;*/
  float: right;
  width: 33%;
}
.ui .summary .project-action-buttons .btn {
  background-color: #c8102e;
  color: #fff;
  /*width: 33%;*/
  display: block;
  height: 2.857rem;
  line-height: 2.857rem;
  text-transform: uppercase;
  font-family: 'Helvetica Neue LT W02_71488916', Arial, sans-serif;
  font-size: 1.1em;
  margin-bottom: 0.5em;
}
.ui .summary .project-action-buttons .btn.download-pdf {
  line-height: 1.4em;
  /*height: 4.1rem;*/
  padding: 0.6rem 0;
}
.ui .summary .project-title {
  margin-bottom: 3em;
}
.ui .summary .project-title:after {
  content: ' ';
  display: block;
  float: none;
  clear: both;
  width: 0;
  height: 0;
  overflow: hidden;
}
.ui .summary .project-title:before {
  content: ' ';
  display: block;
  float: none;
  clear: both;
  width: 0;
  height: 0;
  overflow: hidden;
}
.ui .summary .project-title .project-key {
  font-family: 'Helvetica Neue LT W02_71488916', Arial, sans-serif;
  font-size: 2em;
  margin-bottom: 0.5em;
}
.ui .summary .project-title .project-name {
  font-size: 1.8em;
  line-height: 1.2em;
  margin-bottom: 1em;
}
.ui .summary .project-title img {
  width: 26%;
  margin-right: 7%;
  float: right;
  box-shadow: rgba(0, 0, 0, 0.2) 1px 2px 4px;
  padding: 5px;
  background-color: #fff;
}
.base-plate-editor {
  min-width: 22rem;
  min-height: 17rem;
  border: 1px dashed #000;
  position: relative;
}
.base-plate-editor .right-side {
  position: absolute;
  left: 1rem;
  top: 1rem;
  width: 20rem;
  bottom: 1rem;
  border-right: 1px solid rgba(255, 255, 255, 0.075);
  padding-right: 2rem;
}
.base-plate-editor .rotate-toggle {
  /*position: absolute;
        top: 1rem;
        right: 1rem;*/
}
.base-plate-editor .rotate-toggle label,
.base-plate-editor .rotate-toggle input {
  cursor: pointer;
}
.base-plate-editor .disclaimer {
  position: absolute;
  left: 0;
  right: 2rem;
  bottom: 0;
  font-size: 0.8em;
  line-height: 1.4em;
  opacity: 0.7;
}
.base-plate-editor .editor-container {
  position: absolute;
  bottom: 1rem;
  /* border: 1px solid #999; */
  left: 23rem;
  overflow: hidden;
  /*background-color: rgba(255,255,255,.1);*/
  top: 1rem;
  right: 1rem;
}
.base-plate-editor .editor-container .construction-illustration {
  position: absolute;
  /* border: 1px solid #999; */
  overflow: hidden;
  top: 3rem;
  bottom: 3rem;
  left: 6rem;
  right: 6rem;
}
.base-plate-editor .editor-container .construction-illustration .baseplate-illustration {
  display: block;
  position: absolute;
  overflow: hidden;
}
.base-plate-editor .editor-container .construction-illustration .baseplate-illustration:before {
  content: ' ';
  display: block;
  width: 800px;
  height: 800px;
  background-image: url(/assets/baseplate_textures/talgo_natur.jpg);
  background-repeat: repeat;
  background-size: 220px auto;
  position: absolute;
}
.base-plate-editor .editor-container .construction-illustration.rotated-baseplate .baseplate-illustration:before {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}
.base-plate-editor .editor-container .construction-illustration .build-illustration {
  position: absolute;
  border: 1px dashed #999;
  background-color: rgba(50, 50, 50, 0.9);
  top: 2.667rem;
  bottom: 2.667rem;
  left: 5.333rem;
  right: 5.333rem;
}
.base-plate-editor .editor-container .construction-illustration .build-illustration .text-label {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  font-size: 1.6rem;
  color: #666;
  text-align: center;
  line-height: 1.2em;
}
.base-plate-editor .editor-container .construction-illustration .build-illustration .text-label .build-size {
  font-size: 1rem;
}
.base-plate-editor .editor-container .value {
  position: absolute;
  width: 5.333rem;
  height: 2.667rem;
  background-color: #1e1e1e;
}
.base-plate-editor .editor-container .value .label {
  display: block;
  text-align: center;
}
.base-plate-editor .editor-container .value select {
  display: block;
  width: 100%;
  text-align: center;
  text-align-last: center;
  position: absolute;
  left: 0;
  bottom: 0;
}
.base-plate-editor .editor-container .value.front {
  bottom: 0;
  left: 50%;
  margin-left: -5.333rem / 2;
}
.base-plate-editor .editor-container .value.back {
  top: 0;
  left: 50%;
  margin-left: -5.333rem / 2;
}
.base-plate-editor .editor-container .value.left {
  left: 0;
  top: 50%;
  margin-top: -2.667rem / 2;
}
.base-plate-editor .editor-container .value.right {
  right: 0;
  top: 50%;
  margin-top: -2.667rem / 2;
}
.debug-tools {
  position: absolute;
  left: 50px;
  top: 550px;
  width: 200px;
  background-color: #99e1c7;
  z-index: 101;
}
.storage {
  position: absolute;
}
.validation {
  top: 200px;
}
.cameras {
  left: 850px;
  top: 100px;
}
.debugger {
  display: none !important;
}
body.debugmode .debugger {
  display: block !important;
}
.system-debugger {
  position: fixed;
  z-index: 1000;
  background-color: rgba(0, 0, 0, 0.9);
  color: #fff;
  left: 10px;
  bottom: 10px;
  width: 30%;
  border: 3px solid #c8102e;
  max-height: 90vh;
  font-size: 12px;
  padding: 5px;
  overflow-y: scroll;
  line-height: 1.2em;
}
.system-debugger p {
  margin-bottom: 4px;
}
.system-debugger p.warn {
  color: #ff6a00;
}
.system-debugger p.error {
  color: red;
}
.system-debugger p.info {
  color: #ccc;
}
body,
html {
  font-family: 'Helvetica Neue LT W02_41488880', Arial, sans-serif;
  font-size: 15px;
  line-height: 1.43em;
}
@media only screen and (min-width: 2560px) {
  body,
  html {
    font-size: 20px;
  }
}
#scene-explorer-host {
  z-index: 10;
}