:root {
    
    --color-background: #121212;
    --color-surface: #1E1E1E;
    --color-primary: #C62828;
    --color-secondary: #2E7D32;
    --color-highlight: #F9A825;
    --color-text-primary: #FFFFFF;
    --color-text-secondary: #B0BEC5;
  }

.header {
    text-align: center;
    color: var(--color-text-primary);
    font-size: 70px;
    margin: 0px;
    padding-bottom: 5px;
}

body {
    max-height: 500px;
    width: 100%;
    max-width: 800px;
    margin: 0 auto;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    background-color: var(--color-background);
    color: var(--color-text-secondary);
}

.checkouts-display {
    min-height: 50px;
    max-height: 50px;
    margin-bottom: 5px;
    text-align: center;
    font-size: 40px;
    color: var(--color-highlight);
    font-weight: bold;
}

.names-and-scores {
    display: grid;
    grid-template-columns: auto auto auto auto;
    font-size: 30px;
    text-align: center;
    border-radius: 20px;
    margin-bottom: 10px;
}

.names-and-scores__score, .names-and-scores__legs {
    min-width: 50px;
}

.names-and-scores__legs, .names-and-scores__names, .names-and-scores__score, .names-and-scores__legs-title {
    border-style: solid;
    border-radius: 80px;
    background-color: var(--color-background);
    color: var(--color-text-primary);
    border-radius: 20px;
}

.buttons {
    display: grid;
    grid-template-columns: auto 270px auto;
    height: 300px;
    border-radius: 20px;
}

.buttons__undo, .buttons__clear, .buttons__number, .buttons__submit {
    background-color: var(--color-surface);
    color: var(--color-text-secondary);
    font-size: 30px;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    border-radius: 40px;
    transition-duration: 0.3s;
    margin: 5px;
    box-shadow: 4px 4px;
}

.buttons__input {
    font-size: 30px;
    border-radius: 40px;
    text-align: center;
}

.buttons__number:hover, .buttons__submit:hover {
    background-color: var(--color-secondary);
}

.buttons__undo:hover, .buttons__clear:hover {
    background-color: var(--color-primary);
}

.setup {
    margin: 0;
    text-align: center;
    font-size: 40px;
}

.setup__player-name-input {
    font-size: 30px;
    text-align: center;
    border-radius: 30px;
}

.setup__start-button {
    font-size: 40px;
    font-weight: bold;
    border-radius: 20px;
    background-color: var(--color-primary);
    color: var(--color-text-secondary);
    border: none;
}

.setup__start-button:hover {
    background-color: var(--color-secondary);
    transition-duration: 0.4s;
}

.first-thrower-setup {
    text-align: center;
    margin: 0;
    font-size: 35px;
    color: var(--color-text-secondary);
}

.first-thrower-setup__next-button {
    font-size: 40px;
    font-weight: bold;
    border-radius: 20px;
    background-color: var(--color-primary);
    color: var(--color-text-secondary);
    border: none;
}

.first-thrower-setup__next-button:hover {
    background-color: var(--color-secondary);
    transition-duration: 0.4s;
}

@media only screen and (max-width: 768px) {
    body {max-width: 750px;}
    .buttons__number:hover, .buttons__submit:hover, .buttons__undo:hover, .buttons__clear:hover {
        background-color: var(--color-surface);}
    .first-thrower-setup__next-button:hover, .setup__start-button:hover {
        background-color: var(--color-primary);
    }
  }

@media only screen and (max-width: 600px) {
    body {max-width: 580px;}
    .names-and-scores {font-size: 25px;}
    .buttons__number:hover, .buttons__submit:hover, .buttons__undo:hover, .buttons__clear:hover {
        background-color: var(--color-surface);}
    .first-thrower-setup__next-button:hover, .setup__start-button:hover {
        background-color: var(--color-primary);}
}

@media only screen and (max-width: 480px) {
    body {max-width: 470px;}
    .names-and-scores {font-size: 20px;}
    .setup {font-size: 30px;}
    .setup__player-name-input {font-size: 25px;}
    .first-thrower-setup {font-size: 30px;}
    .first-thrower-setup__next-button {font-size: 30px;}
    .buttons {grid-template-columns: auto 180px auto;}
    .buttons__input {font-size: 25px;}
    .buttons__number:hover, .buttons__submit:hover, .buttons__undo:hover, .buttons__clear:hover {
        background-color: var(--color-surface);}
    .first-thrower-setup__next-button:hover, .setup__start-button:hover {
        background-color: var(--color-primary);}
}