* {
	box-sizing: border-box;
	font-size: 1em;
}


html {
	background-color: aliceblue;
	font-family: "Roboto", sans-serif;
}

body {
	max-width: 800px;
	margin: auto;
	padding: 1rem;
}

.timeClockText {
	color:darkslategray;
}

.companyNameText{
	color: slategray;
}

form {
	display: inline;
}

.noScroll {
	height: 100vh;
    overflow-y: hidden;
}

.fit {
	font-family: sans-serif!important;
	text-transform: uppercase;
	font-weight: 700;
	line-height: .9em;
	
}

.sectionHeader {
	color: slategray;
	font-size: 2em;
    margin: 1rem 0 0;
    font-weight: 400;
    text-transform: uppercase;
}
.sectionHeader::after {
	 content: ":";
}

input:not([type="checkbox"]), select, textarea {
	width: 100%;
	margin-bottom: 1em;
	font-size: 1.2em;
    padding: .25em .5em;
}

header {
	user-select: none;
	margin-bottom: .5rem;
	cursor: pointer;
}

header > div > span {
	display: inline-block!important;
}

header > div:last-of-type {
	display: none!important;
}

h2 {
	text-align: center;
    font-size: 1.2em;
    margin-bottom: .5rem;
}

h2::before {
  content: "-- ";
}

h2::after {
  content: " --";
}

menu {
	margin: 0 0 .5rem;
	display: flex;
	border-top: solid slategray;
	border-bottom: solid slategray;
	padding: .5rem 0;
}

menu > * {
	flex: 1;

}

menu > button {
	flex: none;
	margin-right: .5rem;
}
menu > button:last-of-type {
	margin-right: 0;
}

#pageName {
	color: slategray;
	font-size: 1.25em;
    text-transform: uppercase;
}

table{
	margin-top: 2rem;
}

table {
	width: 100%;
	border-collapse: collapse;
}

table td {
	padding: .45em 0;
	border-top: solid thin lightgray;
    border-bottom: solid thin lightgray;
}

td, th {
	font-weight: 400;
	color: slategray;
	text-align: center;
}

th {
font-weight: 400;
color: darkslategray;	
}

td:first-child,th:first-child {
	text-align: left;
}

td:last-child, th:last-child {
	text-align: right;
}


table.timeHistory  {
    font-size: .85em;
}

table.timeHistory > tbody > tr > td:nth-child(2) {
	font-weight: bold;
}
table.timeHistory > tbody > tr > td:nth-child(3) {
	font-size: .85em;
}
table.timeHistory > tbody > tr > td:nth-child(4) {
	font-weight: bold;
}

table.timeHistoryManagePage  {
	margin-bottom: 1rem;
}

table.timeHistoryManagePage > tbody > tr > td:nth-child(1) {
	text-align: left;
	font-size: .85em;
	width: 40px;
}

table.timeHistoryManagePage > tbody > tr > td:nth-child(2) {
	font-size: .75em;
	text-align: right;
	padding-right: 1em;
}

table.timeHistoryManagePage .in, table.timeHistoryManagePage .out {
	font-weight: bold;
	font-size: .95em;
}
table.timeHistoryManagePage .break {
	font-size: .75em;
}

.nameInTable {

}

.nameInTable th {
vertical-align:bottom;	
}

.nameInTable th:first-of-type {
	font-size: 1.5em;
    text-transform: uppercase;
    font-weight: 300;
	line-height: 1em;
}

button {
	color: aliceblue;
	cursor: pointer;
	border: none;
	user-select: none;
	background-color: lightslategray;
	text-transform: uppercase;
    letter-spacing: 1px;
}
button:disabled {
	background-color: grey;
	color: white;
	opacity: 0.6;
	cursor: not-allowed;
}


button.middle{
	display: block;
	margin: auto;
}

button:active {
		-webkit-box-shadow: .5px .5px 2px 0px rgb(0 0 0 / 10%); 
	box-shadow: .5px .5px 2px 0px rgb(0 0 0 / 10%);
}

button.positive {
	color: aliceblue;
	background-color: #67B7A7;
}

button.negative {
	color: aliceblue;
	background-color: indianred;

}

button.neutral {
	color: aliceblue;
	background-color: #EABBEC;
}

