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;}

	label {
		display: block;
		font-size: 0.9em;
		font-weight: 900;
		margin: 0 0 1em 0;
	}

	/* Main */	

	#main {
		/* padding: 0em 0 6em 0 ; */
		/*font-family: Cambria, Cochin, Georgia, Times, 'Times New Roman', serif;*/
		font-family: 'Computer Modern Sans', 'Times New Roman';
		font-size: 15px;
	}

		@media screen and (max-width: 736px) {

			#main {
				padding: 0em 0 4em 0 ;
			}

		}

	#canvas {
		position: relative;
	}

	/* List */

	ol {
		list-style: decimal;
		margin: 0 0 2em 0;
		padding-left: 1.25em;
	}

		ol li {
			padding-left: 0.25em;
		}

	ul {
		list-style: disc;
		margin: 0 0 2em 0;
		padding-left: 1em;
	}

		ul li {
			padding-left: 0.5em;
		}

		ul.alt {
			list-style: none;
			padding-left: 0;
		}

			ul.alt li {
				border-top: solid 1px #c9c9c9;
				padding: 0.5em 0;
			}

				ul.alt li:first-child {
					border-top: 0;
					padding-top: 0;
				}

	dl {
		margin: 0 0 2em 0;
	}

		dl dt {
			display: block;
			font-weight: 900;
			margin: 0 0 1em 0;
		}

		dl dd {
			margin-left: 2em;
		}

	/***/

	a {
		-moz-transition: border-bottom-color 0.2s ease, color 0.2s ease;
		-webkit-transition: border-bottom-color 0.2s ease, color 0.2s ease;
		-ms-transition: border-bottom-color 0.2s ease, color 0.2s ease;
		transition: border-bottom-color 0.2s ease, color 0.2s ease;
		text-decoration: none;
		color: #585858;
		/* border-bottom: dotted 1px rgba(88, 88, 88, 0.5); */
	}

		a:hover {
			border-bottom-color: transparent;
			/*color: #f2849e !important; *********************/
		}

	strong, b {
		font-weight: 900;
	}

	em, i {
		font-style: italic;
	}

	/* Type */

	body, input, select, textarea {
		color: #585858;
		font-family: "Source Sans Pro", Helvetica, sans-serif;
		font-size: 16pt;
		font-weight: 300;
		line-height: 1.75;
	}

		@media screen and (max-width: 1680px) {

			body, input, select, textarea {
				font-size: 14pt;
			}

		}

		@media screen and (max-width: 1280px) {

			body, input, select, textarea {
				font-size: 12pt;
			}

		}

/* Wrapper */

#wrapper > * > .inner {
	width: 100%;
	max-width: 1600px; /*68em*/
	margin: 0 auto;
	padding: 0 1.25em;
}

	@media screen and (max-width: 1000px) {

		#wrapper > * > .inner {
			padding: 0 15px;
		}

	}


/*Adições***************************************/		

/* (B) RESPONSIVE IMAGE */
.textover img { width: 100%; }
.textover { max-width: 500px; } /* OPTIONAL */

/* (C) POSITION CAPTION */
.textover { 
	position: relative;
	margin: auto;
	margin-top: 20px;
} /* REQUIRED */

.textover figcaption, .textover h2 {
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  margin: 0 0 0 0;
  font-weight: 100;
  line-height: 1.8;
  letter-spacing: 0.02em;
}


/* (D) CAPTION COSMETICS */
.textover figcaption, .textover h2 {
	box-sizing: border-box;
	width: 100%;
	padding: 10px;
	color: white;
	text-align: center;
	font-size: 18px;
	background: rgba(0, 0, 0, 0.6);
  }

.btn-simufisica{
	background-color: #3294ee;
	color:white;
}

.btn-simufisica2{
	background-color: #404040;
	color:white;
}

.grid-container {
	display: grid;
	grid-template-columns: auto auto;
	padding: 0px;
}

.grid-container2 {
	display: grid;
	grid-template-columns: auto auto;
	padding: 0px;
}
.grid-item {
	padding: 5px;
	margin: auto;
	width: 100%;
}

.grid-item-botoes{
	padding: 5px;
	text-align: center;
}

