fieldset
{
	position: relative;
	flex: 0 0 auto;
	display: flex;
	overflow: hidden;
	flex-flow: column nowrap;
	background-color: rgba(255,255,255,0.7);
  box-shadow: 0px 0px 1em white;
	max-width: 36em;
	justify-content: flex-start;
	align-items: stretch;
}

fieldset > legend {
	font-weight: bold;
	user-select: none;
}

fieldset div[data-field] fieldset
{
	flex-flow: column nowrap;
}
fieldset div[data-field] 
{
	display: flex;
	overflow: hidden;
	flex-flow: row wrap;
	justify-content: flex-start;
	padding-bottom: 0.5em;
}
fieldset div[data-field] > *
{
	flex-shrink: 1;
}
fieldset div[data-field] > label {
	flex: 0 0 auto;
	min-width: 6em;
	user-select: none;
}
fieldset div[data-field] > label::after {
	content: " :";
	margin-right: 0.5em;
}

fieldset div[data-field] > input {
	flex: 1 1 auto;
	background-color: rgba(255,255,255,0.7);
}

fieldset > .scene
{
	max-width: 25em;
	max-height: 25em;
	min-height: 20em;
	border: 0px;
}

fieldset button.submit-form
{
	font-size: 1.5em;
	cursor: pointer;
}

fieldset:not(.valid) button.submit-form,
.input-method:not(.valid) button.submit-input
{
	cursor: not-allowed;
	filter: grayscale(0.5);
	opacity: 0.3;
	pointer-events: none;
}

fieldset.updating, div.updating > fieldset
{
	background-image: url(/Assets/Images/Loading.svg);
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
	cursor: wait;
}

fieldset.updating > *, div.updating > fieldset > *
{
	filter: grayscale(0.5);
	opacity: 0.5;
}

fieldset.updating *, div.updating > fieldset *
{
	pointer-events: none;
}

fieldset div[data-field].required.empty > label
{
	text-decoration: red underline wavy;
}


fieldset .input.selection-list
{
	display: flex;
	flex-flow: row wrap;
	max-height: 13em;
	overflow-y: auto;
	max-width: 25em;
}

fieldset .input.selection-list > *
{
	background-image: var(--icon);
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	width: 4em;
	height: 5em;
	margin: 0.5em;
	background-color: white;
	border: 0.2em solid lightgrey;
	border-radius: 0.2em;
	cursor: pointer;
}

fieldset .input.selection-list > *.selected
{
	background-color: lavender;
	border-color: lightskyblue;
}