* {
	box-sizing: border-box;
}
html,body {
    height: 100%;
    margin: 0;
}
#container {
	width: 100%;
    height: 100%;
	display: table;
	table-layout: fixed;
}
#applet {
	display: table-cell;
    height: 100%;
    width: 100%;
    position: relative;
}
#controls {
	display: table-cell;
	width: 300px;
	vertical-align: top;
	padding: 0 .5em 0 .5em;
}
#controls h3 {
    margin: .0 0 1em 0;
}
#controls button {
    margin: .25em;
}
#controls label select {
    margin-left: 1em;
}
.box {
	background-color: #f0f0f0;
	border: 2px solid #e0e0e0;
	border-radius: 1em;
	padding: 1em;
    margin: 8px 0 8px 0;
}
#progress-bar {
    height: 5px;
    background-color: rgba(0,255,0,.3);
    transition: width .5s;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 10;
    display: none;
}
#game-title {
	background-color: #0f0f0f;
    color: #fff;
    font-weight: bold;
    text-align: center;
}
#game-status {
}
#links {
    text-align: center;
}
#games {
	display: table-cell;
	width: 300px;
	vertical-align: top;
	padding: 0;
}
#games > div {
    position: relative;
    height: 100%;
    width: 100%;
}
#games > div > div {
    overflow-y: auto;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}
#close-games {
    text-align: right;
    border-bottom: 1px solid #eee;
}
#close-games span {
    font-size: 16pt;
    padding: 6px;
    cursor: pointer;
}
#game-list {
    width: 100%;
    margin: 0px;
    padding: 8px;
}

.game-descr {
    background-repeat: no-repeat;
    background-position: left center;
    background-size: 32px;
    cursor: pointer;
    padding: 4px 4px 4px 40px;
}

.game-descr:hover {
    background-color: #eee;
}

.game-descr-name {
    font-weight: bold;
}
