/* Main window size - Not needed for deployment  */
body {
  height: 100%;
  margin: 0px;
}

/*  Load local fonts - Not needed for deployment */
/* in Cornerstone - these are supposedly defined */
@font-face {
  font-family: "Gotham-bold";
  src: url("../fonts/Gotham-Bold.woff") format("woff");
  font-weight: 700;
  font-style: normal;
}

@font-face {
  font-family: "Gotham-medium";
  src: url("../fonts/Gotham-Medium.woff") format("woff");
  font-weight: 500;
  font-style: normal;
}

/* Cornerstone only uses book */
/* for medium use 600 weight */
/* for bold use is 700 weight */
@font-face {
  font-family: "GothamHTF-book";
  src: url("../fonts/Gotham-Book.woff") format("woff");
  font-weight: 400;
  font-style: normal;
}

/* Main/Unique CSS file */

/* Define app wide colors  */
:root {
  --app-red: #d7282f;
  --app-green: #008000;
  --app-medium-gray: #74777a;
  --app-light-gray: #e6e7e8;
  --app-dark-gray: #2d2f38;
  --app-custom-gray: #a5aaad;
  --app-blue: #00ccff;
  ;
}

/* Splash screen */
#presentation-designer #splash-screen {
  background-image: url("../Images/Auditorium-blur.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.2);
  flex-flow: row nowrap;
  align-items: center;
  margin: .5rem;
  position: unset;
  height: unset;
  width: unset;
  flex: 1 1 auto
}

#presentation-designer #launch-modal {
  flex: 0 0 55%;
  min-width: 500px;
  padding: 24px;
  background-color: #554F53;
  opacity: .9;
  color: #fff;
  display: flex;
  flex-flow: column nowrap;
  align-items: flex-start;
}

#presentation-designer #launch-title {
  flex: auto;
  font-weight: 600;
  font-size: 44px;
}

#presentation-designer #launch-intro {
  padding: 6px 0px;
}

#presentation-designer #launch-go {
  font-weight: 700;
}

#presentation-designer #launch-project-container {
  width: 100%;
  padding: 40px 0px;
  display: flex;
  flex-flow: row wrap;
}

#presentation-designer .launchline {
  display: flex;
  width: 100%;
  padding: 5px 0px;
}

#presentation-designer .launchline input {
  flex-basis: 70%;
}

#presentation-designer .splash-label {
  flex-basis: 25%;
}

#presentation-designer .splash-button {
  align-self: center;
  min-width: 32%;
  margin-bottom: 16px;
  line-height: 47px;
  font-size: 17px;
  border: none;
  font-weight: 700;
  font-size: 16px;
  background-color: var(--app-red);
  color: #fff;
}


/*  Modal specific */
#presentation-designer .cd-modal {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 1;
  background: rgba(255, 255, 255, .5);
  display: flex;
  justify-content: center;
  align-items: flex-start;
}

#presentation-designer .cd-modal-container {
  flex: 0 1 50%;
  min-width: 50%;
  border: 1px solid #000;
  display: flex;
  flex-direction: column;
  z-index: 1;
  margin-top: 5%;
}

#presentation-designer .cd-modal-header,
#presentation-designer .cd-modal-footer {
  background-color: #000;
  ;
  color: #fff;
  height: 60px;
  padding: 0px 25px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: 700;
}

#presentation-designer .cd-modal-title {
  font-size: 22px;
  margin-right: auto;
}

#presentation-designer .cd-modal-content {
  background-color: #fff;
  padding: 25px 25px 0px 25px;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}

#presentation-designer .cd-modal-content input:active,
#presentation-designer .cd-modal-content input:focus,
#presentation-designer .cd-modal-content input:hover,
#presentation-designer .cd-modal-content select:active,
#presentation-designer .cd-modal-content select:focus,
#presentation-designer .cd-modal-content select:hover {
  outline: none !important;
  border: 0px !important;
  box-shadow: none;
}

#presentation-designer .cd-modal-content select,
#presentation-designer .sub-line select {
  border: none;
  background-color: var(--app-light-gray);
  height: 34px;
  outline: none;
  font-size: 20px;
  min-width: 150px;
  width: auto;
  border-radius: 0px;
}

#presentation-designer .cd-modal-line:last-child {
  padding-top: 15px;
}

#presentation-designer .cd-modal-line {
  margin-bottom: 6px;
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-start;
  align-items: center;
}

#presentation-designer .cd-modal-footer {
  background-color: var(--app-light-gray);
  margin-top: auto;
  font-size: 16px;
}

#presentation-designer .cd-modal-back {
  margin-right: auto;
  color: var(--app-medium-gray) !important
}

#presentation-designer .cd-modal-next {
  color: var(--app-red)
}

