@import url('https://fonts.googleapis.com/css?family=Roboto');
  

* {
  font-family: roboto;
}

body, html {
  padding: 0px;
  margin: 0px;
  background-color: #fefefe;
  --tc-main: #673AB7;
  --tc-optional: #512DA8;
  --tc-optional-l1: #5730b5;
  --tc-optional-l2: #9072d9;
  --tc-accent: #2196F3;
}

#appWrapper {
  box-sizing: border-box;
  padding: 10px 4px;
  display: grid;
  grid-template-columns: minmax(960px, 73%) auto;
  grid-column-gap: 15px;
  height: 100vh;
  overflow-y: hidden;
}

canvas {
  display: block;
  background-color: white;
  box-shadow: 1px 4px 10px #ddd;
  width: 100%;
  /* height: 100%; */
}

div#canvasDiv {
  position: relative;
  align-self: center;
  height: 100%;
}

#editDiv > #main {
  display: grid;
  grid-template-columns: repeat(3, auto);
  grid-gap: 10px;
  font-size: 16px;
}

._btn {
  padding: 10px 12px;
  display: inline-block;
  background-color: var(--tc-main) ;
  color: white;
  font-family: sans-serif;
  font-size: inherit;
  font-weight: 600;
  border: none;
  outline: none;
  border-radius: 4px; 
  box-shadow: 1px 2px 20px #ededed;
  cursor: pointer;
  text-align: center;
  display: grid;
  align-items: center;
  /* justify-content: center; */
  text-align: center;
}

._btn:disabled {
  background-color: #eee;
  color: #222;
  cursor: not-allowed;
}

#editDiv > input[type=file] {
  display: none;
}

.toast {
  position: fixed;
  transition: all 0.4s ease-in-out;
  bottom: -100px;
  padding: 12px 17px;
  background-color: #373737;
  color: white;
  font-size: 16px;
  font-weight: 500;
  left: 30px;
  font-family: 'Roboto', sans-serif;
  word-spacing: 2px;
  border-radius: 3px;
}

.toast.active {
  bottom: 40px;
}

.toast button {
  margin-left: 10px;
  border-radius: 50%;
  padding: 6px;
  border: none;
  outline: none;
  color: var(--tc-accent);
  /* color: #ffea00; */
  background-color: transparent;
  font-size: 15px;
  text-align: center;
  cursor: pointer;
}

/* 
  accordion.css
*/
ul.accordion {
  list-style-type: none;
  border-radius: 2px;
  box-shadow: 0px 0px 12px #dedede;
  padding: 0px;
}

ul li .head {
	padding: 20px 25px;
	font-size: 20px;
  cursor: pointer;
}

ul li .head p {
  font-size: 12px;
  margin: 0px;
  padding: 0px;
}

ul li .body {
	overflow: hidden;
	box-sizing: border-box;
	max-height: 0px;
	height:auto;
	transition: max-height 0.6s cubic-bezier(0, 1, 0, 1);
	border-bottom: 1px solid #dedede;
}

ul li .body.active {
	max-height: 600px;
  transition: max-height 0.6s cubic-bezier(1, 0.5, 0.5, 0.5);
}

ul li .body .body_inner {
  margin: 0px 30px 25px 26px;
	display: grid;
	grid-row-gap: 22px;
	align-items: top;
}

.accordion li .body .name {
  margin: 4px 0px 0px 3px;
  color: #666;
  font-size: 14px;
}

/*******************/
.accordion .body .pair {
	display: grid;
	grid-template-columns: 1fr 1fr;
}

.accordion .body .pairParent {
	padding: 5px;
}
.accordion .body .pairParent p {
	margin: 0px 0px 10px 0px;
	font-size: 18px;
}

/*
  checkbox.css
*/
input[type=checkbox] {
	display: none;
}

label.checkbox-wrap {
	display: flex;
	align-items: center;
	font-family: roboto;
}

label.checkbox-wrap span {
	display: inline-block;
	box-sizing: border-box;
	width: 20px;
	height: 20px;
	padding: 2px;
	border: 2px solid var(--tc-optional-l2);  
	margin-right: 10px;
	cursor: pointer;
}

label.checkbox-wrap span::before {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	transform: scale(0, 0);
	background-color: var(--tc-optional-l2);  
	transition: transform 0.1s linear;
}

input[type=checkbox]:checked + span::before {
	transform: scale(1, 1);
}

input[type=checkbox]:disabled + span {
	cursor: not-allowed;
  border-color: #ddd;
}


/*
  slider.css
*/

.slider {
  -webkit-appearance: none;
  width: 100%;
  /* max-width: 270px; */
  height: 5px;
  border-radius: 2px;   
  background: #d3d3d3;
  outline: none;
  opacity: 0.6;
  -webkit-transition: .2s;
  transition: opacity .2s;
}

.slider::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 15px;
  height: 15px;
  border-radius: 50%; 
  background: var(--tc-optional);
  cursor: pointer;
}

.slider.disabled::-webkit-slider-thumb {
  background: #ddd;
  cursor: not-allowed;
}

.slider.disabled {
  cursor: not-allowed;
}

.slider::-moz-range-thumb {
  width: 15px;
  height: 15px;
  border-radius: 50%;
  background: var(--tc-optional);
  cursor: pointer;
}

/*
  general
*/

.holder {
  display: flex;
  margin-top: 10px;
  margin-left: 3px;
}

.holder input[type=number] {
  border-radius: 2px 0px 0px 2px;
  min-width: 150px;
  outline: none;
  padding: 0px 10px;
  margin: 0px;
  border: 1px solid #bbb;
}
.holder input[type=number]:disabled {
  cursor: not-allowed;
}

.holder ._btn {
  border-radius: 0px 2px 2px 0px;
  padding: 4px 8px;
  border: 1px solid #bbb;
}


