main
{
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: center;

	padding-top: 7em;
}

.main_wrap
{
	width: 80vw;

	box-shadow: 1px 1px 10px rgb(53, 60, 74);
}

.main_wrap h1
{
	margin:0;
	padding: 0.7em;
	padding-left: 1em;

	background-color: #383e51;

	color: white;
	font-weight: bold;
	font-size:1em;

	width: auto;

	border-top-left-radius: 5px;
	border-top-right-radius: 5px;

	transition: all 0.3s;
}

.main_wrap h1:hover
{
	cursor:default;
	color: #b0942e;
}

.main_wrap_content
{
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: stretch;

	/*background-color: #10131c;*/
	background-image: url('/img/game/army/global2.png');

	color: white;
	text-shadow: 1px 1px 5px black;
}

#armylogo
{
	margin-top: 1em;
	max-width: 100%;
	text-align: center;
	max-height: 20em;
	max-width: 100%;
}

#armylogo img
{
	display: inline-block;
	height: 100%;
	max-width: 100%;
}

#error
{
	color: red;
	font-weight: bold;
	width: 100%;
	text-align: center;

	margin-top: 0.5rem;
	margin-bottom: 0.5rem;
}

#troops
{
	padding-top: 0.5em;
	padding-left: 1rem;
	background-color: rgb(0, 0, 0, 0.2);

	padding-bottom: 0.5rem;
	margin-bottom: 1rem;
}

#operational
{
	margin-top: 1rem;
	margin-bottom: 1rem;
	padding-left: 0.5rem;
}

.troops
{
	padding-left: 0.5rem;
	padding-top: 0.5rem;

	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-items: center;
}

.troops .name
{
	font-weight: bold;
	width: 8rem;
}

.troops .amount
{
	width: 6rem;
}

.troops .deletebutton
{
	color: #0099ff;
}

.troops .deletebutton:hover
{
	text-decoration: underline;
	cursor: pointer;
}

.troops .deletebutton.hidden
{
	display:none;
}

.troops form
{
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-items: center;
}

.troops form.hidden
{
	display:none;
}

.troops .field
{
	margin-right: 0.5rem;
}

#trainings
{
	margin-top: 0.5rem;
	margin-bottom: 0.5rem;
	padding-left: 0.5rem;
}

.training
{
	padding-left: 0.5rem;
	padding-top: 0.5rem;
}

.training a
{
	color: #0099ff;
	text-decoration: none;
}

.training a:hover
{
	text-decoration: underline;
}

h2
{
	margin: 0;
	font-size: 1.5rem;
}

h3
{
	margin: 0;
	font-size: 1.15rem;
}

.training_form
{
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-items: center;

	margin-top: 0.5rem;
}

.training_form .field
{
	margin-right: 0.5rem;
}

.select_field
{
	background-color: #0d0d0d;
	padding-right: 0.5rem;
	border: solid 1px rgb(100,100,100);

	transition: all 0.5s;
}

.select_field .field_base
{
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-items: center;
}

.select_field .field_base:after
{
	content: '▾';
	display: block;
	padding-left: 0.2rem;
}

select
{
	font-size: 0.9rem;

	border-radius: 0;
	border: 0;

	padding-top: 0.2rem;
	padding-bottom: 0.4rem;
	padding-left: 0.5rem;

	background-color: #0d0d0d;
	color: white;

	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;

	transition: all 0.5s;
}

select:focus
{
	outline: none;
}

select:hover
{
	cursor: pointer;
}

.select_field:hover
{
	background-color: rgb(100,100,100);
	color: black;
}

.select_field:hover select
{
	background-color: rgb(100,100,100);
	color: black;
}

input[type="number"]
{
	font-size: 0.9rem;
	min-width: 10rem;

	border-radius: 0;
	border: solid 1px rgb(100,100,100);
	padding-top: 0.2rem;
	padding-bottom: 0.4rem;
	padding-left: 0.5rem;
	background-color: #0d0d0d;

	transition: all 0.5s;

	color: white;
}

input[type="number"]:focus
{
	outline: none;
	border-color: white;
}

input[type="submit"]
{
	font-size: 0.9rem;

	border-radius: 0;
	border: solid 1px rgb(100,100,100);
	padding-top: 0.2rem;
	padding-bottom: 0.4rem;
	padding-left: 0.5rem;
	background-color: #0d0d0d;

	transition: all 0.5s;

	color: white;

	cursor: pointer;
}

input[type="submit"]:hover
{
	background-color: rgb(100,100,100);
	color: black;
	outline: none;
}

#units
{
	padding-top: 0.5em;
	padding-left: 1em;
	background-color: rgb(0, 0, 0, 0.2);

	padding-bottom: 0.5rem;
}

#reserve
{
	margin-top: 1rem;
	margin-bottom: 1rem;
	padding-left: 0.5rem;
}

.category
{
	margin-top: 1rem;
}

.category h4
{
	margin: 0;
	padding-left: 1rem;
	padding-top: 0.3rem;
	padding-bottom: 0.3rem;
	font-size: 1.3rem;
	border-top-left-radius: 7px;
	border-bottom-left-radius: 7px;
	background-color: rgba(255,255,255,0.2);
	margin-right: 0.1rem;
	user-select: none;

	transition: all 0.5s;
}

.category h4:hover
{
	background-color: rgba(255,255,255,0.3);
	cursor: pointer;
}

.category .unitlist
{
	overflow-y: hidden;
}

.category.shown h4
{
	background-color: rgba(255,255,255,0.5);
	border-top-right-radius: 7px;
	border-bottom-left-radius: 0;
}

.unit.hidden
{
	display:none;
}

.unit.transparent
{
	opacity: 0;
	/*top: -20px;*/
}

