:root {
    --main-background: rgb(20, 20, 20);
    --main-background-hover: rgba(20, 20, 20, .95);
    --main-essential: rgb(101, 2, 121);
    --main-essential-secondary: rgb(78, 3, 94);
}

/* ==== DARK THEME SCROLLBAR ==== */

/* For Chrome, Edge, Safari */
::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}

::-webkit-scrollbar-track {
  background: #1a1a1a;  /* scrollbar background */
}

::-webkit-scrollbar-thumb {
  background-color: #444;  /* scrollbar thumb */
  border-radius: 6px;
  border: 2px solid #1a1a1a; /* gives the thumb a bit of spacing */
}

::-webkit-scrollbar-thumb:hover {
  background-color: #666;
}

/* For Firefox */
* {
  scrollbar-width: thin;              /* “auto” or “thin” */
  scrollbar-color: #444 #1a1a1a;     /* thumb color, track color */
}

a{
    all:unset;
}

html,body{
    padding: 0;
    margin: 0;
    font-family: 'SimSun', '宋体', serif;
    overflow: hidden;
}
.index-container{
    display: flex;
    width: 100vw;
    height: 100vh;
}
.index-left, .index-right{
    background-color: var(--main-background);
    color: var(--main-essential);
    flex: 1;
    width: 100%;
    height: 100%;
    font-size: 4rem;
    user-select: none;
}

.index-left:hover, .index-right:hover{
    background-color: var(--main-background-hover);
    cursor: pointer;
    box-shadow: inset 1px 1px 10px 10px var(--main-essential-secondary);
}

.index-left > a, .index-right > a{
    display: flex;
    width: 100%;
    height: 100%;
    justify-content: center;
    align-items: center;
}

.index-left{
    border-right: 1px solid var(--main-essential);
}

.container{
    background-color: var(--main-background);
    color: var(--main-essential);
    width: 100vw;
    height: 100vh;
    padding: 2rem;
    display: block;
    box-sizing: border-box;
    font-size: 3.25rem;
    display: flex;
}

.main-content{
    display: flex;
    padding: 1rem 1rem 1rem 0 ;
    flex: 2.75;
    flex-direction: column;
    overflow-y: auto;
    flex: 3;
    margin-top: 2rem;
}

.main-content > p {
    margin: 0;
    color: rgb(255, 255, 255);
    user-select: none;
    height: max-content;
    border-bottom: .5px solid rgb(82, 82, 82);
    padding: .25rem 0;
}

.main-content > p > ruby rt {
font-size: 0.35em;
    color: rgb(9, 255, 0);
}

.side-panel{
    display: flex;
    flex: 1;
    padding: 1rem 0 1rem 1rem ;
    color: rgb(255, 255, 255);
    display: none;
    overflow-y: auto;
    margin-top: 2rem;
    flex-direction: column;
    gap: .25rem;
    background-color: inherit;
}



.side-panel > table{
    color: rgb(255, 255, 255);
    font-size: 1.25rem;
}

.side-panel > table > tr {
    border-bottom: 1px solid white;
}

.side-panel > table > tr > :first-child{
    width: 20%;
    color: red;
}

.side-panel > table > tr > :nth-child(2){
    width: 30%;
}

.side-panel > table > tr > :nth-child(3){
    width: 50%;
}

.highlighted {
    color: #ffae00 !important; /* orange text when highlighted */
}

.highlight{
    color: rgb(9, 255, 0);
}

.controls{
    position: absolute;
    top: 0;
    left: 0;
    color: rgb(255 255 255);
    user-select: none;
    background-color: var(--main-background);
    width: 100%;
    padding: 1rem 0 1rem 3rem;
}

.back-svg{
    fill: white;
    width: 1.5rem;
    display: inline;
    vertical-align: middle;
    margin-right: 1rem;
    padding: .5rem;
}

.back-svg:hover{
    fill: var(--main-essential);
    cursor: pointer;
}

.controls button {
  background: #333;
  color: #fff;
  border: 1px solid #555;
  border-radius: 4px;
  padding: 0.25rem 0.5rem;
  margin-left: 0.5rem;
  cursor: pointer;
  font-size: 1rem;
  transition: background 0.2s;
}

.controls button:hover {
  background: #555;
}

.controls > span {
    display: inline;
    vertical-align: middle;
    margin-left: .25rem;
}

.controls > span:hover {
    color: red;
    cursor: pointer;
}

.hide-rt rt {
  display: none !important;
}


.sub-section{
    color: rgb(255, 255, 255);
    font-size: 1.5rem;
    padding: 0 1rem;
}
.sub-section > h2 {
    font-size: 3rem;
    color: #ffae00;
    border-radius: .75rem;
    box-shadow: inset 1px 1px 5px 5px var(--main-essential-secondary);
    padding: .5rem;
    text-align: center;
}

.sub-section > div {
    box-shadow: inset 1px 1px 5px 5px var(--main-essential-secondary);
    padding: .75rem;
    border-radius: .75rem;
}


.side-panel > button{
    background-color: var(--main-essential);
    font-size: 1.25rem;
    border-radius: .3rem;
    color: white;
    padding: .35rem;
}

.side-panel > button:hover{
    cursor: pointer;
    background-color: var(--main-essential-secondary);
}

@media only screen and (max-width: 1444px) {
    
    .main-content{
        display: flex;
        padding: 1rem 1rem 1rem 0 ;
        flex: 2.75;
        flex-direction: column;
        overflow-y: auto;
        flex: 3;
    }
    
    .side-panel{
        display: flex;
        flex: 2;
        padding: 1rem 0 1rem 1rem ;
        color: rgb(255, 255, 255);
        display: none;
        overflow-y: auto;
    }
}