html,body {
	margin: 0;
	padding: 0;
	
}
body{
	font-family: sans-serif;

}

.framework{
	display: flex;
	justify-content: center;
	flex-direction: row;
	flex-wrap: nowrap;
	column-gap: 20px;
	align-items: center;
	width: 100vw;
	height: 100vh;
}

#chapters{
	min-width: fit-content;
	width: 250px;
	padding-left: 10px;
}

#chapters .heading{
	font-size: 1.2em;
	font-weight: bold;
}

.chapter-item{
	margin: 5px 0;
	padding: 5px;
	cursor: pointer;
}
.chapter-item:hover{
	background-color: #eee;
}

.chapter-item.current span.title{
	color: #558b2f;
	text-decoration: underline;
}
.chapter-item.started{
	color: #558b2f;
}


.video-container {
	--videoScale: 0.8; 
	position: relative;
	width: calc(1280px * var(--videoScale));
	height: calc(720px * var(--videoScale));
	max-width: calc(100vw - 40px);
	max-height: 100vh;
	padding: 0 20px;
}
.framework.biggerIsBetter{
	background-color: #333333cc;
}

div#close {
	display: none;
}
.framework.biggerIsBetter div#close {
	position: absolute;
	top: 0;
	right: 0;
	font-size: 40px;
	width: 50px;
	height: 50px;
	display: inline-flex;
	justify-content: center;
	align-items: center;
	cursor: pointer;
	color: #eee;
}
.framework.biggerIsBetter div#close svg {
	fill: currentColor;
	transition: all .5s;
}
.framework.biggerIsBetter div#close:hover svg {
	width: 48px;
	height: 48px;
	color: #fff;
}

.framework.biggerIsBetter .video-container {
	--videoScale: 1;
	position: absolute;
}
.framework.biggerIsBetter .chapters {
	display: none;
}

#authModal, #authModalMobile, #noMobileModal{
	z-index: 100;
}

#question-overlay, #incorrect-answer-overlay, #video1-alternatives-overlay {
	position: absolute;
	/*position: fixed;*/
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.7);
	/*display: flex;*/
	justify-content: center;
	align-items: center;
	z-index: 60;
}

#question-container, #incorrect-answer-container, #video1-alternatives {
	padding: 20px;
	border-radius: 10px;
	/*width: 80%; */
	max-width: 600px;
	text-align: left;
}
/*
.hidden {
	display: none !important;
}
*/

.alternatives-container {
	margin-top: 15px;
}

.alternative {
	margin-bottom: 10px;
	display: flex;
	column-gap: 10px;
	align-items: flex-start;	
}

.alternative input{
	margin-top: 5px;
}
button {
	margin-top: 15px;
	padding: 10px 15px;
	border: none;
	background-color: #0088cc;
	color: white;
	border-radius: 5px;
	cursor: pointer;
}

button:hover {
	background-color: #00aaff;
}
/* --- question styles ----*/
#question-container h3{
	  font-weight: 800;
}