.mainButton {
	margin: auto;
    display: block;
    font-size: 1.3em;
	text-align: center;
}

.bigButton {
	margin: 0 auto 1rem;
    display: block;
    font-size: 2em;
    width: 100%;
	padding: .5rem;
    font-weight: 700;
}

.mediumButton {
	margin: 0 auto 1rem;
    display: block;
    font-size: 1.5em;
    width: 100%;
	padding: .25rem;
    font-weight: 700;
}

button.right {
	margin-left: auto;
	display: block;
}

.floatWindow button {
	margin-bottom: 1rem;
}

#employeePin {
	width: 100%;
	text-align: center;
    font-size: 3em;
    border: solid;
	margin-bottom: 10px;
}

#pinPad {
	max-width: 400px;
	margin: auto;
}
#pinPadDigits {
	
}


.floatWindowWrapper{
	z-index: 10;
	position: fixed;
    display: flex;
    top: 0px;
	left: 0px;
    bottom: 0px;
	right: 0px;
    align-items: center;
	backdrop-filter: blur(3px)  brightness(0.7);
	visibility: hidden;
}

.floatWindow {
	display: flex;
	position: relative;
	max-height: calc(100% - 2rem);
	max-width: calc(100% - 2rem);
    margin: auto;
    background-color: aliceblue;
}

.floatWindowBody {
	overflow: auto;
	padding: 1em 1em 0;

}

.closeWindow {
	position: absolute;
    top: -.75rem;
    right: -.75rem;
    background-color: red;
    color: white;
    padding: .25em .5em;
    font-size: 1em;
    font-weight: 700;
    border-radius: .25em;
	cursor: pointer;
}
.closeWindow.small {
	padding: 0 0.35em;
	right: -0.5rem;
}

.flexRow {
	display: flex;
	margin: 0 -.5rem 1rem;
}
.flexRow > * {
	flex: 1;
	margin: 0 .5rem;
}

.flexRow input {
 margin-bottom: 0;
}

.noFlex {
	flex: none;
}

.pinpadRow {
	display: flex;
	margin: 0 -.5rem;
}


.pinpadRow > div {
	flex: 1;
	text-align: center;
    padding: .5em;
    font-size: 3em;
    margin: .5rem;
    cursor: pointer;
	tap-highlight-color: rgba(181,101,29,.5);
	-webkit-tap-highlight-color: rgba(181,101,29,.5);
	user-select: none;
}

.translucentText {
	/* Translucent blue background */
	background-color: rgba(3,77,95, 0.7); /* Blue with 50% opacity */

	/* Glowing gold text */
	color: gold;
	text-shadow: 0 0 5px #634a06, 0 0 10px gold;

	/* Glowing gold border */
	border: 2px solid gold;
	box-shadow: 0 0 5px #6563b6, 0 0 10px gold;
}

.err_message:not(:empty) {
    text-align: center;
    font-size: 1.3em;
    border: solid;
    color: red;
    padding: .25em;
    margin: 0 0 1em;	
}

#clock {
	text-align: center;
    margin-bottom: 1rem;
	color: darkslategray;
}

#date {
	font-weight: 400;
	color: slategray;
	font-size: 1.3em;
}
#time {
	margin-bottom: -.75rem;
}
#time > span:first-of-type{
	font-weight: 700;
	font-size: 6em;
}

#time > span:last-of-type{
	font-weight: 400;
    font-size: 2em;
	
}


.hoursEdited td {
	color: #8d651b;
}

.overHours td {
	color: red;
}

.actions {
 max-width: 400px;
	margin: 1em auto;
}

#teamagotchi {
	display: block;
	margin: auto;
}

#loading {
	text-align: center;
	padding: 2rem 3rem 3rem;
	font-size: 2em;
}

#employeeStats {
	background-color: aliceblue;
    padding: .05em 1em .05em;
	margin: 1em 0 1em;
}

#employeeStats input {
	text-align: center;
}

@media only screen and (max-width: 550px) {
 header > div > span {
	display: none!important;
}

header > div:last-of-type {
	display: inline-block!important;
}
}

@media only screen and (max-width: 450px) {
	
#employeeStats {
font-size: .85em;
}
	
}
