header{
	position:sticky;
	top: 0;
	max-width:100%;
	height:100px;
	background-color: white;;
	box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);
	z-index:5;
}


/* Quando o usuário rola a página */
header.shrink {
    height: 70px; /* antes era 100px */
    transition: all 0.3s ease;
}

/* Logo encolhida */
header.shrink .logo {
    height: 50px;
    margin-top: 10px; 
    transition: all 0.3s ease;
}

/* Ícone encolhido */
header.shrink .iconemenu {
    height: 30px;
    margin-top:-25px;
    transition: all 0.3s ease;
}


/* Garante animação suave também no estado normal */
header, 
.logo, 
.iconemenu {
    transition: all 0.3s ease;
}


body{
	width:100%;
	height:100%;
	margin:0;
	 overflow: auto;
}
body::-webkit-scrollbar {
  display: none;
}
section{
	width:100%;
	height:100%; 
	display:flex;
	justify-content:center;
	background-color:white;
}
a {
  text-decoration: none; /* tira o sublinhado */
  color: inherit;         /* herda a cor do elemento pai */
}
.logo{
	height:60px;
	width:auto;
	margin-top:30px;
	margin-left:30px;
	float:left;
}


.logo:hover{
	height:62px;
}

.nav{
	display:none;
	position:absolute;
	right:40px;
	top:0px;
	text-align:right;
	width:100%;
}
.navbar{
	display:block;
	float:right;
	margin-right:20px;
	margin-top:35px;
	z-index:-1;
	padding:0;
	background-color: white;
}
.navbar:hover{
    border:none;
}
.btn{
	background-color: white;
	padding:0;
	border:none;
}

.portal{
	height:48px;
	text-decoration:none;
	color:#d85720;
	font-size:18px;
	font-family:calibri;
	font-weight:bold;
	padding:10px 15px;
	background-color:#ffffff;
	border:1px solid #d85720;
	border-radius:10px;
	box-shadow: 3px 3px 5px rgba(0, 0, 0, 0.2);
}
.portal:hover{
    color:white;
	background-color:#d85720;
}
.portal2{
	height:48px;
	text-decoration:none;
	font-size:18px;
	font-family:calibri;
	font-weight:bold;
	padding:10px 15px;
}
.fa-sign-out{
	font-size: 30px;
}
.login{
		text-align: center;
		color:#131e80;
		margin-top:20px;
}
#submitlog{
		background-color: #131e80;
		color:white;
		border-radius:5px;
		padding:3px 40px;
}
.login input{
		width:300px;
		padding:3px 20px;
		color:#131e80;
		border: solid 1px #131e80;
		border-radius:5px;
		font-size: 18px;
		margin-left:-0px;
}
.login p{
		font-size: 18px;
}
.error-message{
		color:#d85720;
}
.forget a{
		font-size:15px;
		color:#131e80;
}
.iconemenu{
height:35px;
width:auto;
z-index:2;
}
#marcador{
    position:fixed;
    top:10px;
    left:0px;
    width:70px;
    height:auto;
    z-index:-1;
}
.openbtn{
    position:fixed;
    top:0;
    left:0;
    width:70px;
    height:100%;
    display:block;
    background-color:#ffffff;
    padding-top:140px;
    margin:0 auto;
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);
}
.divclosebtn{
    position:fixed;
    top:128px;
    left:0px;
    width:450px;
    height:1px;
	max-width: 100%;
}
section.shrink .divclosebtn {
    top:90px;
    transition: all 0.3s ease;
}
.closebtn{
    float:right;
    display:none;
	padding:10px;
	padding-top: 5px;
		background: rgba(255, 255, 255, 0.35);

    border-top-left-radius: 7px;
    border-bottom-left-radius: 7px;
}

.iconemenuaulas{
	height:auto;
	width:40px;
	margin-left:14px;
	margin-top:-3px;
}
.iconemenuaulas2{
	height:40px;
	width:auto;
	margin-right:10px;
	margin-top:5px;

}

.menuaulas{
	position:fixed;
	top:0px;
	left:-450px;
	margin-left:calc(450px - 100%);
	width:450px;
	max-width: 100%;
	height:100%;
	color:#131e80;
	padding-top:170px;
	padding-bottom: 50px;
	margin:0 auto;
	overflow-x:auto;
  	transition:0.5s;
	background: rgba(255, 255, 255, 1);
	box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);
    max-height: 100vh; 
    overflow-y: scroll;
	z-index:4;
    transition: left 0.5s ease; 
    	 overflow: auto;
      scrollbar-width: none;    
      -ms-overflow-style: none;  
}
section.shrink .menuaulas {
    padding-top:143px;
    transition: all 0.3s ease;
}


section.shrink .openbtn {
    padding-top:100px;
    height: 160px;
    transition: all 0.3s ease;
    background-color: #6f918a;
    box-shadow: none;
}
section.shrink .conteudo {
    margin-left:0px;
    margin-top:220px;
    transition: all 0.3s ease;
}
section.shrink .conteudoaula {
    margin-left:0px;
    margin-top:200px;
    transition: all 0.3s ease;
}
section.shrink .conteudomaterial {
    margin-left:0px;
    margin-top:200px;
    transition: all 0.3s ease;
}
section.shrink .conteudocaderno {
    margin-left:0px;
    margin-top:200px;
    transition: all 0.3s ease;
}
footer.shrink{
    padding-left:0px;
}

