.container {
    display: flex;
    align-items: center;
    flex-direction: column;
    padding: 80px 0;
    gap: 40px;
}

.videoPreview {
    text-decoration: underline;
    color: var(--secondaryButton);
    cursor: pointer;
    font-size: 16px;
}

.showUploaded {
    text-decoration: underline;
    cursor: pointer;
}

.uploadedPreview {
    display: none;
}



/*.listBegin .backButton, .problems .backButton {*/
/*    position: absolute;*/
/*}*/

/*!*.backButton::before {*!*/
/*!*    content: '⯇';*!*/
/*!*}*!*/

/*.backButton:hover .navList{*/
/*    display: flex;*/
/*}*/

/*.backButton .navList {*/
/*    background-color: var(--secondaryButton);*/
/*    color: var(--background);*/
/*    padding: 10px;*/
/*    flex-direction: column;*/
/*    font-size: 16px;*/
/*    border-radius: 20px;*/
/*    box-shadow: 2px 2px 4px 0px rgba(0, 0, 0, 0.80);*/
/*    display: none;*/
/*}*/

/*.backButton .navList .navOpt {*/
/*    padding: 10px;*/
/*}*/

/*.backButton .navList .navOpt:hover {*/
/*    color: var(--blocked);*/
/*}*/


/*.backButton .navList .navOpt + .navOpt {*/
/*    border-top: 2px solid var(--background);*/
/*}*/

.listBegin, .problems {
    background-color: var(--blockBackground);
    border-radius: 20px;
    padding: 40px 80px;
    width: 900px;
    display: flex;
    flex-direction: column;
    gap: 20px;
    font-size: 21px;
    box-shadow: 2px 2px 4px 0px rgba(0, 0, 0, 0.80);
    box-sizing: border-box;
}

.listBegin .instruction{
    font-size: 16px;
    cursor: pointer;
    color: var(--blocked);
    text-decoration: underline;
}

.listBegin .lastAttempts {
    width: 100%;
    border-collapse: collapse;
}

.lastAttempts th{
    border-top: 1px solid var(--text);
    border-bottom: 1px solid var(--text);
    padding: 20px;
}

.lastAttempts th, .lastAttempts td{
    font-size: 16px;
    text-align: center;
}

.lastAttempts td {
    padding: 10px 10px;
}

.listBegin .center{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px
}
.listBegin .center.row{
    display: flex;
    flex-direction: row;
    justify-content: center;
    gap: 20px;
    flex-wrap: wrap;
}


.problems {
    padding: 20px 0;
}

.listBegin .title, .problem .title {
    width: 100%;
    text-align: center;
    font-family: LEMONMILK, serif;
    font-size: 48px;
}

.finitoTitle {
    text-align: center;
    font-family: LEMONMILK, serif;
    font-size: 48px;
}

.listBegin .title.quick, .problem .title.quick {
    font-family: Quicksand, serif;
}

.listBegin .time {
    display: flex;
    align-items: center;
    gap: 10px;
    position: relative;
}

.listBegin .timeInfoMark{
    height: 15px;
    width: 15px;
    line-height: 15px;
    font-size: 15px;
    text-align: center;
    border-radius: 100%;
    border: 2px solid var(--blocked);
    color: var(--blocked);
    cursor: pointer;
}

.listBegin .timeInfo {
    position: absolute;
    left: 300px;
    color: var(--text);
    width: 500px;
    background: var(--blockBackground);
    padding: 20px;
    border-radius: 20px;
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
    border: 2px solid var(--text);
    display: none;
}

.listBegin .timeInfoMark:hover + .timeInfo{
    display: block;
}

.problem .title {
    font-size: 36px;
}

.problem {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    gap: 40px;
    padding: 40px 80px;
    box-sizing: border-box;
    border-bottom: 1px solid var(--text);
}

.problem .source {
    color: var(--blocked);
    font-size: 14px;
    width: 100%;
    text-align: center;
}

.problem .source a {
    text-decoration: underline;
    cursor: pointer;
}

.problem .content {
    width: 100%;
    text-align: justify;
}

.problem .answers {
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
}


.problem label:has(input:checked){
    background: var(--primaryButton);
    color: var(--text);
}

.problem label{
    background-color: var(--secondaryButton);
    color: var(--background);

}

.problem.singleChoice .answers label,
.problem.multiChoice .answers label {
    display: block;
    min-width: 120px;
    width: fit-content;
    padding: 5px 20px;
    min-height: 30px;
    height: fit-content;
    line-height: 30px;
    text-align: center;
    border-radius: 20px;
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
}

.problem.multiChoice .answers label {
    min-width: 160px;
}

.problem input[type=radio],
.problem input[type=checkbox],
input[type=submit]{
    display: none;
}

.problem.trueFalse .trueFalsePanel {
    color: var(--text);
    padding: 10px;
    display: flex;
    flex-direction: column;
    border-radius: 20px;
    gap: 20px;
}

.problem.trueFalse .trueFalseBar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: fit-content;
    gap: 40px;
}

.problem.trueFalse .trueFalseStatement,
.problem.trueFalse .trueFalseButtons {
    /*padding: 5px 10px;*/
    min-height: 40px;
    display: flex;
    align-items: center;

}

