
#GameBoard {
	padding: 16px;
	padding:0;
	background: #353535;
	color:white;
}

#GameBoard *[contentEditable=true] {
	border-bottom: 1px dotted black;
	padding:6px;
}

#GameBoard .Overlay {
    position:fixed;
    top:0;
    right:0;
    bottom:0;
    left:0;
    background: rgba(0,0,0,0.5);
    z-index:1000;
}

 template {
    display:none !important;
}

.Player {
	border: 1px solid black;
	background: #454545;
}

.Player .Head {
	background: rgba(255,255,255,0.05);
	display:block;
	padding: 16px;
}
.Player .Head > * {
	padding-right: 8px;
}
.Player .Head h2 {
	display:inline-block;
}

.playField {
	padding:16px;
}

.hidden {
    display:none !important;
}

.Player *[data-awbindparam] {
    min-width:2ch;
}


.cardImage {
	width:250px;
	border-radius:12px;
	margin:4px;
}
.cardImageHolder {
	display:inline-block;
	position:relative;
}
.cardImageHolder .cardImageOverlay {
	display:none;
	margin:16px;
	position:absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	background:rgba(0,0,0,0.6);
	cursor:pointer;
}
.cardImageHolder .cardImageOverlay p {
	font-size:1.5em;
}
.cardImageHolder:hover .cardImageOverlay, .cardImageHolder:focus .cardImageOverlay, .cardImageHolder:active .cardImageOverlay {
    display:grid;
	/* display:flex; */
	/* flex-direction:column; */
	justify-content:center;
	align-items:center;
}

.cardImageHolder .cardImageOverlay {
    z-index: 100;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr 1fr;
}
.cardImageHolder .cardImageOverlay > div {
    text-align: center;
    width:100%;
    height:100%;
    display:flex;
    justify-content:center;
    align-items:center;
    align-content:center;

}
.cardImageHolder .cardImageOverlay > div:hover {
    background: lightgray;
    background: rgba(0,0,0,1);
}

.cardImageHolder .countersOverlay {
    z-index:10;
    visibility:hidden;
    display:grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    grid-template-rows: 1fr 1fr 1fr 1fr 1fr 1fr;
	margin:16px;
	position:absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
}
.cardImageHolder .countersOverlay .counters {
    background:rgba(255,255,255,0.4);
    background:black;
    color:white;
    grid-column: 3 / span 2;
    grid-row: 2 / span 1;
    display:flex;
    justify-content:center;
    align-items: center;
    align-content: center;
}

.cardImageHolder:hover .countersOverlay, .cardImageHolder:focus .countersOverlay, .cardImageHolder:active .countersOverlay {
    visibility:hidden;
}








.card {
    text-overflow:ellipsis;
    min-height:100px;
    display:inline-block;
    overflow:hidden;
    border: 1px solid grey;
    background:white;
    
    border-radius:12px;
    padding: 16px;
}


.NumberInput {
    border: 0.5px solid white;;
    border:none;
    border-bottom: 1px dotted black;
    background:transparent;
    min-width: 2ch;
    max-width:10ch;
    padding-right:2px !important;
    margin-right:4px;
    padding-left:4px;
    padding-bottom: 4px;
    color:white;
    font-size: 1.1em;
}

.SearchResults .card {
    text-overflow: ellipsis;
    min-height: 100px;
    display: inline-block;
    overflow: hidden;
    border: 1px solid grey;
    background: white;

    border-radius: 12px;
    padding: 16px;
    min-height: 100px;
    color: black;
    cursor: pointer;
}

.SearchResults .card:hover {
    background: rgba(255, 255, 255, 0.7);
}

.SearchResults {
    position: absolute;
    padding: 16px;
    background: #454545;
    border: 2px solid black;
    width: 90%;
    margin: auto;

    z-index: 1000;
}

.SearchResults .cardList {
    display: grid;
    grid-template-columns: repeat(auto-fill, 300px);
    grid-gap: 32px;
    padding-top: 8px;
}

.SearchResults .controls {
    padding: 8px;
    border-bottom: 1px solid black;
    display: flex;
    justify-content: right;
}

:root {
    --cFoot: white;
}

html {
    padding:0;
    margin:0;
}
body {
    margin:0;
    padding:0;
    display:flex;
    flex-direction:column;
	background: #454545;
}

header {
    background: var(--cHead);
}
main {
    background: var(--cMain);
    width:100%;
}
footer {
    background: var(--cFoot);
    text-align: center;

}

details {
	padding:16px; 
	border:1px solid black;
}
details summary {
	cursor:pointer;
}


.BlockForm label {
	display:block;
	padding: 0.75em;
}

.BlockForm input {
	display:block;
}
.BlockForm textarea {
	display:block;
	padding:0.25em;
	width: 80vw;
	max-width:80ch;
	min-height:15ch;
}