/* Modal specific fields */
#classroom_name {
  flex: 1 1 auto;
  height: 34px;
  min-width: 150px;
  width: auto;
}

.doubledim,
.doublenum {
  display: flex;
}

/* Toggle button stuff */
.togglebuttons {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  justify-content: flex-start;
}

.showListtoggle {
  flex-flow: column;
  align-items: flex-start;
}

.spaceorientation-toggle label,
.audiencelayout-toggle label {
  background-color: var(--app-light-gray);
  color: var(--app-medium-gray);
  border: 1px solid var(--app-dark-gray);
  margin-right: 1px !important;
  height: 32px;
  width: 60px !important;
  min-width: 30px;
  justify-content: center;
}

.audiencelayout-toggle label {
  width: 80px !important;
  height: 50px;
}

.spaceorientation-toggle label svg .spaceorientationicon,
.audiencelayout-toggle label svg .layouticon {
  fill: var(--app-medium-gray);
}

.spaceorientation-toggle input:checked+label,
.audiencelayout-toggle input:checked+label {
  background-color: var(--app-red);
}

.spaceorientation-toggle input:checked+label svg .spaceorientationicon,
.audiencelayout-toggle input:checked+label svg .audiencelayouticon {
  fill: #fff;
}

.audiencelayout-toggle {
  flex-basis: 12%;
  min-width: 80px;
  padding: 6px;
  display: flex;
  justify-content: center;
  align-items: center;
}

/* .shape-button {
  width: 100px;
} */

.button-toggle {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  min-width: 95px;
}

/* .tableshapeicon {
  stroke: var(--app-medium-gray);
  stroke-width: 1px;
  shape-rendering: geometricPrecision;
  fill: #fff
} */

/* .tableshape-togglebuttons input:checked + label svg .tableshapeicon {
  stroke: var(--app-dark-gray);
  stroke-width: 1px;
  shape-rendering: geometricPrecision;
  fill:var(--app-red);
} */

#layout-modal .intiger-input {
  max-width: 150px;
  width: 150px;
}

.sub-line label[for=total_seats] {
  display: inline-flex;
}

#presentation-designer .totalseats {
  background-color: #fff !important;
  width: 100px;
  border: none !important;
  color: var(--app-dark-gray) !important;
}

.instructorfurnituretoggle label,
.speakeramplificationtypetoggle label {
  text-align: center;
  padding: 1px 14px;
  background-color: var(--app-light-gray);
  color: var(--app-medium-gray);
  border: 1px solid var(--app-dark-gray);
  margin-right: 1px !important;
}

.instructorfurnituretoggle input:checked+label,
.speakeramplificationtypetoggle input:checked+label {
  background-color: var(--app-red) !important;
  color: #fff !important;
}

.inline-button {
  width: 50px;
  margin-right: 10px;
}




/* Unit selection stuff */
.unitstoggle {
  flex-grow: 1;
  flex-shrink: 1;
  min-width: 136px;
  max-width: 15%;
  justify-content: space-evenly;
}

.unitstoggle label {
  color: var(--app-medium-gray);
  font-size: 16px;
  text-align: center;
  vertical-align: middle;
  line-height: 36px;
  text-shadow: none;
  font-weight: 700;
  display: inline-block;
  text-transform: uppercase;
}

.unitstoggle input:checked+label {
  color: var(--app-red);
}






/* Modal Text */
#space-modal .cd-modal-title::before {
  content: "DESIGN YOUR ";
}

#layout-modal .cd-modal-title::before {
  content: "DESIGN YOUR SPACE ";
}

#space-modal .cd-modal-next::before {
  content: "CONTINUE TO DEFINE SPACE LAYOUT >";
}

#layout-modal .cd-modal-next::before {
  content: "CONTINUE TO CONFIGURE DEVICES >";
}

#devices-modal .cd-modal-title::before {
  content: "CONFIGURE YOUR ";
}

#devices-modal .cd-modal-next::before {
  content: "CONTINUE TO DESIGN >";
}

#edit-modal .cd-modal-title::after {
  content: " PROJECT DETAILS";
}






/* Navigation bar */
#design-navigation {
  flex: 1 1 14%;
  font-size: 16px;
  display: flex;
  flex-flow: column nowrap;
  justify-content: flex-start;
  align-items: flex-start;
}

#navtoggle_title {
  width: 90%;
}

.navbuttons {
  width: 20%;
  position: absolute;
  top: 30px;
  height: 95%;
  overflow-y: auto;
}

#design-navigation input {
  font-size: 16px;
}

.navbuttons label:not(.button-toggle, .slider) {
  background-color: #fff;
  color: var(--app-medium-gray);
  text-align: left;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}

.navtoggleicon {
  width: 50px;
  ;
}

.submenu-content {
  margin-left: 10px;
  width: auto;
}

#tablescustomized,
#eqoverride {
  color: var(--app-red);
  padding-top: 10px;
}

