@import url("https://fonts.googleapis.com/css2?family=Google+Sans");

* {
	font-family: "Google Sans" !important;
}

html {
	width: 100%;
	height: 100%;
	min-width: 100%;
	min-height: 100%;
	overflow: hidden;
}

body {
	margin: 0;
	background: #1F1F1F;
	color: whitesmoke;
	width: 100%;
	height: 100%;
}

.font-console {
	font-family: Consolas !important;
}

.full-wh {
	width: 100%;
	height: 100%;
}

.full-width {
	width: 100%;
}

.full-height {
	height: 100%;
}

.overflow {
	overflow: auto;
}

.no-overflow {
	overflow: hidden;
}

.view-inline {
	display: inline-flex;
	box-sizing: border-box;
	gap: 5px;
}

.view-flex {
	display: flex;
	box-sizing: border-box;
}

.view-flex.column {
	flex-direction: column;
}

.view-flex.row {
	flex-direction: row;
}

.view-flex.gap-sm {
	gap: 5px;
}

.view-flex.gap-md {
	gap: 10px;
}

.view-flex.gap-lg {
	gap: 20px;
}

.view-panels {
	display: flex;
	flex-direction: row;
	gap: 10px;
	padding: 10px;
	box-sizing: border-box;
}

.view-panels.center {
	flex-wrap: wrap;
	align-content: center;
	justify-content: center;
}

.view-panels.row {
	flex-direction: row;
}

.view-panels.column {
	flex-direction: column;
}

.view-panels.wrap {
	flex-wrap: wrap;
}

.view-panels .panel {
	box-sizing: border-box;
}

.button {
	box-sizing: border-box;
	display: block;
	text-align: center;
	background: #3F3F3F;
	border-style: solid;
	border-width: 10px;
	border-radius: 10px;
	border-color: #3F3F3F;
	color: currentColor;
	text-decoration: none;
	cursor: pointer;
	font-size: 1em;
}

.button:hover {
	background-color: #4F4F4F;
	border-color: #4F4F4F;
}

.input {
	box-sizing: border-box;
	background: #3F3F3F;
	border: #3F3F3F solid 10px;
	border-radius: 10px;
	color: currentColor;
	text-decoration: none;
	font-size: 1em;
}

.input:disabled {
	opacity: 0.7;
}

.card {
	min-width: min-content;
	padding: 10px;
	background: #2F2F2F;
	border: #2F2F2F solid 10px;
	border-radius: 10px;
}

.card.no-pad {
	padding: 0;
}

.card .text {
	width: 100%;
	text-align: center;
}

.card .text.big {
	font-size: 1.5em;
}

.card .interactive {
	padding: 10px;
	padding-bottom: 0;
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	align-content: center;
	gap: 5px;
}

.card .interactive .button {
	width: 100%;
	padding: 0;
}

.card .interactive .input {
	width: 100%;
}

.menu {
	display: flex;
	flex-direction: column;
	gap: 5px;
}

.menu .button {
	padding: 0;
}

.menu .divider {
	margin-top: 5px;
	margin-bottom: 5px;
	border: 1px solid #4F4F4F;
}

.table {
	width: 100%;
}

.table th {
	text-align: left;
}

.table .button {
	border-width: 5px;
}

.hidden {
	display: none;
}