html,
body {
	background: #333;
	color: #fff;
	font-family: 'Open Sans';

	margin: 0;
	padding: 0;

	width: 100%;
	height: 100%;
}

main {
	display: grid;
	row-gap: 6px;

	align-content: center;
	align-items: center;
	justify-content: center;
	padding-top: 6px;
	padding-bottom: 100px;

	width: 100%;
}
/* MENU */
.menuElement {
	display: flex;

	align-items: center;
	justify-content: center;

	width: 100%;
	background: #444;
	border-radius: 6px;
}

/* HEADER */
#header {
	display: flex;
	justify-content: center;
	align-items: center;
	box-sizing: border-box;
	padding: 20px;
	width: 100%;
}
#header img {
	width: 64px;
	margin: 0 12px;
}
#header .text {
	margin-bottom: 6px;
}
#header h2 {
	margin: 0;
}

/* LIST */
#list {
	display: grid;
	column-gap: 2px;
	row-gap: 2px;
}
.caption {
	display: grid;
	column-gap: 10px;
	grid-template-columns: auto 50px;
	grid-template-rows: 50% 50%;
	grid-template-areas:
	"line1 show"
	"line2 show";

	align-items: center;
	text-align: center;
	padding: 10px;
	background: #555;
	border-radius: 6px;
	position: relative;
	white-space: nowrap;

	/* width: 400px; */
	height: 50px;
}
.caption:nth-child(2n) {
	background: #666;
}
.caption > .line:nth-child(1) {
	grid-area: line1;
}
.caption > .line:nth-child(2) {
	grid-area: line2;
}
.b_show {
	grid-area: show;
	
	display: flex;
	align-items: center;
	justify-content: center;

	background: #16b900;
	border-radius: 6px;

	height: 100%;
	width: 100%;
}
.b_show:hover {
	background: #14a501;
	color: #ccc;
	cursor: pointer;
}
.captionID {
	position: absolute;
	top: 2px;
	left: 2px;
	font-size: 0.7rem;
}

/* PLAYBACK */
#controls {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	position: fixed;
	bottom: 0;
	left: 0;
}
.controls_button {
	display: flex;
	flex-direction: column;
	align-items: center;

	background: #444;
	border: none;
	border-radius: 6px;
	color: #fff;

	width: 100%;
	height: 100%;

	padding: 16px;
}
.controls_button i {
	font-size: 1.5rem;
	margin-bottom: 6px;
}
.controls_button:hover {
	background: #4a4a4a;
	cursor: pointer;
	text-shadow: #222 0px 0px 4px;
}
#resume:hover {
	color: limegreen;
}
#pause:hover {
	color: orange;
}
#hide:hover {
	color: lightslategray;
}

/* OPTIONS */
#options {
	display: flex;
	flex-direction: column;
	align-items: center;
	box-sizing: border-box;
	padding: 6px;
}
#options label {
	padding: 6px 0;
	font-weight: 500;
}
#options input[type='number'] {
	margin: 0 0 0 12px;
	width: 36px;
}

/* ALTERNATIVE OPTIONS */

.mini_button {
	display: flex;
	flex-direction: column;
	align-items: center;

	background: #444;
	border: none;
	border-radius: 6px;
	color: #fff;

	padding: 16px !important;
}

.mini_button i {
	font-size: 1.5rem !important;
	margin-bottom: 6px !important;
}

.mini_button:hover {
	background: #4a4a4a;
	cursor: pointer;
	text-shadow: #222 0px 0px 4px;
}

label.mini_button
{
    font-size: 0.8rem;
}

.b_controls
{
    grid-area: show;
	
	display: flex;
	align-items: center;
	justify-content: center;

	background: #16b900;
	border-radius: 6px;

    margin-inline: 5px;
    padding: 16px !important;
}

.b_controls:hover {
	background: #14a501;
	color: #ccc;
	cursor: pointer;
}

.b_controls_red
{
    background: #b90000 !important;
}

.b_controls_red:hover
{
    background: #a50101 !important;
}

#sel_captions
{
    align-items: center;
	text-align: center;
	padding: 3px;
    margin: 3px;
	background: #555;
    color: #FFF;
	border-radius: 6px;
	white-space: nowrap;
}

#caption_preview {
    display: grid;
    column-gap: 2px;
    row-gap: 2px;
    grid-template-areas: "line1" "line2";

	align-items: center;
	text-align: center;
	padding: 10px;
    margin: 10px;
	background: #555;
	border-radius: 6px;
	white-space: nowrap;

	/* width: 400px; */
	height: 50px;
    min-width: 80px;
}

#caption_preview > .line:nth-child(1) {
	grid-area: line1;
}
#caption_preview > .line:nth-child(2) {
	grid-area: line2;
}

#editor_firstLine, #editor_secondLine
{
    width: 100%;
}

#caption_editor
{
    display: grid;
    column-gap: 2px;
    row-gap: 2px;

	align-items: center;
	text-align: center;
	padding: 10px;
    margin: 10px;
	border-radius: 6px;
	white-space: nowrap;
}

#caption_editor > label
{
    display: flex;
    flex-direction: row;
}
#caption_editor > label > *
{
    margin-inline: 5px;
}

.vertial_line
{
    border-left: 4px solid #333333;
    border-radius: 6px;
    height: 50px;
    margin-inline: 10px;
}

#capedit_box
{
    display: grid;
    column-gap: 2px;
    row-gap: 2px;

    align-items: center;
	text-align: center;

}

.row_arrange {
    display:flex;
    flex-direction: row;
    align-items: center;
}

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

/* TIMER */

/* POPUP */
#popup {
    display: flex;
    
    align-items: center;
    justify-content: space-around;

    position: fixed;
    top: 0;
    left: 0;
	z-index: 999;

    margin: 12px;
    padding: 12px;

    opacity: 0;
    visibility: hidden;
    transition: opacity .25s linear, visibility .25s linear;

    background: rgba(68, 68, 68, .75);
    border-radius: 8px;
	box-shadow: 0 0 12px #111;
    color: #fff;
}
#popup.active {
    opacity: 1;
    visibility: visible;
}
#popup .icon {
    margin-right: 12px;
    color: #fff;
    font-size: 1.25rem;
}
#popup .fa-check-circle {
    color: limegreen;
}
#popup .fa-times-circle {
    color: red;
}

@media screen and (min-width: 768px) and (max-width: 1199px) {
	#header {
		justify-content: left;
	}
	#list {
		grid-template-columns: 1fr 1fr;
	}
	.caption:nth-child(4n) {
		background: #555;
	}
	.caption:nth-child(4n-1) {
		background: #666;
	}
}
@media screen and (min-width: 1200px) {
	#list {
		grid-template-columns: 1fr 1fr 1fr;
	}
    #capedit_box {
		grid-template-columns: 1fr 1fr;
	}
	#controls {
		position: relative;
	}
}
/* 
@keyframes cooldown {
	0% { width: 100%; }
	100% {width: 0;}
} */