body {
    margin: 25px;
    background-color: white;
    font-family: Georgia, "Times New Roman", Times, serif;
}

p {
    font-size: 1em;
}

button {
    margin: 8px;
    border-radius: 5px;
    font-size: 1em;
    box-shadow: 0 4px 12px rgba(0, 0, 0, .15);
}

button:hover {
    cursor: pointer;
    transition: top ease 0.5s;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, .18);
}

button:active {
    transform: translateY(1px);
}

#main-container {
    display: flex;
    justify-self: center;
    align-items: center;
    width: 100%;
}

#card-container {
    width: 70%;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-bottom: 20px;
}

.card {
    margin: 5px;
    width: 18%;
    aspect-ratio: 3/4;
    border: 0.175em solid black;
    border-radius: 10px;
    display: grid;
    place-items: center;
    padding: 12px;
}

.selected {
    background-color: rgb(158, 158, 158);
}

.dot-bar {
    display: flex;
    width: 100%;
    height: 33%;
    margin: 0;
    margin-left: auto;
    margin-right: auto;
}

.dot {
    aspect-ratio: 1;
    height: 25%;
    border: 0.1em solid black;
    border-radius: 50%;
    display: inline-block;
    padding: 10%;
    margin: 10%;
    margin-top: -5%;
    margin-left: 12%;
}

.red {
    background-color: #cc0000;
}

.orange {
    background-color: #db8427;
}

.yellow {
    background-color: #f1c232;
}

.green {
    background-color: #6aa84f;
}

.blue {
    background-color: #3d85c6;
}

.purple {
    background-color: #674ea7;
}

.clear {
    background-color: white;
    border-color: white;
}

.selected .clear {
    border-color: rgb(158, 158, 158);
    background-color: rgb(158, 158, 158);
}

#guide-card-container {
    border-left: 1px solid gray;
    height: 100%;
    width: 13%;
}

#helper-card {
    margin: 20px;
    width: 100%;
}

.hidden {
    display: none;
}

#footer {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: wrap;
    font-size: 1.2em;
    margin-bottom: 1em;
}

#footer button {
    margin: 0.5em;
    padding: 0.3em;
}

#footer p {
    margin: 0.5em;
}

#footer label {
    margin-left: 0.3em;
}

#score-box {
    margin-right: 0;
}

#score-value {
    margin-left: 0;
    margin-right: 0.5em;
}

#feedback {
    margin-bottom: 0;
    margin-left: 0.8em;
    color: red;
}