.problem.trueFalse .trueFalseButtons{
    gap: 10px;
}

.problem.trueFalse .answers label {
    display: block;
    width: 40px;
    height: 40px;
    line-height: 40px;
    text-align: center;
    border-radius: 20px;
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
}

.problem.doubleChoice .doubleChoicePanel{
    display: flex;
    gap: 20px;
    /*border: 1px solid var(--secondaryButton);*/
    box-sizing: border-box;
    border-radius: 20px;
    /*overflow: hidden;*/
    align-items: stretch;
    justify-content: center;
    /*box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);*/

}

.problem.doubleChoice .doubleLeft,
.problem.doubleChoice .doubleRight {
    display: flex;
    flex-direction: column;
    justify-content: stretch;
    align-items: center;
    box-sizing: border-box;
    gap: 20px;

}

.problem.doubleChoice .doubleMid {
    display: flex;
    justify-content: center;
    align-items: center;
}

.problem.doubleChoice .doubleLeft label,
.problem.doubleChoice .doubleRight label{
    display: flex;
    justify-content: center;
    align-items: center;
    flex: 1 1 0;
    padding: 10px 20px;
    width: 100%;
    text-align: center;
    box-sizing: border-box;
    border-radius: 20px;
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
}

.problem.userInput label{
    background: none;
    color: var(--text);
    display: flex;
    align-items: center;
    gap: 10px;
}

.problem.userInput .answer{
    background: var(--background);
    width: 160px;
    height: 40px;
    border-radius: 10px;
    border: none;
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
    font-family: Quicksand, serif;
    padding: 0px 15px;
    box-sizing: border-box;
    /*color: var(--text);*/
}

.problem.userInput .answer:focus{
    border: none;
    outline: none;
}

.problem.fileUpload input[type=file] {
    display: none;
}

.problem.fileUpload .uploadButton{
    background-color: var(--primaryButton);
    color: var(--text);
    text-align: center;
    line-height: 60px;
    height: 60px;
    border-radius: 20px;
    margin: 0 20px;
    font-size: 21px;
    padding: 0 40px;
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
    cursor: pointer;

}

.problem.fileUpload .filesFeedbacks {
    font-size: 16px;
    color: var(--blocked);
    display: flex;
    flex-direction: column;
    align-items: center;
}

.problem.fileUpload .filesFeedbacks .ready{
    color: var(--accept);
}

.problem.fileUpload .filesFeedbacks .del{
    color: var(--blocked);
    text-decoration: underline;
    cursor: pointer;
}

.problem.fileUpload .uploadPolicy {
    font-size: 16px;
    color: var(--blocked);
    text-decoration: underline;
    cursor: pointer;
    position: relative;
}

.problem.fileUpload .uploadPolicy:hover .uploadPolicyContent{
    display: block;
}

.problem.fileUpload .uploadPolicyContent {
    position: absolute;
    top: -80px;
    left: 300px;
    width: 400px;
    background: var(--blockBackground);
    padding: 20px;
    border-radius: 20px;
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
    border: 2px solid var(--text);
    color: var(--text);
    display: none;
}


.problem .photo{
    margin: 0 40px;
    overflow: hidden;
    border-radius: 20px;
}

.problem .photo img {
    width: 100%;
    border-radius: 20px;
    
}

.problem .photo .photoDescription{
    width: 100%;
    text-align: center;
    font-size: 16px;
    color: var(--blocked);
}

.controls {
    display: flex;
    justify-content: center;
}

.controls div {
    width: 150px;
}

.answers.disabled label:not(.wrong):not(.correct):not(:has(input[type=text])){
    background-color: var(--blocked);
    cursor: default;
}

.answers:has(.correct) label:not(.correct):not(.wrong),
.answers:has(.wrong) label:not(.correct):not(.wrong){
    background-color: var(--blocked);
    cursor: default;
}

.answers .correct {
    background-color: var(--accept);
    cursor: default;
}

.answers .wrong {
    background-color: var(--error);
    cursor: default;
}

.answers label:not(.correct):not(.wrong) {
    cursor: pointer;
}

.problem.userInput .answers .correctInp{
    background-color: var(--accept);
    color: var(--text);
    cursor: default;
}

.problem.userInput .answers .wrongInp{
    background-color: var(--error);
    color: var(--text);
    cursor: default;
}

.listBeginTitle {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px;
    margin-left: -34px;
}

.teacherComment {
    width: 100%;
}

.teacherCommentTitle {
    color: var(--accent1);
}


.loader {
    border: 3px solid var(--background);
    border-top: 3px solid var(--accent1);
    border-radius: 50%;
    width: 20px !important;
    height: 20px !important;
    animation: spin 1s linear infinite;
    flex-shrink: 0;
    flex-grow: 0;
}

.statusFeedback {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 10px;
    height: 0;
    transition: height 500ms ease-in-out;
    overflow: hidden;
}

.statusFeedback.processing {
    height: 70px;
}

.problemOptions {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

.discordLink {
    color: var(--secondaryButton);
    text-decoration: underline;
}

textarea.answer {
    padding: 10px !important;
}

