:root {
	--main-color: #73b943;
	--hover-color: #6ba913;
}

* {
	font-family: 'Open Sans', sans-serif;
	font-size: 12pt;
}

[hidden] { display: none !important; }

body {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
}

.tile_container {
	height: 100%;
	/* display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-content: flex-start;
	flex-wrap: wrap; */
	padding: 12px;
}

.tile {
	flex: 1 0 41%;
	height: 20%;
	background-color: white;
	border-radius: 0.5em;
	padding: 12px;
	margin-right: 12px;
	margin-bottom: 12px;
	box-shadow: 0 6px 10px -6px #777;
}

.tile.tiny {
	height: 1.3em !important;
}

.tile.small {
	height: 3em !important;
}

.tile.medium {
	height: 4.5em !important;
}

.tile.large {
	height: 6em !important;
}

.tile.huge {
	height: 7.5em !important;
}

.tile_content {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
}

.tile_header {
	font-size: 14pt;
	margin-bottom: 6pt;
}

.tile_content_name {
	font-weight: 800;
}

form {
	display: flex;
}

label {
	font-size: 0.8em;
	margin-right: 1em;
}

.tabheader {
	width: 100%;
	background-color: var(--main-color);
}

.tablinks {
	font-size: 1em;
}

.tab {
	/* max-width: 75%; */
	display: flex;
	flex-direction: column;
	width: fit-content;
	overflow: hidden;
	border: 1px solid #ccc;
	background-color: #f1f1f1;
}

#status_tab {
	width: 25%;
	overflow-y: auto;
}

#working_tab {
	/* width: 60%; */
	flex-grow: 2;
	margin-right: calc(1vh + 8px);
}

.tab button {
	background-color: inherit;
	float: left;
	border: none;
	outline: none;
	cursor: pointer;
	padding: 14px 16px;
	transition: .3s cubic-bezier(.25,.8,.5,1),color 1ms !important;
	color: #ffffff;
	background-color: var(--main-color);
}

.tab button:hover {
	background-color: var(--hover-color);
}

.tab button.active {
	color: black;
	background-color: #f1f1f1;
}

.tabheader_redirect {
	background-color: inherit;
	float: right;
	padding: 5px;
}

.tabheader_redirect:hover {
	background-color: var(--hover-color);
}

.tabcontent {
	display: none;
	padding: 12px;
	border-top: none;
	animation: fadeEffect 0.3s !important;
}

@keyframes fadeEffect {
	from {opacity: 0;}
	to {opacity: 1;}
}


.output_container {
	margin-top: 1em;
	background-color: white; 
	overflow-y: auto;
	overflow-x: auto; 
	/* width: 48em;  */
	height: 70vh;
	resize: vertical;
}

.output {
	margin-top: -0.5em;
	white-space: nowrap;
	padding: 1em; 
}

.line_element {
	font-size: 1em;
	margin-block-end: 0em;
    margin-block-start: 0em;
}

.button_container {
	display: flex;
	flex-direction: row;
	align-items: center;
	height: 3em;
	margin-bottom: 0.5em;
}

.button_status {
	margin-right: 0.5em;
}

/* .processor_button_container {
	margin-bottom: 0.5em;
	height: auto;
} */

.run_button {
	font-size: 1em;
	height: 80%;
    min-width: 4em;
    margin-right: 0.5em;
    border-radius: 0.4em;
    border: 0px;
    background-color: var(--main-color);
	color: white;
	transition: .3s cubic-bezier(.25,.8,.5,1),color 1ms;
	box-shadow: 0 0 1px 0px white inset, 0 0 1px 0px white;
}

.run_button:hover {
	background-color: var(--hover-color);
}

.run_button:disabled {
	background-color: #7b7e66;
	color: grey;
}

.dot {
	height: 1.25em;
	width: 1.25em;
	background-color: #bbb;
	border-radius: 50%;
	display: inline-block;
	margin-right: 0.5em;
	box-shadow: 0 0 1px 0px white inset, 0 0 1px 0px white;
}


table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: .5em;
}

thead {
	font-size: large;
	font-weight: bold;
}

tr {
	width: 100%;
	padding: .5rem;
}

tr:nth-child(even) {
	background-color: #eee;
} 

td {
	margin-right: 2.5%;
	padding: .2rem;
	text-align: left;
}

td:first-child {
	font-size: smaller;
	font-style: italic;
}

td:has(input[type="checkbox"]){
	margin: 0;
	padding: 0;
}

td:has(input[type="checkbox"]):not(:nth-child(2)){
	padding-left: .5rem;
	border-left: solid 1px var(--main-color);
}



input[type='checkbox'] {
	margin: 0;
	scale: 1.2;
}

input[type='time'] {
	font-size: small;
	min-width: 50%;
	letter-spacing: -.5;
	border: none;
	background-color: rgba(0,0,0,0);
}

input[type='time']::-webkit-calendar-picker-indicator {
	display: none;
}

input:hover {
	font-weight: bolder;
}


input:focus:active {
	font-weight: bolder;
	background-color: var(--main-color);
	color: white;
}

.schedule-button, .schedule-button-minus {
	align-items: center;
	text-align: center;
	vertical-align: middle;
	padding: 0;
	margin: .5em;
	height: 1em;
	width: 1em;
	background: url("/static/plus.svg") center center no-repeat;
	border-radius: 1em;
	background-clip: border-box;
	border: 2px solid var(--main-color);
}

.schedule-button-minus {
	border: 2px solid red;
}

tr {
	align-items: center;
	justify-content: center;
	vertical-align: baseline;
}

.plus-icon {
	width: 100%;
	height: 100%;
}



@media all and (orientation:portrait) {
	body {
		display: flex;
		flex-direction: column;
		justify-content: flex-start;
	}

	.tab {
		max-width: 100%;
		width: 100%;
		flex-grow: 0;
	}
	
	#status_tab {
		width: 100%;
		flex-grow: 0;
	}
	
	#working_tab {
		width: 100%;
		flex-grow: 0;
		margin-bottom: calc(1vh + 8px);
	}

	.output_container {
		height: 55vh;
		resize: vertical;
	}
}

@media all and (orientation:landscape) {
	body {
		display: flex;
		flex-direction: row;
		justify-content: space-between;
	}
}