html, body {
	margin:0;
	padding:0;
	min-height:100vh;
	text-align:center;
}
html, body, input, textarea {
	font-family:Arial, Helvetica, sans-serif;
	font-size:14px;
}

* {
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
}

input[type="submit"] {
	background:#BD081C;
	border-color:#BD081C;
	color:#fff;
	cursor:pointer;
}
input[type="submit"]:active {
	background:#F80B25;
}
input, textarea {
	border:1px solid #aaa;
	border-radius:5px;
	padding:4px 5px;
}

a {
	color:#BD081C;
	text-decoration:underline;
}
a:hover {
	text-decoration:none;
}
a:active, a.chosen:active {
	color:#F80B25;
}
a.chosen {
	color:#000;
	font-weight:bold;
	text-decoration:none;
}

.header {
	padding:5px 0;
	background:#efefef;
	border-bottom:1px solid #ccc;
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
}

.menu a {
	text-decoration:none;
	margin:0 5px;
}
.menu a:hover {
	text-decoration:underline;
}
.menu a.chosen:hover {
	text-decoration:none;
}
.menu > div {
	margin:5px;
}

.centerer {
	display: flex;
	justify-content: center;
	align-items: center;
	height:100vh;
}
.login .input {
	margin:10px 0;
}
.login input {
	width:100%;
}
.login, .editor {
	border:1px solid #ccc;
	padding:50px;
	border-radius:10px;
	#width:100%;
	max-width:400px;
	background:#efefef;
}
.editor {
	max-width:90%;
	padding:10px 0;
	margin:10px auto;
}

.error, .errors {
	color: #D8000C;
	background-color: #FFBABA;
	border:1px solid;
	padding:0 15px;
	border-radius:5px;
}
.errors {
	margin:10px auto 10px auto;
	max-width:90%;
}
.message, .messages {
	color:#4F8A10;
	background-color:#DFF2BF;
	border:1px solid;
	padding:0 15px;
	border-radius:5px;
}
.messages {
	margin:10px auto 10px auto;
	max-width:90%;
}
.messages p, .errors p {
	margin:7px;
}

.approver {
	max-width:1300px;
	margin:0 auto 0 auto;
	padding:0 5px;
}
.approver_text {
	max-width:90%;
	margin:10px auto;
	border:1px solid #ccc;
	padding:0 5%;
	border-radius:10px;
}
.approver img {
	border:3px solid transparent;
	vertical-align:bottom;
}

.writer, .posters {
	position:fixed;
	bottom:0;
	left:0;
	right:0;
	border-top:1px solid #ccc;
	background:#efefef;
	padding:0 0 10px 0;
}
.posters {
	padding:0;
	border:0;
}

.poster {
	cursor:pointer;
}
.poster.chosen {
	border-color:#BD081C;
}
#posters_chosen {
	background:#000;
	color:#fff;
	margin:0 auto auto;
	padding:10px 0;
	display:none;
}
#posters_chosen img {
	width:144px;
}
#posters_chosen:hover img {
	width:320px;
}
.posters_num {
	display:inline-block;
}
#posters_submit {
	display:none;
	margin:10px 0;
}

.field {
	display:flex;
	max-width:90%;
	margin:7px auto;
}
.field_title, .field_margin, .field_submit {
	width:160px;
}
.field_title {
	padding:5px 10px 0 0;
	text-align:right;
}
.field_input {
	flex-grow:1;
}
.field_input input , .field_input textarea {
	width:100%;
}
.field_submit {
	text-align:left;
	padding:2px 0 0 10px;
}
textarea.auto {
	overflow-x: hidden;
	line-height:135%;
	vertical-align: middle;
}
@media only screen and (max-width: 899px) {
	.field {
		display:block;
		margin:10px 5px;
	}
	.field_title {
		width:100%;
		text-align:left;
	}
	.field_margin {
		display:none;
	}
	.field_submit {
		width:100%;
		text-align:center;
		padding:10px 0 0 0;
	}
}

.stats {
	margin:10px auto;
	max-width:900px;
}
.stats tr:nth-child(even) {
    background-color:#eee;
}
.stats td {
	padding:3px 10px;
}

.duplicates {
	width:100%;
}
.duplicates tr.small {
	font-size:12px;
}
.duplicates tr.white {
	background:#fff;
	text-align:left;
}
.duplicates td {
	padding:3px 10px;
}

.desc_hidden {
	display:none;
}

.player_width {
	max-width:640px;
	margin:20px auto 0 auto;
}
.player_height {
	height:0;
	padding-bottom:56.25%;
	position:relative;
}
.fluid_video_wrapper {
	position:absolute!important;
	top:0!important;
	bottom:0!important;
	left:0!important;
	right:0!important;
	width:auto!important;
	height:auto!important;
}

.tag, .tag_button {
	display:inline-block;
	padding:5px;
	margin:5px;
	background:#efefef;
	border-radius:3px;
	border:1px solid #ccc;
	white-space:nowrap;
	font-size:15px;
}
.tag_input {
	padding:5px;
	margin:5px;
	border-radius:3px;
	font-size:15px;
}
.tag_button:hover {
	cursor:pointer;
	background:#ccc;
	color:#fff;
}


.table_ellipsis {
  max-height: 1.3em;
  overflow: hidden;
  position: relative;
  color: transparent;
}

.table_ellipsis::after {
  content: attr(title);
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  color: black;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  #text-decoration:underline dotted;
}



.more_fields {
	display:none;
}