.unit
{
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-items: stretch;

	opacity: 1;

	margin-top: 0.5rem;

	background-color: rgba(255,255,255,0.05);

	transition: all 1s ease;
}

.unit .icon
{
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;

	width: 10%;

	transition: top 0.5s;
}

.unit .body
{
	padding-left: 1rem;

	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: flex-start;

	padding-bottom: 0.5rem;
}

h5
{
	margin:0;
	margin-top: 0.5rem;
	margin-bottom: 0.5rem;
	font-size: 1.2em;
}

.unit img
{
	width: 100%;
	display: block;
}

.unit .level
{
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: stretch;

	margin-bottom: 0.5rem;
}

.unit .level .infos, .unit .level .forms
{
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-items: center;
}

.unit .level .number
{
	font-weight: bold;
	min-width: 5rem;
}

.unit .level .amount
{
	min-width: 8rem;
}

.unit .deletebutton, .unit .transferbutton
{
	color: #0099ff;
	margin-left: 2rem;
}

.unit .deletebutton:hover, .unit .transferbutton:hover
{
	text-decoration: underline;
	cursor: pointer;
}

.unit .deletebutton.hidden, .unit .transferbutton.hidden
{
	display:none;
}

.unit form
{
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-items: center;

	margin-top: 0.5rem;
	margin-bottom: 0.5rem;
}

.unit .field
{
	margin-right: 0.5rem;
}

.unit form.hidden
{
	display: none;
}

.unit .unit_desc
{
	width: 100%;

	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: flex-start;
}

.unit .unit_desc input[type="checkbox"]
{
	display: none;
}

.unit .unit_desc label
{
	user-select: none;
}

.unit .unit_desc label::before
{
	content:"▸ ";
}

.unit .unit_desc label:hover
{
	cursor: pointer;
	text-decoration: underline;
}

.unit .unit_desc input[type="checkbox"]:checked ~ label::before
{
	content: "▼ ";
}

.unit .unit_desc .content
{
	width: 100%;
	padding-left: 1rem;
	margin-top: 0.5rem;
	padding-bottom: 0.5rem;

	display: none;
}

.unit .unit_desc input[type="checkbox"]:checked ~ .content
{
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: flex-start;
}

.unit .unit_desc .content .desc
{
	font-style: italic;
}

.unit .unit_desc .content .tech
{
	margin-top: 0.5rem;
}

.unit .unit_desc .content .tech.owned .prerequisite
{
	color: #53b8fc;
}

.unit .unit_desc .content .tech.notowned .prerequisite
{
	color: #ff5959;
}

.unit .unit_desc .content .tech.hidden
{
	display:none;
}

.unit .unit_desc .content .cost.hidden
{
	display:none;
}

.unit .unit_desc .content .upkeep.hidden
{
	display:none;
}

#production
{
	margin-top: 2rem;
	margin-bottom: 1rem;
	padding-left: 0.5rem;
}

#assets
{
	color: rgb(200,200,200);
	margin-bottom: 1rem;
}

#assets > div > b
{
	min-width: 8.5rem;
	color:white;
}

#assets > div > svg
{
	margin-left: 0.5rem;
	margin-right: 0.5rem;
}

#assets > div
{
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-items: center;

	margin-top: 0.5rem;
	padding-left: 1em;
}

#assets .red
{
	color: rgb(255, 50, 50);
}

#assets .green
{
	color: rgb(10, 255, 50);
}

.icon
{
	width: 1.5rem;
	fill: #7a7a7a;
}

.unit_production_form
{
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-items: center;
}

.unit_production_form .field
{
	margin-right: 0.5rem;
}

.prodline
{
	background-color: rgba(255, 255, 255, 0.05);

	margin-top: 1rem;
	padding-left: 0.5rem;
	padding-top: 0.5rem;
	padding-bottom: 0.5rem;
}

.prodline .head
{
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;

	margin-bottom: 0.5rem;
}

.prodline .name
{
	margin-right: 2rem;
}

.prodline .edit
{
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-items: center;
}

.prodline .head a
{
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;

	margin-right: 0.5rem;

	width: 1.5rem;
	height: 1.5rem;

	background-color: rgb(10,10,10);

	transition: all 0.5s;

	border: solid 2px white;
	fill: white;
}

.prodline .head a:hover
{
	text-decoration: underline;
	cursor: pointer;

	border-color: #e3a529;
	fill: #e3a529;
}

.prodline .head a.cancel
{
	background-color: rgb(150, 0, 0);
}

.prodline .head a.arrow
{
	background-color: #de7310;
}

.prodline .head a.rocket
{
	background-color: #1fd1d1;
}

.prodline .head a svg
{
	display: block;
}

.prodline .head a svg.cancel
{
	width: 75%;
	height: 75%;
}

.prodline .head a.arrow svg
{
	width: 60%;
	height: 60%;
}

.prodline .remaining, .prodline .daily
{
	margin-bottom: 0.5rem;
}

.prodline .assets
{
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-items: center;
}

.prodline .asset
{
	border: solid 2px rgb(100, 100, 100);
	border-radius: 10px;
	background-color: rgb(10,10,10);
	width: 2rem;
	height: 2rem;
	margin-right: 1px;

	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
}

.prodline .asset a
{
	display: block;
	width: 100%;
	height: 100%;

	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
}

.prodline .asset.granted svg
{
	fill: rgb(20, 150, 40);
}

.prodline .asset.denied svg
{
	fill: rgb(200, 50, 20);
}

.prodline .asset.free svg
{
	fill: rgb(10,10,10);
}

.prodline .asset.free:hover a svg
{
	fill: darkgrey;
}

.prodline .asset svg
{
	display: block;
	width: 1.2rem;
}