#labelselect{
    color:#424242;
    margin-left:10px;
}
.cursoselect{
    padding:5px;
    border-radius: 8px;
    color:#131e80;
    font-size:17px;
    width: 300px;
}

.nenhum{
    color:#424242;
    margin-left:30px;
}
.meuscursoselect{
    padding:5px;
    border-radius: 8px;
    color:#131e80;
    font-size:17px;
    border:solid 0.5px #131e80;
}
option{
    border-radius: 8px;
    font-size:17px;
}

.accordions {
    flex-grow: 1;

}

.ola{
    margin-left:30px;
    font-size: 18px;
}

.conteudo{
	margin-top:50px;
	margin-left:70px;
	text-align:center;
	height:auto;
	width:100%;
	background-color:#ffffff;
	z-index:0;
}
.conteudomaterial{
	margin-top:50px;
	margin-left:70px;
	text-align:center;
	display:none;
	height:auto;
	width:100%;
	background-color:#ffffff;
	z-index:0;
}
.conteudocaderno{
	margin-top:50px;
	margin-left:70px;
	text-align:center;
	display:none;
	height:auto;
	min-height:800px;
	width:100%;
	background-color:#ffffff;
	z-index:0;
}
.conteudoaula{
	margin-top:50px;
	margin-left:70px;
	padding:0px 0px;
	text-align:center;
	height:auto;
	min-height:700px;
	width:100%;
	display:none;
	background-color:#ffffff;
	z-index:0;
	font-size: 20px;
	font-family: Arial, Helvetica, sans-serif;
	color:#252525;
}

#formCurso{
    font-size:18px;
    margin-left: 20px;
}
#cap{
    margin-left: 20px;
    color:#424242;
}


 .checkaula-container {
    display: flex;
    align-items: center;
    cursor: pointer;
    font-size: 18px;
    margin: 12px 0;
    user-select: none;
	color:#d85720;
	font-family: Arial, Helvetica, sans-serif;
	font-style: italic;
	margin-left: auto;
	margin-bottom: -5px;
  }
.checklabel{
	display:none;
}
  /* Esconde o checkbox nativo */
  .checkaula-container input[type="checkbox"] {
    display: none;
  }

  /* Círculo visual */
  .checkmark {
    width: 36px;
    height: 36px;
    border: 3px solid #d85720;
    border-radius: 50%;
    margin-right: 12px;
    position: relative;
    transition: background-color 0.3s ease, border-color 0.3s ease;
    background-color: white;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  /* Ícone de check usando um SVG embutido via pseudo-elemento */
  .checkmark::after {
    content: "✔";
    font-size: 20px;
    color: white;
    opacity: 0;
    transform: rotate(0deg);
    transition: opacity 0.2s ease, transform 0.6s ease;
    display: inline-block;
  }

  /* Quando marcado: fundo azul, check aparece e gira */
  .checkaula-container input[type="checkbox"]:checked + .checkmark {
    background-color: #0ba124;
    border-color: #131e80;
  }

  .checkaula-container input[type="checkbox"]:checked + .checkmark::after {
    opacity: 1;
    transform: rotate(360deg);
  }
  .checkaula-container input[type="checkbox"]:checked + .checkmark + .checklabel {
  color: #131e80;
}


.conteudoprof{
	margin-top:50px;
	margin-left:68px;
	padding:0px 10px;
	text-align:center;
	height:auto;
	width:100%;
	background-color:#ffffff;
	z-index:0;
}
iframe{
	width:100%;
	height: auto;
	height: min-700px;
	text-align:center;	
	font-size: 20px;
	font-family: Arial, Helvetica, sans-serif;
	color:#252525;
	  border-radius:10px;
}
#frame{
   height:700px;
}
#framematerial{
   height:700px;
}
#frameredacao{
   height: auto;
   min-height:1500px;
}
#frameredacao_ia{
   height: auto;
   min-height:1500px;
}
#framecaderno{
   height: auto;
   min-height:1200px;
}
#frameaula {
  width: 100%;
  height: 56.26%;
  border: none;
  border-radius:10px;
  display: block;
  margin: 0 auto;
  aspect-ratio: 16 / 9; /* garante formato 16:9 */
  max-width: 100%;
}
#framequestionario {
    width: 100%;
    height:auto;
    min-height: 2500px; /* altura mínima */
    display: block;
    position: relative;
    box-sizing: border-box;
}

.expandir{
    width:100%;
}
#expandir{
    font-size: 18px;
}
#expandiricone{
    height: 22px;
}

@media (max-width: 768px) {
  .fullscreen-video #frameaula {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    z-index: 9999; /* Fica acima de tudo */
    background-color: black;
  }
}

