* {
	box-sizing: border-box;
}

body {
	background-color: #111;
	color: #eee;
	font-family: Book Antiqua,Palatino,Palatino Linotype,Palatino LT STD,Georgia,serif; 
	font-size: 12pt;
	margin: 0px;
}

.banner {
	background-image: url( img/banner.png );
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
}

#content {
	padding: 2em;
}
h1 {
	font-variant: small-caps;
}
a[href] {
	color: #ccc;
	font-weight: bold;
	display: inline-block;
	border: 1px solid #666;
	background-color: #333;
	padding: 5px 20px;
	border-radius: 5px;
	margin: 10px;
	text-decoration: none;
	text-align: center;
}
a[href]:hover {
	background-color: #ccc;
	color: #333;
}

h1 {
	border-bottom: 1px dashed #999;
}

.realm-options {
	display: grid;
	grid-template-columns: 1fr 8fr;
	grid-column-gap: 1em;
	margin: 1em;
	align-items: top;
	justify-items: stretch;
}
.realm-options :nth-child( 2n+1 ) {
	text-align: right;
}

#one-page-dungeon {
	margin: auto;
	padding: 20px;
}

#map-and-legend {
	display: grid;
	grid-template-columns: 1fr 600px;
}
@media (max-width: 1000px) {
	#map-and-legend {
		display: flex-box;
		width: 100dw;
		grid-template-columns: 1fr;
	}
	canvas {
		background-color: #222;
	}
	#map-frame {
		order: -1;
	}
}
#dialog-box {
	position: fixed;
	left: 0px;
	top: 0px;
	display: grid;
	background-color: rgba(32, 64, 96, 0.5 );
	width: 100vw;
	height: 100vh;
	color: #FFF;
	padding: 0px;
	align-items: center;
	justify-items: center;
	display: none;
}
#dialog-content {
	padding: 2em;
	border: 4px solid #369;
	border-radius: 1em;
	background-color: #fff;
	color: #222;
	width: 50vw;
}

.room-rule {
	display: grid;
	grid-template-columns: 1fr 4fr;
	align-items: center;
	justify-items: stretch;
	background-color: #024;
	color: #bdf;
	border-radius: 5px;
	margin-bottom: 1em;
}

.room-rule > * {
}

.room-rule > *:first-child {
}

#poi-table, .room-rule {
	width: 100%;
	font-family: Book Antiqua,Palatino,Palatino Linotype,Palatino LT STD,Georgia,serif; 
	font-size: 12pt;
}

#poi-table td:nth-child(1),
.room-rule > :first-child
{
	font-size: 150%;
	text-align: center;
}

#poi-table td:nth-child(2) {
	width: 8em;
	text-align: center;
}

#poi-table td:nth-child(3) strong {
	font-size: 125%;
	margin-bottom: 0em;
}

#poi-table td:nth-child(3) p:nth-child(2) {
	margin-top: 0em;
}

#poi-table td:nth-child(3) {
	padding-top: 1em;
	padding-bottom: 1em;
}

.warning {
	color: #c00;
}

.directive {
	color: #6c6;
}

.explore-actions {
	display: grid;
	grid-template-columns: 1fr 1fr;
	align-items: center;
	justify-items: stretch;
}
.explore-actions:nth-child( 2n ) {
	text-align: right;
}
.explore-actions:nth-child( 2n+1 ) {
	align-items: start;
}

#choice-list {
	display: flex;
	justify-content: space-between;
	align-content: stretch;
	width: 100%;
}

#choice-list a {
	margin: 1em;
	flex-grow: 1;
}

#choice-list a:first-child { margin-left: 0em; }
#choice-list a:last-child { margin-right: 0em; }

/*	------------------------------------------------	Header	------- */
#head-nav {
	display: grid;
	width: 100vw;
	background-color: #720;
	grid-template-columns: 1fr 1fr 1fr;
	align-items: center;
	border-bottom: 1px solid #d86;
	z-index: 1000;
}

#head-nav > *:nth-child(3) {
	text-align: right;
}

#head-nav > *:nth-child(2) {
	text-align: center;
}

#nav-title {
	padding: 5px;
	font-weight: bold;
	padding-left: 20px;
	font-size: 120%;
	font-variant: small-caps;
}


#MINI-MAP-CONTAINER {
	position: absolute;
	top: 0em;
	left: 0em;
	background-color: rgba(0,0,0,0.5);
	width: 100vw;
	height: 100vh;
	display: grid;
	align-items: center;
	justify-items: center;
}

#MINI-MAP-CONTAINER canvas {
	border: 1px solid #9cf;
}

/*	------------------------------------------------	Quest Intro	------- */
#quest-intro {
	margin: 3em auto;
	width: 50em;
	border: 1px solid white;
	padding: 2em;
	border-radius: 2em;
	background-color: #ddd;
	color: #222;
}

.objective {
	font-style: italic;
}