.range__field {
	border: 0;
	margin-bottom: -20px;
	pointer-events: none;
}

input[type="range"]:disabled::-webkit-slider-thumb {
	opacity: 0.4 !important;
	cursor: context-menu !important;
}

input[type="range"]:disabled::-moz-range-thumb {
	opacity: 0.4 !important;
	cursor: context-menu !important;
}

input[type="range"]:disabled::-ms-thumb {
	opacity: 0.4 !important;
	cursor: context-menu !important;
}

.biblio ul { 
	padding-left:20px; 
	list-style:none; 
}

.biblio li { 
	margin-bottom:10px; 
}

.biblio li:before {    
	font-family: 'FontAwesome';
	color: #3294ee;
	content: '\f067';
	content: '\f02d';
	margin:0 5px 0 -15px;
}

/*Radio buttons*/
/* The container */
.containerRadio {
	display: block;
	position: relative;
	padding-left: 35px;
	margin-bottom: 12px;
	cursor: pointer;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
  }
  
  /* Hide the browser's default radio button */
  .containerRadio input {
	position: absolute;
	opacity: 0;
	cursor: pointer;
  }
  
  /* Create a custom radio button */
  .checkmark {
	position: absolute;
	top: 0;
	left: 0;
	height: 25px;
	width: 25px;
	background-color: #eee;
	border-radius: 75%;
  }
  
  /* On mouse-over, add a grey background color */
  .containerRadio:hover input ~ .checkmark {
	background-color: #ccc;
  }
  
  /* When the radio button is checked, add a blue background */
  .containerRadio input:checked ~ .checkmark {
	background-color: #3294ee;
  }
  
  /* Create the indicator (the dot/circle - hidden when not checked) */
  .checkmark:after {
	content: "";
	position: absolute;
	display: none;
  }
  
  /* Show the indicator (dot/circle) when checked */
  .containerRadio input:checked ~ .checkmark:after {
	display: block;
  }
  
  /* Style the indicator (dot/circle) */
  .containerRadio .checkmark:after {
	  top: 9px;
	  left: 9px;
	  width: 7px;
	  height: 7px;
	  border-radius: 75%;
	  background: white;
  }



  /* The container */
.containerBox {
	display: block;
	position: relative;
	padding-left: 35px;
	margin-bottom: 12px;
	cursor: pointer;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
  }
  
  /* Hide the browser's default checkbox */
  .containerBox input {
	position: absolute;
	opacity: 0;
	cursor: pointer;
	height: 0;
	width: 0;
  }
  
  /* Create a custom checkbox */
  .checkmarkBox {
	position: absolute;
	top: 0;
	left: 0;
	height: 25px;
	width: 25px;
	background-color: #eee;
  }
  
  /* On mouse-over, add a grey background color */
  .containerBox:hover input ~ .checkmarkBox {
	background-color: #ccc;
  }
  
  /* When the checkbox is checked, add a blue background */
  .containerBox input:checked ~ .checkmarkBox {
	background-color: #2196F3;
  }
  
  /* Create the checkmark/indicator (hidden when not checked) */
  .checkmarkBox:after {
	content: "";
	position: absolute;
	display: none;
  }
  
  /* Show the checkmark when checked */
  .containerBox input:checked ~ .checkmarkBox:after {
	display: block;
  }
  
  /* Style the checkmark/indicator */
  .containerBox .checkmarkBox:after {
	left: 9px;
	top: 3px;
	width: 7px;
	height: 15px;
	border: solid white;
	border-width: 0 3px 3px 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
  }

  span.mao { cursor: pointer; }

  p.mao { cursor: pointer; }

  .grid-buttons-desktop {
	margin-top: 20px;
	display: grid;
	max-width: 650px;
	grid-column-gap: 10px;
	grid-row-gap: 10px;
	grid-template-columns: auto auto auto auto auto auto auto auto;
	background-color: #ccd9ff;
	padding: 10px;
}

/*tela cheia*/
html, body {
	padding: 0;
	margin: 0;
  }
  
  *:fullscreen
  *:-ms-fullscreen,
  *:-webkit-full-screen,
  *:-moz-full-screen {
	 overflow: auto !important;
  }



