/* Boost 原版样式（来自 style_boost.css），增加缺图兜底背景 */

body{
  /* 原版用 transparency.png；若你尚未补齐资源，则用 CSS 棋盘格做兜底 */
  background-color: #202020;
  background-image:
    url("../boost_resources/transparency.png"),
    linear-gradient(45deg, rgba(255,255,255,.08) 25%, transparent 25%),
    linear-gradient(-45deg, rgba(255,255,255,.08) 25%, transparent 25%),
    linear-gradient(45deg, transparent 75%, rgba(255,255,255,.08) 75%),
    linear-gradient(-45deg, transparent 75%, rgba(255,255,255,.08) 75%);
  background-repeat: repeat;
  background-size: auto, 16px 16px, 16px 16px, 16px 16px, 16px 16px;
  background-position: 0 0, 0 0, 0 8px, 8px -8px, -8px 0;
  padding:0;
  margin:0
}
#generatorInput{
    /* zoom: 0.8;  */
  /* -moz-transform: scale(0.8);
    -webkit-transform: scale(0.8); */
  transform: scale(0.8);
  transform-origin: 0% 0%;
  background:#000;
  border:#fff solid 1px;
  margin-left:10px;
  margin-top:10px
}
canvas{
  padding:0;
  margin:auto;
  display:block;
  position:absolute;
  top:0;
  bottom:0;
  left:0;
  right:0;
  z-index:-1
}
.checkBox1 {
  margin-left:0;
  margin-right:5px;
}
.collapsible{
  background-image:linear-gradient(180deg,#000,#000,#383838,#f1f1f1);
  cursor:pointer;
  padding-top:5px;
  width:200px;
  text-align:left;
  font-size:15px;
  border:0
}
.active,.collapsible:hover{
  background-color:#000
}
.content{
  display:none;
  overflow:hidden;
  background-color:#f1f1f1
}
.contentChecks{
  overflow:hidden;
  background-color:#f1f1f1;
  display:flex;
  flex-direction:column;

  padding-top:5px;
}
.checksColumn{
  display:flex;
  flex-direction:column;

  padding-bottom:10px;
}
.checksColumnSet{
  display:flex;
  flex-direction:row
}
.listItem{
  width:100px;
  display:flex;
  flex-direction:row;
  background-color:#f1f1f1
}
.listItemFull{
  padding-top:5px;
  display:flex;
  flex-direction:row;
  background-color:#f1f1f1
}
.listItemFull label{
  font-family:'IBM Plex Mono',monospace;
  font-size:14px;
  font-weight:500;
  padding-left:3px
}
.collapsible:after{
  margin-top:-25px;
  content:'\2193';
  font-size:13px;
  color:#fff;
  float:right
}
.active:after{
  content:"\2190"
}
input[type=text]{
  width:190px;
  margin:5px
}
input[type=range]{
  margin-top:10px;
  width:120px;
}
#generatorInput{
  position:absolute;
  display:flex;
  flex-direction:column
}
textarea{
  text-align:center;
  width:190px;
  margin:5px 5px 2px 5px;
  padding:0;
}
#scrubSlider {
  display:none;
}

h1{
  font-family:'IBM Plex Mono',monospace;
  font-weight:500;
  color:#fff;
  font-size:14px;
  margin-bottom:5px;
  margin-top:0
}
h2{
  font-family:'IBM Plex Mono',monospace;
  font-size:18px;
  font-weight:500;
  text-align:center;
  color:#fff;
  margin:5px;
  text-transform:uppercase
}
h3{
  font-family:'IBM Plex Mono',monospace;
  font-size:14px;
  font-weight:500;
  /* padding-left:5px; */
  margin:0
}
h4{
  font-family:'IBM Plex Mono',monospace;
  text-decoration: underline;
  font-size:14px;
  font-weight:500;
  padding-left:5px;
  margin:0;
}
.titleh2{
  background-color:#000
}
.module {
  display:flex;
  flex-direction: column;
}

.ranger {
  -webkit-appearance: none;
  width: 66%;
  height: 1px;
  background: #424242;
  outline: none;
  opacity: 0.7;
  -webkit-transition: .2s;
  transition: opacity .2s;
}
.ranger:hover {
  background: #000000;
}
.ranger::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 13px;
  height: 13px;
  border-radius: 100%;
  background: #000;
  cursor: pointer;
}

.ranger::-moz-range-thumb {
  width: 25px;
  height: 25px;
  background: #04AA6D;
  cursor: pointer;
}

.module p{
  font-family:'IBM Plex Mono',monospace;
  font-weight:200;
  font-style:italic;
  color:#00f;
  font-size:10px;
  margin-bottom:0;
  margin-top:0
}
.textureEdit{
  margin:5px 0 5px 0;
}
select{
  width:190px;
  margin:5px
}
.selectPair{
  display:flex;
  flex-direction:row;
  width:200px;
}
select.stageSelect{
  width:95px;
  /* margin:5px */
}
.accelModule {
  margin-bottom:5px;
}

