
#playground{
	
}
.apiPlayground{
	display: grid;
	grid-template-rows: auto 2fr 1fr;
	grid-template-columns: 200px 1fr 1fr;
	grid-gap: 8px;
	height: 80vh;
	grid-template-areas: 
		"header header header"
		"sidebar request response"
		"sidebar map map";
	line-height: 1.1em;
}

.apiheader{
	grid-area: header;
	display: grid;
	grid-template-columns: 200px 1fr;
	background-color: rgba(0, 0, 0, 0.134);
	border-radius: 8px;
	padding: 4px;
}
.apiHeaderItems{
	display: flex;
	column-gap: 32px;
	flex-wrap: wrap;
	justify-content: flex-end;
}
.apiHeaderItem{
	display: grid;
	grid-template-columns: auto 1fr;
}
.apiHeaderItem input{
	width: 100%;
}
.apiheader h1{
	margin: 0;
	font-size: 1.3em;
}

.sidebar{
	grid-area: sidebar;
	display: grid;
	font-size: 0.9em;
	grid-template-columns: 200px;
	grid-template-rows: auto 1fr;
	grid-template-areas: "mainmenu" "usefulinformation";
}

.mainMenu{
	grid-area: mainmenu;
	margin: 2px 2px 2px 2px;
	padding: 0 0 32px 0;
	list-style: none;
	font-size: 0.9em;
}
.usefulInformation{
	grid-area: usefulinformation;
	padding: 0;
	max-height: 100%;
	overflow-y: scroll;
}
.usefulInformation table{
	max-width: 200px;
	padding: 4px;
	margin: 0;
}
.usefulInformation table img{
	width: 20px;
}
.usefulInformation table input{
	width: 100%;
}

.usefulInformation pre{
	display: inline-block;
	padding: 0;
	margin: 0;
}
menu > li > h2, .usefulInformation h2{
	padding: 4px;
	margin: 0;
	font-size: 1em;
}
menu menu{
	margin: 0px 2px 2px 16px;
	font-family: monospace;
	padding: 0;
	list-style: none;
}
menu menu li{
	cursor: pointer;
	padding: 0px 4px;
}
menu menu li:hover{
	background-color: rgba(182, 174, 248, 0.347);
	border-radius: 4px;
}

.request{
	grid-area: request;
	display: grid;
	grid-template-rows: auto 1fr;
	grid-template-areas: "header" "body";
	grid-gap: 8px;
}
.request h1{
	margin: 0;
}
.requestHeader{
	grid-area: header;
}
.requestHeader h2{
	margin: 0;
}
.requestBody{
	grid-area: body;
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-template-rows: auto 1fr;
	grid-template-areas: "header contentType" "bodytext bodytext";
}
.requestBody h3{
	grid-area: header;
	margin: 0;
	padding: 0;
}
.requestBody textarea, .requestBody .CodeMirrorContainer{
	grid-area: bodytext;
	width: 100%;
	height: 100%;
	position: relative;
}

.response{
	grid-area: response;
	display: grid;
	grid-template-columns: 75px 1fr 1fr;
	grid-template-rows: auto 1fr;
	grid-template-areas: "header responseTime responseCode" "responsetext responsetext responsetext";
}
.response > h3{
	grid-area: header;
	margin: 0;
	padding: 5px 0px;
}
.response > pre{
	grid-area: responseCode;
	margin: 0;
	padding: 8px 16px;
	text-align: right;
	color: #fff;
}
.response > span{
	grid-area: responseTime;
	margin: 0;
	padding: 8px 16px;
	text-align: right;
}
.status200, .status201{
	background-color: #1f8c25;
	font-weight: bold;
}
.status400, .status401{
	background-color: #a90000;
	font-weight: bold;
}
.response textarea, .response .CodeMirrorContainer{
	grid-area: responsetext;
	width: 100%;
	height: 100%;
	position: relative;
}
.CodeMirrorContainer .CodeMirror{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	font-size: 0.8em;
	line-height: 1em;
}

.paramTable{
	width: 100%;
	border: 1px solid #aaa;
	border-spacing: 0;
	border-collapse: collapse;
}
.paramTable input[type=text], .paramTable input[type=email]{
	width: 100%;
}
.paramTable td{
	border: 1px solid #aaa;
	padding: 2px;
}
.queryStringContainer{
	padding: 8px 0px;
}
.queryString{
	width: 100%;
	font-family: monospace;
	padding: 4px;
	font-size: 1.1em;
}
.submitContainer{
	padding: 8px 0px;
	display: grid;
	gap: 8px;
	grid-template-columns: 1fr auto auto;
	grid-template-areas: "headers generate submit"
}

.submitButton{
	background-color: rgb(67, 80, 255);
	color: #fff;
	padding: 8px 12px;
	border-radius: 4px;
	border: 0;
	grid-area: submit;
}
.generateExampleRequestButton{
	background-color: rgb(42, 177, 96);
	color: #fff;
	padding: 8px 12px;
	border-radius: 4px;
	border: 0;
	grid-area: generate;
}
.headers{
	font-family: monospace;
	grid-area: headers;
	border: 1px solid #aaa;
	background-color: #eee;
	white-space: pre;
	font-size: 0.7em;
	overflow-x: auto;
}
.headers strong{
	color: rgb(54, 84, 255);
}


.map{
	background-color: #eee;
	grid-area: map;
}
.leafletMap{
	width: 100%;
	height: 100%;
}