/* Loading versão 13/01/2023 **************/
.loader {
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #333333;
	transition: opacity 0.75s, visibility 0.75s;
}

.loader--hidden {
	opacity: 0;
	visibility: hidden;
}

.loader::after {
	content: "";
	width: 75px;
	height: 75px;
	border: 15px solid #dddddd;
	border-top-color: #3294ee;
	border-radius: 50%;
	animation: loading 0.75s ease infinite;
}

@keyframes loading {
	from {
		transform: rotate(0turn);
	}
	to {
		transform: rotate(1turn);
	}
}

.dropdown-menu>li>span {
	font-size: 14pt;
	display: block;
	padding: 3px 20px;
	clear: both;
	font-weight: 400;
	line-height: 1.42857143;
	color: #333;
	white-space: nowrap;
	cursor: pointer;
}

@media screen and (max-width: 800px) {

	.dropdown-menu>li>span {
		font-size: 11.2pt;
	}
}

.dropdown-menu>li>span:focus, .dropdown-menu>li>span:hover{
	color:#262626;
	text-decoration:none;
	background-color:#f5f5f5
}

@media (orientation: landscape) {
	#principal {
		grid-template-columns: auto auto;
	}
}
@media (orientation: portrait) {
	#principal {
		grid-template-columns: auto;
	}
}

.inner {
	justify-content: center;
	/* background-color: #ccd9ff; */
	align-items: center;
	min-height: calc(100vh - 90px);
}


/* -------- Breadcrumb -----------------------*/

.breadcrumb-simulador {
    font-size: calc(var(--fonte-simulador-px) * 1.1);
	line-height: 1.25;
	margin-bottom: 2px;
    opacity: 0.75;
    white-space: nowrap;
    user-select: none;
	color:#181717;
}

.breadcrumb-sep {
    margin: 0 4px;
    opacity: 0.5;
}

.breadcrumb-link {
    /* color: inherit; */
    text-decoration: none;
}

.breadcrumb-link:hover {
    text-decoration: underline;
}


@media screen and (max-width: 736px) {
    .breadcrumb-simulador {
        display: none;
    }
}

@media (orientation: portrait) {
    .breadcrumb-wrapper {
        grid-template-columns: auto;
    }
}


/* -------- Breadcrumb -----------------------*/






/* -------- Clique no canvas para iniciar/pausar/reuniciar simulação ---------- */

/* overlay flutuante */
#overlay-playpause {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    pointer-events: none;

    background: rgba(0, 0, 0, 0.55);
    border-radius: 50%;
    width: 90px;
    height: 90px;

    opacity: 0;
    transition: opacity 0.2s ease;
    z-index: 10;
}

#overlay-playpause i {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);

    color: white;
    font-size: 40px;

    opacity: 0;
    transition: opacity 0.1s ease;
}

#overlay-playpause.show {
    opacity: 1;
}

#overlay-playpause.play  #icon-play,
#overlay-playpause.pause #icon-pause {
    opacity: 1;
}

#overlay-playpause.undo #icon-undo {
    opacity: 1;
}

/* -------- Clique no canvas para iniciar/pausar/reuniciar simulação ---------- */



/* #principal {
	border: solid 1px #000000;
	border-radius: 15px;
}
*/

/* desktop */
/* #principal {
	margin-top: 60px !important;
}

.top-bar  {
    background-color: var(--top-bar);
    position: absolute;
    width: 100%;
	left: 0;
	top: 0;
    display: flex;
    justify-content: space-around;
    padding: 8px;
} */

/* .top-bar h1 {
	font-size: 18pt;
	margin: auto;
	color: #081929;
} */

/* mobile */
/* @media screen and (max-width: 520px) and (orientation: portrait) {
	#principal {
		margin-top: 10px !important;
	}

	.top-bar {
		display: none;
	}
} */
/* mobile */
/* @media screen and (max-height: 520px) and (orientation: landscape) {
	#principal {
		margin-top: 10px !important;
	}

	.top-bar {
		display: none;
	}
}

#botoes-top-bar {
	display: flex;
	justify-content: space-around;
	gap: 1em;
} */