@charset "utf-8";
/* This stylesheet is based on the CSS Preset at https://codepen.io/bofrede/pen/qBaroyQ
and divided into sections as defined by SMACSS. https://smacss.com/ */

/** || Load WebFonts **/

@font-face {
	font-family: 'Segment7Standard';
	src: local('Segment7Standard'), url('/fonts/Segment7Standard.woff2') format('woff2');
	font-weight: normal;
	font-style: italic;
}

@font-face {
	font-family: 'Data70';
	src: local('Data70'), url('/fonts/Data70.woff2') format('woff2');
	font-weight: normal;
	font-style: normal;
}

:root {
	--base-color: #848593;
}

/** || Base Rules **/

html {
	scrollbar-gutter: stable;
	scroll-behavior: smooth;
}

* {
	-moz-text-size-adjust: none;
	-webkit-text-size-adjust: none;
	text-size-adjust: none;
}

body {
	font-family: system-ui, sans-serif;
	font-size: 10.5pt;
	line-height: 1.15;
	margin: 0;
	min-block-size: 100svh;
}

td, th, input, select, button {
	color: inherit;
	font-family: inherit;
	font-size: inherit;
}

form {
	margin: 0;
}

datalist,
template {
	display: none;
}

summary {
	cursor: pointer;
	text-decoration: dotted underline;
}

h1 {
	font-family: Data70, system-ui, sans-serif;
	font-size: 250%;
	text-wrap: balance;
	text-transform: uppercase;
}

h1 span {
	font-family: system-ui, sans-serif;
	font-size: 70%;
	font-weight: normal;
	text-transform: initial;
}

h2 {
	font-size: 120%;
}

h3 {
	font-size: 100%;
}

p {
	margin-bottom: 1em;
	margin: 0 0 1lh 0;
	-webkit-hyphens: auto;
	hyphens: auto;
}

ol {
	margin: 1em 0;
	padding: 0 0 0 2em;
}

ul {
	margin: 1em 0;
	padding: 0 0 0 1.2em;
}

ol ol,
ol ul,
ul ol,
ul ul {
	margin: 0;
}

li {
	margin: 0.2em 0;
}

hr {
	height: 1px;
	color: #ccc;
	background-color: #ccc;
	border: 0;
	margin: 2em 0;
}

a:link,
a:visited,
a:active {
	color: inherit;
}

img {
	max-width: 100%;
	height: auto;
	vertical-align: middle;
	font-style: italic;
	background-repeat: no-repeat;
	background-size: cover;
	shape-margin: 0.75rem;
}

a img {
	border: 0;
}

button,
[role="button"] {
	position: relative;
	color: #333;
	background-color: silver;
	display: inline-block;
	padding: 4px 12px;
	text-align: center;
	white-space: nowrap;
	vertical-align: middle;
	cursor: pointer;
	border: 2px solid #333;
	border-radius: 4px;
	text-decoration: none;
	-webkit-box-shadow: 3px 3px 4px rgba(0,0,0,.175);
	box-shadow: 3px 3px 4px rgba(0,0,0,.175);
	margin: 0;
	line-height: 1;
	user-select: none;
}
button:empty,
[role="button"]:empty {
	height: 0.5em;
}

button:hover,
[role="button"]:hover {
}

button:active,
[role="button"]:active {
	border-width: 3px 2px 1px 2px;
}

input:not([type]),
input[type="text"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="email"],
input[type="url"],
input[type="password"],
select {
	background-color: #fff;
	border:1px solid #A0A0A0;
	border-radius: 3px;
	padding: 3px;
	margin: 2px 0;
}

button:disabled,
input:disabled,
select:disabled {
	background-color: #efefef;
	border: none;
	cursor: not-allowed;
}

select {
	cursor: pointer;
}

input[type="number"] {
	-moz-appearance: textfield;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spinner-button,
input[type="number"]::-webkit-inner-spinner-button {
	-webkit-appearance: none;
	margin: 0;
}

input[type="file"],
input[type="checkbox"] {
	display: none;
}

input[type="radio"] {
	margin: 0;
}

progress {
	width: 200px;
}

abbr {
	text-decoration-style: dotted;
}

/** || Layout Rules **/

#container {
	width: fit-content;
	margin: 2em auto 0;
}

footer {
	padding: 1em 0;
}
footer > div {
	display: flex;
	justify-content: space-between;
}
footer > div > div:last-child {
	text-align: right;
}

/** || Module Rules **/

.sevenSegment {
	font-family: 'Segment7Standard', Monospaced;
	font-size: 200%;
	color: #DD0000;
	position: relative;
	width: 3ch;
	text-align: right;
	padding: 0.2em 0.2em 0 0.2em;
}
.sevenSegment::before {
	position: absolute;
	left: 0;
	top: 0;
	content: '888';
	z-index: -1;
	color: #500;
	background-color: #111;
	padding: 0.2em 0.2em 0 0.2em;
	border-radius: 0.2em;
}

/** || State Rules **/


/** || Theme Rules **/

body {
	background-color: #333;
	color: #fff;
}