#text0{
  position:absolute;
  left: 50%;
  top: 60%;
  transform:translate(-50%,-50%);

  text-align: center;
}
input[type=color]{
  border:1px solid #000;
  outline:0;
  margin:0;
  padding:0;
  width:125px;
  height:20px;
}
input.fullLengthColor {
  width:190px;
}
input[type=color]::-webkit-color-swatch-wrapper{
  padding:0
}
input[type=color]::-webkit-color-swatch{
  border:none
}
#quintColor {
  margin-bottom:5px;
}
#quintColor input[type="color"]{
  width:38px;
}
.module2{
  padding-bottom:10px;
  width:130px
}
p{
  font-family:'IBM Plex Mono',monospace;
  font-size:10px;
  font-weight:500;
  color:#fff;
  text-align:center;
  margin-top:2px
}
a{
  color:#fff;
  font-weight:500;
  text-decoration:underline
}
button{
  width:190px;
}
.coupling1 button{
  margin-top:5px;
}
.reMess{
  margin-top:10px;
  margin-left:5px;
  width:190px;
}

#capsOptions { display:block; }
#strokeOptions { display:none; }
#tumbleSet { display:none; }
#zoomSet { display:block; }
#punchSet { display:none; }
#sidesOptionsTrans { display:none; }
#sidesOptionsSolid { display:none; }
#sidesOptionsRandom { display:block; }
#sidesOptionsTexture { display:none; }

input[type=radio]{
  margin-left:0px;
}
.radioOption{
  width:95px;
}
.radioOption label {
  margin-left:-2px;
}
#textModeUI {
  display:block;
}
#textModeUI2 {
  display:flex;
  flex-direction:row;
}
.couplingRadio{
  display:flex;
  flex-direction:row;
  padding-top:5px;
  margin-left:5px
}
.coupling1{
  display:flex;
  flex-direction:row;
  margin-left:5px;
}
.coupling1 #alignMode {
  margin:0;
  width: 130px;
}

.coupling2{
  display:flex;
  flex-direction:column;
  padding-top:10px;
  padding-bottom:10px;
  padding-left:5px;
}
label{
  font-family:'IBM Plex Mono',monospace;
  font-size:14px;
  font-weight:500;
  margin-top:2px
}
div.coupling_label{
  padding-right:10px;
  width:50px
}
label.coupling2_label {
  padding-right:10px;
  width:110px
}
label.coupling_label{
  padding-right:10px;
  width:50px
}
div.module{
  margin-bottom:10px
}
#recStatus{
  width:100%;
  display:none;
  margin-top:5px;
  margin-right:5px;
  padding-top:7px;
  padding-bottom:1px;
  background-color:red
}
#widget{
  display:block
}
.switch{
  position:absolute;
  bottom:0;
  left:50%;
  transform:translate(-50%,0);
  display:inline-block;
  width:38px;
  height:20px
}
.switch input{
  opacity:0;
  width:0;
  height:0
}
.slider{
  position:absolute;
  cursor:pointer;
  top:0;
  left:0;
  right:0;
  bottom:0;
  background-color:#ccc;
  -webkit-transition:.4s;
  transition:.4s
}
.slider:before{
  position:absolute;
  content:"";
  height:16px;
  width:16px;
  left:2px;
  bottom:2px;
  background-color:#fff;
  -webkit-transition:.4s;
  transition:.4s
}
input:checked+.slider{
  background-color:#2196f3
}
input:focus+.slider{
  box-shadow:0 0 1px #2196f3
}
input:checked+.slider:before{
  -webkit-transform:translateX(18px);
  -ms-transform:translateX(18px);
  transform:translateX(18px)
}
.slider.round{
  border-radius:20px
}
.slider.round:before{
  border-radius:50%
}
.popup{
  font-family:'IBM Plex Mono',monospace;
  font-size:10px;
  font-weight:500;
  margin-top:-5px;
  padding-bottom:5px;
  color:#fff;
  text-align:center;
  text-decoration:underline;
  position:relative;
  cursor:pointer
}
.popup .popuptext{
  visibility:hidden;
  width:160px;
  background-color:#fff;
  color:#000;
  text-align:left;
  border-radius:6px;
  padding:8px 5px;
  position:absolute;
  z-index:1;
  top:100%;
  left:50%;
  margin-left:-80px;
  border:#000 solid 1px
}
.popup .show{
  visibility:visible;
  -webkit-animation:fadeIn 1s;
  animation:fadeIn 1s
}
@-webkit-keyframes fadeIn{
  from{
      opacity:0
  }
  to{
      opacity:1
  }
}
@keyframes fadeIn{
  from{
      opacity:0
  }
  to{
      opacity:1
  }
}
.popuptext a{
  color:#00f
}

button.dropbtn {
  width:90px;
  font-family: 'IBM Plex Mono', monospace;
  font-size: 14px;
  font-weight: 100;
  text-align: center;
  color: #000;
  background-color: #FFF;
}

/* The container <div> - needed to position the dropdown content */
.dropdown {
  position: fixed;
  top:0;
  right:0;
  padding-right:20px;
  padding-top:10px;
}

/* Dropdown Content (Hidden by Default) */
.dropdown-content {
  display: none;
  position: absolute;
  background-color: #f1f1f1;
  min-width: 90px;
  z-index: 1;
}

/* Links inside the dropdown */
.dropdown-content a {
  font-family:'IBM Plex Mono', monospace;
  font-size: 14px;
  font-weight: 100;
  text-align: center;
  color: black;
  text-decoration: none;
  display: block;
  padding-top:5px;
  padding-bottom:5px;
}

/* Change color of dropdown links on hover */
.dropdown-content a:hover {background-color: #ddd;}

/* Show the dropdown menu on hover */
.dropdown:hover .dropdown-content {display: block;}

/* Change the background color of the dropdown button when the dropdown content is shown */
.dropdown:hover .dropbtn {
  background-color: #0000ff;
  color: #ffffff;
}