#tablescustomized::before {
  content: "Layout has been customized. Click undo to revert back to previous settings.";
}

#eqoverride::before {
  content: "Equipment override:";
}

#audience_layout::before {
  content: "Audience layout:";
}

.slider-container {
  display: flex;
  flex-flow: row;
  flex-wrap: wrap;
  align-content: center;
}

.sliderswitch-container {
  position: relative;
  display: inline-block;
  width: 50px;
  height: 28px;
  padding: 3px 0px;
}

.sliderswitch-container input {
  opacity: 0;
  width: 0;
  height: 0;
}

.sliderswitch-container .slider {
  position: absolute;
  cursor: pointer;
  width: 48px;
  height: 25px;
  top: 5px;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: var(--app-light-gray);
  border-radius: 34px;
  -webkit-transition: .4s;
  transition: .4s;
  border: 1px solid var(--app-dark-gray);
}

.sliderswitch-container .slider:before {
  position: absolute;
  content: "";
  height: 21px;
  width: 21px;
  left: 3px;
  bottom: 2px;
  background-color: var(--app-medium-gray);
  border-radius: 50%;
  -webkit-transition: .4s;
  transition: .4s;
}

.sliderswitch-container input:checked+.slider {
  background-color: var(--app-red);
}

.sliderswitch-container input:checked+.slider:before {
  background-color: #fff;
}

.sliderswitch-container input:focus+.slider {
  box-shadow: 0 0 1px var(--app-red);
}

.sliderswitch-container input:checked+.slider:before {
  -webkit-transform: translateX(20px);
  -ms-transform: translateX(20px);
  transform: translateX(20px);
}

.slider {
  /* display: table-cell; */
  /* background-color: #fff; */
  /* color: var(--app-medium-gray); */
}

/* label.slider {
  padding: 10px 0px !important;
} */

.range-slider {
  -webkit-appearance: none;
  width: 30%;
  height: 8px;
  border-radius: 4px !important;
  padding: 4px !important;
  background: var(--app-custom-gray);
  outline: none;
  cursor: pointer;
  margin: 12px 5px 5px
}

.range-slider::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: var(--app-red);
  cursor: pointer;
}

.range-slider::-moz-range-thumb {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: var(--app-red);
  cursor: pointer;
  border: none;
}




/* Room stuff */
.room {
  fill: none;
  stroke: #000;
  stroke-width: 2px;
}

.roomactive {
  stroke: var(--app-red);
}

.dim {
  padding: 0px 10px;
  text-align: center;
  display: inline-block;
  vertical-align: middle;
  background: #fff;
  color: var(--app-red);
  font-family: cursive;
  font-style: italic;
  user-select: none;
}

/* Door and screens stuff */
.door,
.screens {
  fill: #000;
  stroke: #000;
}

.stage {
  fill: none;
  stroke: #000;
}

.stageZero {
  fill: none;
  stroke: none;
  stroke-width: 0;
}

.dooractive,
.screensactive {
  fill: var(--app-red);
  stroke: var(--app-red);
}

.stageactive {
  fill: none;
  stroke: var(--app-red);
}

.doorarc {
  stroke: var(--app-medium-gray);
  fill: none;
}

.ceiling-grid {
  stroke: var(--app-medium-gray);
  stroke-width: 1px;
  shape-rendering: crispEdges;
}

.tilemask-hidden {
  fill-opacity: 0;
  fill: none;
}

.tilemask-active {
  fill-opacity: 1;
  fill: transparent
}

.tilecross {
  stroke: var(--app-red);
  stroke-width: 2;
  shape-rendering: crispEdges;
}

.notilecross {
  stroke: var(--app-medium-gray);
  stroke-width: 1;
  shape-rendering: crispEdges;
}

/* Tables stuff */
.chair-fabric {
  fill: var(--app-light-gray);
  stroke: var(--app-dark-gray);
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 0.75;
}

.chair-frame {
  fill: var(--app-light-gray);
  stroke: var(--app-dark-gray);
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 0.75;
}

.ghostme {
  fill-opacity: .2;
  stroke: var(--app-custom-gray);
  stroke-dasharray: 4;
}

.hidden-chair {

  fill-opacity: 0;

  stroke-opacity: 0;
}


.table {
  fill: var(--app-light-gray);
  stroke: var(--app-dark-gray);
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 2;
}

.tableactive {
  stroke: var(--app-red)
}

.seethrough {
  fill: none
}

.bulkactive {
  stroke: var(--app-red);
  stroke-width: 1;
  stroke-dasharray: 8
}

.collision-active {
  fill: var(--app-red);
  fill-opacity: .4;
  stroke: none;
  pointer-events: none;

}

.collision-hidden {
  fill: none;
  fill-opacity: 0;
  pointer-events: none;
}