body{
    --unaccepted-color: #d00;
    --queueing-color: #248;
    --compiling-color: #c60;
    --compile-error-color: #f90;
    --judging-color: #248;
    --judging-extra-color: #36d;
    --accepted-color: #284;
    --unknown-error-color: #808;
    --unaccepted-bg-color: #fff1f1;
    --queueing-bg-color: #fafbfe;
    --compiling-bg-color: #ffefe0;
    --compile-error-bg-color: #fff9f3;
    --judging-bg-color: #fafbfe;
    --judging-extra-bg-color: #fdfdff;
    --accepted-bg-color: #fafefb;
    --unknown-error-bg-color: #fffeff;
    --queueing-border-color: #36d;
    --compiling-border-color: #f90;
    --judging-border-color: #6cf;
    --judging-extra-border-color: #6cf;
}

.record,.problem-code-container{
    height: calc(100vh - 4rem);
    background-color: #fafafa;
    border-radius: 1rem;
    box-shadow: 0 0 1rem rgba(0,0,0,0.3);
    margin-top: 1rem;
    padding: 1rem;
    margin-left: auto; margin-right: auto;
    display: flex;
    flex-direction: column;
    overflow-y: scroll;
}
.record{
    height: calc(100vh - 2rem);
    width: calc(65% - 2rem);
    padding: 0;
}
.problem-code-container{
    margin-left: 0;
    width: calc(35% - 3rem);
}
h1{
    margin: 0;
    left: 0;
}
.record-container{
    margin: 0;
    position: relative;
    overflow: hidden;
    border-radius: 1rem;
    height: calc(100% - 2rem - 4px);
    width: calc(100% - 2rem - 4px);
    padding: 1rem;
    background-color: #fafafa;
}
.record-scroll-container{
    height: 100%;
    margin-right: -1rem;
    padding-right: 1rem;
    overflow: scroll;
}
.record-header{
    display: flex;
    padding: 0.5rem 1rem;
    flex-direction: row;
    align-items: center;
    border: 2px solid #fff1;
    border-radius: 1rem;
    background-color: #fff0;
    margin-bottom: 0.8rem;
}
.Unaccepted{border: 2px solid var(--unaccepted-color); background-color: var(--unaccepted-bg-color);}
.Queueing{border: 2px solid var(--queueing-color); background-color: var(--queueing-bg-color);}
.Compiling{border: 2px solid var(--compiling-color); background-color: var(--compiling-bg-color);}
.CompileError{border: 2px solid var(--compile-error-color); background-color: var(--compile-error-bg-color);}
.Judging{border: 2px solid var(--judging-color); background-color: var(--judging-bg-color);}
.JudgingExtra{border: 2px solid var(--judging-extra-color); background-color: var(--judging-extra-bg-color);}
.Accepted{border: 2px solid var(--accepted-color); background-color: var(--accepted-bg-color);}
.UnknownError{border: 2px solid var(--unknown-error-color); background-color: var(--unknown-error-bg-color);}
.Queueing::after{ background-color: var(--queueing-border-color); }
.Compiling::after{ background-color: var(--compiling-border-color); }
.Judging::after{ background-color: var(--judging-border-color); }
.JudgingExtra::after{ background-color: var(--judging-extra-border-color); }
.Queueing,.Compiling,.Judging,.JudgingExtra{
    z-index: 2;
}
.Queueing::before,.Compiling::before,.Judging::before,.JudgingExtra::before{
    content: '';
    position: absolute;
    z-index: -1;
    width: calc(100% - 5px);
    height: calc(100% - 5px);
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    border-radius: 1rem;
}
.Queueing::before{ background-color: var(--queueing-bg-color);}
.Compiling::before{ background-color: var(--compiling-bg-color);}
.Judging::before{ background-color: var(--judging-bg-color);}
.JudgingExtra::before{ background-color: var(--judging-extra-bg-color);}
.Queueing::after,.Compiling::after,.Judging::after,.JudgingExtra::after{
    content: '';
    position: absolute;
    z-index: -2;
    width: 100%;
    height: 40%;
    left: -50%;
    top: 30%;
    transform-origin: right center;
    border-radius: 1rem;
    animation: rotate 1.5s linear infinite;
}
@keyframes rotate {
    0% {
        transform: rotate(0deg);
    }
    50% {
        transform: rotate(180deg);
    }
    100%{
        transform: rotate(360deg);
    }
}
.record-info{
    margin-left: auto;
    font-family: "SIMHEI",sans-serif,monospace;
    display: flex;
    flex-direction: column;
}
.record-info-item-obj{
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
}
.compiling-status{
    margin-top: 0.8rem; margin-bottom: 0.8rem;
    margin-left: 1rem;
    font-size: large;
    font-weight: bold;
}
.compiling-group{
    margin-top: 0.5rem;
    background-color: #fff5e5;
    border-radius: 1rem;
    border: 2px solid #a60;
    cursor: pointer;
}
.compiling-group:hover,.compiling-group.active{
    color: #666;
}
.compiling-info{
    margin-top: 0;
    padding: 0.5rem 1rem;
    background-color: #fffcf8;
    border-radius: 0 0 1rem 1rem;
}
.compiling-info pre{
    margin: 0;
}
.record-detail,.record-extra-detail{
    margin-top: 0.5rem;
    border-radius: 1rem;
    border: 2px solid #008;
    background-color: #eaeaff;
    display: flex;
    flex-direction: column;
}
.record-detail-title{
    padding: 0.8rem 1rem;
    font-size: 1;
    display:flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    vertical-align: middle;
    cursor: pointer;
}
.record-detail-title:hover,.record-detail-title.active{
    /* text-decoration: underline; */
    color: #666;
}
.record-detail-title-title{
    font-weight: bold;
}
.record-detail-title img{
    height: 1rem;
    vertical-align: middle;
    transform: translate(0, -0.1rem);
}
.record-detail-content{
    padding: 0 1rem;
    background-color: #fefeff;
    border-radius: 0 0 1rem 1rem;
}
.record-detail-content-title span{
    font-weight: bold;
    margin-right: 0.5rem;
}
.record-detail-content-title{
    margin-top: 0.8rem;
}
.copy-btn{
    background-color: white;
    border-radius: 0.5rem;
    border: 1px solid #ccc;
    padding: 0.2rem 0.5rem;
}
.copy-btn:hover{
    background-color: #eee;
}
.record-detail-content-input,.record-detail-content-output{
    display: block;
    width: 100%;
    margin-top:0.5rem;
    margin-bottom: 1rem;
}
.input-frame,.output-frame{
    display: block;
    background-color: white;
    border-radius: 0.5rem;
    border: 1px solid #ccc;
    width: calc( 100% - 1rem);
    padding: 0.5rem 0.8rem;
    white-space: pre-wrap;
}
.code-container{
    display: block;
    border-radius: 0.5rem;
    border: 1px solid #ccc;
    width: calc( 100% - 1rem);
    padding: 0;
}
.code-container pre{
    margin:0;
    border-radius: 0.5rem;
}
.problem-code{
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
}
.code-title{
    font-weight: bold;
}
.problem-link a{
    color: #126;
    text-decoration: none;
}
.problem-link a:hover,.problem-link a:active{
    color: #36d;
    text-decoration: underline;
}