body {
    box-sizing: border-box;
    max-height: 100vh;
}

main {
    display: grid;
    grid-template-rows: 5rem 2.5rem auto;
    grid-auto-flow: row;
}

#rep-btns {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: 1fr;
    align-items: stretch;
    justify-content: center;
    background-color: darkgray;
}

.rep-btn {
    font-size: 16pt;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background-color ease-in 200ms;
    user-select: none;
}

.rep-btn.active {
    background-color: gray;
    font-weight: bold;
}


.rep-dungeon-list {
    display: none;
}

.rep-dungeon-list.active {
    height: 100%;
    background-color: lightgray;
    display: grid;
    align-items: stretch;
    grid-auto-flow: column;
    grid-auto-columns: 1fr;
}

.dungeon-tab-btn {
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    user-select: none;
}

.dungeon-tab-btn.active {
    background-color: rgba(0,0,0,0.67);
    color: white;
    font-weight: bold;
}

.rep-dungeon-content.active {
    display: flex;
}

.rep-dungeon-content {
    display: none;
}


.tab-content-dungeon {
    display: none;
}

.tab-content-dungeon.active {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    width: 100%;
}

.active {
    border: 2px solid red
}

.level-reqs {
    display: flex;
    flex-direction: column;
    margin: 0 auto;
    gap: 0.25rem;
    cursor: pointer;
    width: 100%;
}

.level-reqs.active {
    background-color: lightgray;
    border-bottom: 2px solid green;
}

.reqs {
    width: 100%;
    display: grid;
    gap: 0.25rem;
    margin-inline: 0.25rem;
    grid-auto-flow: column;
    align-items: stretch;
    justify-items: stretch;
    min-height: 100px;
    user-select: none;
}

.boss-name {
    display: grid;
    gap: 0.25rem;
    grid-template-columns: 200px 1fr;
    grid-template-rows: 1fr 9fr;
}

.boss-name .thumbnail {
    grid-row: 1 / span 2;
}

.boss-expl {
    grid-row: 2;
    grid-column: 2;
    display: flex;
}

.boss-expl li {
    list-style: none;
}

.thumbnail img {
    max-width: 100%;
}