.progresso{
	color:#f0eef5;
	display:none;
	text-align:center;
	padding-left:70px;
}
.progresso input{
	color:rgb(94, 91, 91);
	background-color: white;
	padding:5px 30px;
	font-size: 15px;
	font-weight: bold;
	border-radius: 15px;
}
body::after{
		clear:both;
		content:none;
}

.select{
	padding-left: 50px;
}
.dropdown-menu{
	width:260px;
	height:auto;
	padding:10px;
	color:#131e80;
	margin-right:-20px;
	border-radius:5px;
	margin-top: 30px !important;
}
header.shrink .dropdown-menu {
    margin-top: 10px !important;
    transition: all 0.3s ease;
}

.link{
	text-decoration:none;
	color:#131e80;
	font-size:18px;
	font-family:calibri;
	font-weight:bold;
	padding:10px 20px;
}
.link:hover{
	color:#d85720;
}
#fabars{
	font-size:40px;
	color:#131e80;
}
#fabars:hover{
	color:#d85720;
}

.ativo{
	text-decoration:none;
	color:#d85720;
	font-size:18px;
	font-family:calibri;
	font-weight:bold;
	padding:10px 20px;
}

.icone{
	font-size:20px;
	color:#d85720;
}
.icone:hover{
	color:#131e80;
}
body{
	width:100%;
	height:auto;
	margin:0;
	padding:0;
}
body::after{
		clear:both;
		content:none;
}

.accordions{
	width:100%;
	margin:0 auto;
}

.accordion-item input{
	display:none;
}
.accordion-item label{
	display:block;
	color:#424242;
	font-size: 18px;
	font-weight: bold;
	background:#ffffff;
	cursor:pointer;
	padding:8px 15px;

}
.labelmodulo{
    color:#252525;
}
	.accordion-item label:hover{
	background-color: #cd8a6e;
	box-shadow: 2px 2px #cd8a6e;
	}
	.accordion-content{
	height:0;
	overflow: hidden;
	font-weight: normal;
	color:#131e80;
	font-size:18px
	-webkit-transition: height 0.3s ease-in-out;
	-moz-transition: height 0.3s ease-in-out;
	-o-transition: height 0.3s ease-in-out;
	-ms-transition: height 0.3s ease-in-out;
	transition: height 0.3s ease-in-out;
	
}
[id^=accordion]:checked ~ .accordion-content {
	height: 100px;
	background-color: #ffffff;
	padding:8px 15px;
	height:auto;s
}
.accordion-content a{
	font-family:calibri;
	width:90%;
	display:inline-block;
	font-size:18px;
	padding:10px 20px;
}
.accordion-content a:hover{
    color:#a43b0f;
}
.accordion-header{
	font-size: 22px !important;
	color:#131e80 !important;
}

.accordionitem{
    border:none;
    color:#131e80 !important;
    font-weight: normal !important;
}
.fs-5{
    font-size: 22px !important;
}
.textoaula{
    width:95%;
    height:auto;
    padding:0px;
}
.fa-check{
    color:green;
}


footer{
    position:fixed;
    bottom:0px;
	background-color:#42404b;
	width:100%;
	height:65px;
	text-align:center;
	color:#ffffff;
	margin:0px;
	font-size:11px;
	padding-left:70px;
	z-index:0;
}


@media only screen and (min-width: 450px) {
    .menuaulas{
    	margin-left:0px;
    }
}
@media only screen and (min-width: 700px) {


	.progresso{
		text-align:right;
		padding-right:120px;
		padding-left:0px;
	}

	#frame{
	   height:700px;
	}
	#framematerial{
	   height:700px;
	}
	#frameaula{
    width: 80%;
    height: 45%;
    min-width: 500px;
    }
    #framequestionario {
      width: 100%;
      min-height: 700px;
    }

@media only screen and (min-width: 850px) {

	.login{
		margin-top:0px;
	}
	.progresso{
		padding-right:180px;
	}
	.checklabel{
	display:block;
	}
	#frameaula{
    width: 100%;
    height: 56.26%;
    aspect-ratio: 16 / 9; /* para manter a proporção do vídeo */
    min-width: 750px;
	}

}

@media only screen and (min-width: 900px) {
    .nav{
		display:block;
		margin-top:50px;
	}
	.navbar{
		display:none;
	}
	header.shrink .nav {
        margin-top:30px;
        transition: all 0.3s ease;
    }
    section.shrink .openbtn {
        padding-top:110px;
        height: 160px;
        transition: all 0.3s ease;
    }
    #frameaula {
    width: 100%;
    height: 56.25%;
    aspect-ratio: 16 / 9;
    min-width: 800px;
  }
}

@media only screen and (min-width: 1150px) {

    header{
		height:120px;
	}
	header.shrink {
        height: 90px;
        transition: all 0.3s ease;
    }
	.logo{
		height:70px;
	}
	.logo:hover{
		height:72px;
	}
     header.shrink .logo {
        height: 60px;
        margin-top: 15px;
        transition: all 0.3s ease;
    }
	.iconemenu{
		height:45px;
	}
	header.shrink .iconemenu {
        height: 35px;
        transition: all 0.3s ease;
    }
    
}
