html {
    font-size: 16px;
}

body {
    font-family: 'Open Sans', sans-serif;
    text-align: center;
    font-size: 0.8rem;
    /* color: #888; */
}

table {
    margin: 20px auto;
    border-collapse: collapse;
    width: 80%;
}

th, td {
    border: 1px solid #ddd;
    padding: 10px;
}

#container {
    display: flex;
    gap: 20px;
    width: 100%;
}

/* Scrollable Theme List */
#themeListContainer, #setListContainer, #set-details-container {
    flex: 1;
    max-height: 500px;
    overflow-y: auto;
    border: 1px solid #ccc;
    padding: 10px;
    width: 250px;
    flex: 1 1 0px;
}

/* Theme & Set Items */
.theme-item, .set-item {
    padding: 8px;
    cursor: pointer;
    border-bottom: 1px solid #eee;
}

.theme-item:hover, .set-item:hover {
    background-color: #f0f0f0;
}

#set-image {
    width: 100%;
}

.set-item input {
    float: left;
}

.hidden {
    display: none;
}

#user-inventory-container {
    display: flex;
}

#user-inventory{
    display: flex;
    align-items: flex-end;
    justify-content: flex-start;
    border: 1px solid #ccc;
    margin: 10px 0;
    overflow-x: scroll;
    flex: 1;
}

#user-inventory .set{
    margin: 10px;
    min-width: 20%;
}

#user-inventory-details {
    border: 1px solid #ccc;
    margin: 0 0 10px 0;
    min-width: 15rem;
    display: flex;
}

.user-inventory-details-item {
    flex: 1;
    width: 50%;
    height: 30rem;
}

#user-inventory-parts-list {
    overflow: scroll;
    height: 80%;
}

button {
    padding: 4px;
    margin: 10px 5px;
}

#similar-sets {
    overflow: scroll; 
}

#user-similar-sets-container {
    overflow-y: scroll;
    max-height: 14rem;
}