*, *::before, *::after
{
    box-sizing: border-box;
}

.qa_content
{
    width: 100%;
    height: 100%;
}

.qa_que
{
    padding: 5px 10px;
    margin: 5px 10px;
    font-weight: 700;
    font-size: 24px;
    width: 95%;
    display: flex;
    text-align: right;
    align-items: center;
    justify-content: flex-start;
    text-wrap: wrap;
}

.qa_anss
{
    border: none;
    padding: 5px 10px;
    margin: 5px 10px;
    font-weight: 300;
    font-size: 18px;
    text-align: center;
    cursor: pointer;
    box-shadow: 0px 1px 3px 2px #aaa;
    color: #000;
}

.qa_anss:hover
{
    box-shadow: 0px 1px 6px 3px #aaa;
}

.qa_fl2
{
    border: 2px solid #000;
    width: 450px;
    height: 90%;
    padding: 15px 0;
    padding-bottom: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    background-color: #fff;
    padding: 10px 15px;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.qa_top_bar
{
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
}

.qa_tb_progress
{
    flex-grow: 1;
    background-color: #d9effa;
    border-radius: 500px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    overflow: hidden;
    position: relative;
    padding: 2px;
}

.pb_inside
{
    height: 100%;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: 100%;
    min-width: 10px;
    background-color: #24b448;
    transition: width .5s;
    padding: 8px 0;
    border-radius: 500px;
    font-size: 18px;
    font-weight: 300;
}

.qa_tb_mistakes
{
    padding: 0 10px 0 0;
    text-wrap: wrap;
}

.qa_qna_fill
{
    width: 100%;
    flex-grow: 4;
    display: flex;
    flex-direction: column;
    align-items: center;
    background-color: #fff;
    border: 2px solid #000;
    max-height: 80%;
    overflow: hidden;
}

.qa_ans_fill
{
    display: flex;
    flex-direction: column;
    gap: 5px;
    padding-top: 5px;
    justify-content: center;
    height: 80%;
    width: 100%;
    flex-grow: 3;
}

.qa_continue
{
    width: 90%;
    padding: 8px 10px;
    cursor: default;
    border-radius: 2px;
    background-color: #e5e5e5;
    color: #acacac;
    font-size: 24px;
    transition: background-color .2s, color .2s;
    margin-top: 15px;
    border: none;
}

.btm_btn_fill
{
    width: 100%;
    flex-grow: 1;
    padding: 20px 0;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

.qa_btn_text
{
    width: 90%;
    text-align: right;
    padding: 5px;
    line-height: 1em;
    color: #000;
}

.tf_txt_fill
{
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
}

.tf_ttl_fill
{
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
}

.qa_btn_text i
{
    font-size: 22px;
}

.qa_btn_text b
{
    font-size: 18px;
}

.qa_btn_text_ttl
{
    font-size: 18px;
    font-weight: bold;
}

#qa_img
{
    max-width: 70px;
    max-height: 70px;
    min-width: 50px;
}

.bottom_sub_fill
{
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 8px;
    flex-grow: 1;
}

.btm_sub_nm
{
    font-weight: 700;
    font-size: 24px;
    cursor: pointer;
}

.qa_subject_fill
{
    padding: 15px 0;
    display: flex;
    flex-direction: row;
    width: 100%;
    justify-content: center;
    align-items: center;
    overflow: hidden;
    flex-wrap: nowrap;
    gap: 5px;
}

.qa_subs_scroll_container
{
    display: flex;
    transition: transform 0.3s ease;
    width: 70%;
    gap: 5px;
    overflow-x: scroll;
    -ms-overflow-style: none;
    scrollbar-width: none;
    align-items: center;
    justify-content: space-around;
}

.qa_subject
{
    border: .5px solid #000;
    padding: 5px 10px;
    font-size: 18px;
    cursor: pointer;
    text-wrap: nowrap;
    flex-shrink: 0;
    user-select: none;
    box-sizing: border-box;
}

.qa_subject:hover
{
    box-shadow: inset 0 0 3px 1px #81b3d5;
    border: .5px solid #81b3d5;
}

.scroll-btn 
{
    background-color: #ddf4ff;
    color: #222;
    border: none;
    padding: 10px;
    cursor: pointer;
    font-size: 18px;
    border-radius: 4px;
    width: 13%;
}

.scroll-btn:disabled 
{
    background-color: #aaa;
}

.qa_content_fill
{
    width: 100%;
    flex-grow: 1;
}

.qa_tb_close
{
    margin-left: 15px;
    color: #aaa;
    font-weight: 700;
    font-size: 24px;
    cursor: pointer;
    border: 2px solid #aaa;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: color .2s, border-color .2s;
}

.qa_tb_close:hover
{
    color: #222;
    border-color: #222;
}

.quiz_in
{
    width: 100%;
    max-height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    flex-grow: 1;
}

.qa_sub_txt_fl
{
    transform: rotateY(180deg);
}

.qa_flt_vid_ex
{
    position: fixed;
    top: 0;
    left: 0;
    z-index: 99999999999999;
    width: 100%;
    height: 100vh;
    background-color: #ffffff70;
    backdrop-filter: blur(8px);
    display: flex;
    align-items: center;
    justify-content: center;
}

.qa_flt_vid_fill
{
    border: 1px solid #000;
    padding: 20px;
    border-radius: 10px;
    background-color: #fff;
    box-shadow: 0px 0px 6px 3px #aaa;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 30px;
}

.qa_ev_kg_btn
{
    border: .5px solid #66ae30;
    padding: 10px 20px;
    font-size: 28px;
    cursor: pointer;
    color: #66ae30;
    background-color: #fff;
    transition: all .3s;
}

.qa_ev_kg_btn:hover
{
    background-color: #66ae30;
    color: #fff;
}

.m10mis
{
    border: 1px solid #000;
    padding: 30px 0;
    border-radius: 10px;
    font-size: 28px;
    position: fixed;
    width: 550px;
    top: 40%;
    left: calc(50% - 275px);
    z-index: 9999999999;
    background-color: #fff;
    box-shadow: 0 0 6px 3px #ccc;
    text-align: center;
    user-select: none;
}

#rest_ok_btn
{
    padding: 3px 10px;
    font-size: 24px;
    background-color: #fff;
    box-shadow: 0 0 3px 1px #ccc;
    margin: 10px;
    margin-top: 20px;
    border-radius: 5px;
    cursor: pointer;
    transition: .2s;
}

#rest_ok_btn:hover
{
    box-shadow: 0 0 5px 2px #ccc;
}

.subject_summery
{
    width: 100%;
    height: 100%;
    z-index: 99999;
    position: absolute;
    background-color: #fff;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.on_top_of_when_finish
{
    width: 100%;
    z-index: 100;
    background-color: #fff;
    position: absolute;
    overflow: hidden;
    font-size: 24px;
    border: 2px solid #000;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Quiz loading animation */

.quiz_loading_filllll
{
    position: fixed;
    width: 100%;
    height: 100%;
    background-color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    direction: ltr;
}

.loader 
{
    direction: ltr;
    width: 60px;
    aspect-ratio: 1;
    display: grid;
    grid: 50%/50%;
    color: #25b09b;
    --_g: no-repeat linear-gradient(currentColor 0 0);
    background: var(--_g),var(--_g),var(--_g);
    background-size: 50.1% 50.1%;
    animation: 
      l6-0   1.5s infinite steps(1) alternate,
      l6-0-0 3s   infinite steps(1);
}

.loader::before 
{
    content: "";
    background: currentColor;
    transform: perspective(150px) rotateY(0deg) rotateX(0deg);
    transform-origin: bottom right; 
    animation: l6-1 1.5s infinite linear alternate;
}

 @keyframes l6-0 
 {
    0%  {background-position: 0    100%,100% 100%,100% 0}
    33% {background-position: 100% 100%,100% 100%,100% 0}
    66% {background-position: 100% 0   ,100% 0   ,100% 0}
}

@keyframes l6-0-0 
{
    0%  {transform: scaleX(1)  rotate(0deg)}
    50% {transform: scaleX(-1) rotate(-90deg)}
}

@keyframes l6-1 
{
    16.5%{transform:perspective(150px) rotateX(-90deg)  rotateY(0deg)    rotateX(0deg);filter:grayscale(0.8)}
    33%  {transform:perspective(150px) rotateX(-180deg) rotateY(0deg)    rotateX(0deg)}
    66%  {transform:perspective(150px) rotateX(-180deg) rotateY(-180deg) rotateX(0deg)}
    100% {transform:perspective(150px) rotateX(-180deg) rotateY(-180deg) rotateX(-180deg);filter:grayscale(0.8)}
}

