body, html, #app {
    padding: 0;
    margin: 0;
    height: 100%;
    font-family: Arial, Helvetica, sans-serif;
}

#app {
    display: flex;
    flex-direction: column;
    user-select: none;
}

#header {
    display: flex;
    justify-content: center;
    text-transform: uppercase;
    font-size: 24px;
    padding: 5px;
}

#board {
    display: flex;
    flex-direction: column;
    gap: 5px;
    flex: 1;
    align-items: center;
    justify-content: center;
}

#board .row {
    display: flex;
    gap: 5px;
}

#pile {
    display: flex;
    flex-direction: column;
    flex: 1;
    justify-content: center;
    align-items: center;
    gap: 16px;
}

.card, .slot, .deck {
    width: 35px;
    height: 50px;
    border-radius: 5px;
    cursor: pointer;
}

.card {
    background-color: white;
    border: solid 1px black;
    display: flex;
    align-items: center;
    justify-content: center;
}

.slot {
    background-color: transparent;
    border: dotted 1px grey;
}

.slot:hover {
    border-color: black;
}

.deck {
    background-color: royalblue;
    border: solid 1px black;
    display: flex;
    align-items: center;
    justify-content: center;
}

.deck.visible {
    background-color: white;
}

.hearts, .diamonds {
    color: red;
}

.number {
    font-size: 32px;
}

.score {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: center;
}

.score span {
    background-color:#AAAAAA;
    color: white;
    height: 24px;
    border-radius: 12px;
    line-height: 24px;
    padding: 0 8px;
}

dialog {
    border: solid 1px black;
    border-radius: 5px;
    width: 300px;
}

dialog > div {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.buttons {
    display: flex;
    justify-content: space-around;
}

p {
    margin: 0;
    text-align: center;
}