/*
    color pallette:

    light green: #c3dfd8;
    dark green:  #3a7173;
    red / brown: #6b210e;
    orange:      #f05f30;
    yellow:      #f6dc91;
*/

* {
    box-sizing: border-box;
}

html {
    font-family: 'Roboto', sans-serif;
    background-color: #c3dfd8;
    color: #333;
}

h1 {
    color: #f05f30;
}

h2 {
    color: #3a7173;
}

.board .spectator-list li {
    color: #aaa;
}

.board .stack {
}

.board .stack::after {
    display: block;
    content: '';
    clear: both;
}

.board .stack .stack-card {
    display: block;
    background-color: #fff;
    float: left;
    border: 2px solid #ccc;
    border-radius: 4px;
    width: 110px;
    height: 160px;
    margin: 0 10px 10px 0;
    padding: 4px;
    text-align: left;
    font-weight: bold;

    font-size: 1.9em;
}

.board .stack .stack-card:not(:first-child) {
    margin-left: -55px;
}

.board .stack .stack-card.stack-card-red {
    color: red;
}

.board .stack .stack-card.stack-card-black {
    color: black;
}

.board textarea.state {
    width: 400px;
    height: 225px;
}


#player-screens {
    width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
}

[data-local-remote="local"] .player-screen {
    display: block;
    float: left;
    width: 350px;
    height: 600px;
    margin: 0 10px 10px 0;
    padding: 10px;
    border: 1px solid #aaa;
    background-color: #fff;
    position: relative;
}

[data-local-remote="remote"] .player-screen {
    display: block;
    width: 350px;
    height: 600px;
    margin: 0 10px 10px 0;
    padding: 10px;
    border: 1px solid #aaa;
    background-color: #fff;
}

.player-screen > .player-screen-modal {
    position: absolute;
    display: none;

    top: 30px;
    right: 10px;
    bottom: 10px;
    left: 10px;

    padding: 8px;

    border: 1px solid #aaa;
    border-radius: 5px;

    background-color: #fff;
}

.player-screen > .player-screen-modal .player-screen-modal-close {
    float: right;
    font-size: 2em;
    font-weight: bold;
    cursor: pointer;
    margin-top: -5px;
    color: #444;
}

.player-screen > .player-screen-modal .player-screen-modal-question {
    font-weight: bold;
    font-size: 1.3em;
    margin: 0 0 10px 0;
}

.player-screen > .player-screen-modal .player-screen-modal-question-help {
    font-size: 1.15em;
    color: #555;
    margin: 10px 0;
    line-height: 1.4;
}

.player-screen > .player-screen-modal .player-screen-modal-button-stack button {
    display: block;
    width: 100%;
    margin-bottom: 5px;
    font-size: 1.2em;
}

.player-screen .player-screen-name {
    font-weight: bold;
}

.player-screen .player-screen-penalty-points {
    float: right;
}

.player-screen .player-screen-penalty-points::after {
    display: block;
    content: '';
    clear: both;
}

.player-screen .player-screen-stack {
    position: relative;
}

.player-screen .player-screen-stack::after {
    display: block;
    content: '';
    clear: both;
}

.player-screen .player-screen-stack .player-screen-stack-card {
    display: block;
    float: left;
    border: 1px solid #ccc;
    background-color: #fff;
    border-radius: 5px;
    width: calc(25% - 8px);
    height: 100px;
    margin: 10px 10px 0 0;
    padding: 4px;
    text-align: left;
    font-weight: bold;

    font-size: 1.4em;
}

.player-screen .player-screen-stack .player-screen-stack-card:last-child {
    margin-right: 0;
}

.player-screen .player-screen-stack .player-screen-stack-card.player-screen-stack-card-waiting {
    background-color: #eee;
}

.player-screen .player-screen-stack .player-screen-stack-card.player-screen-stack-card-not-allowed {
    background-color: #ddd;
}

.player-screen .player-screen-stack .player-screen-stack-card.player-screen-stack-card-red {
    color: red;
}

.player-screen .player-screen-stack .player-screen-stack-card.player-screen-stack-card-black {
    color: black;
}

.player-screen .player-screen-status-text {
    margin: 25px 0;
    font-size: 1.2em;
    text-align: center;
}

.player-screen .player-screen-button-bar {
    text-align: center;
}

.player-screen .player-screen-button-bar button {
    margin-right: 5px;
}

.player-screen .player-screen-textarea-state {
    margin-top: 10px;
    width: 100%;
    height: 215px;
}

.clearfix::after {
    content: "";
    display: table;
    clear: both;
}
