.top-0 {top: 0;}
.bottom-0 {bottom: 0;}
.left-0 {left: 0;}
.right-0 {right: 0;}

html {
	height: 100%;
}
body {
	position: relative;
	min-height: 100%;
	padding-bottom: 35px;
}
footer {
	position: absolute;
	right: 0; bottom: 0; left: 0;
	height: 35px;
	padding: 7px;
	background: #343a40;
	color: white;
	font-size: 13px;
	text-align: center;
}

footer a,
footer a:hover,
footer a:focus {
	color: inherit;
}
.form-control::placeholder {
	color: inherit;
	opacity: 0.75;
}
.media-collection .row {
	margin-right: 0;
}

.btn.disabled, .btn[disabled], fieldset[disabled] .btn {
	cursor: not-allowed;
	opacity: 0.25;
}

a.btn.disabled, fieldset:disabled a.btn {
    pointer-events: auto;
}
a.btn.disabled:active, fieldset:disabled a.btn:active {
    pointer-events: none;
}

.required:after {
	content: " *";
	color: red;
}
.form-check .required:after {
	content: '';
}
.bg-contain {
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
}
.rounded-bottom-0 {
	border-bottom-left-radius: 0;
	border-bottom-right-radius: 0;
	margin-bottom: -1px;
}
.rounded-top-0 {
	border-top-left-radius: 0;
	border-top-right-radius: 0;
}
a.link-raw, a.link-raw * {
	color: inherit;
	text-decoration: inherit;
}
input[type="color"] {
    width: 50px;
    height: 30px;
    padding: 4px 6px;
}
input[type=color]::-webkit-color-swatch {
  border: 1px solid #777;
}
input[type=color]::-webkit-color-swatch-wrapper {
    padding: 0;
}
.crossed-out {
	position: relative;
}
.crossed-out::before {
	position: absolute;
	content: '';
	left: 0; right: 0;
	top: 50%;
	border-top: 1px solid;
	border-color: inherit;
	transform: rotate(-15deg);
}

.ui-draggable-handle {
	cursor: move;
}
.directory.hover .card-body {
	background-color: rgba(0, 140, 255, 0.2);
}


.sortable .card-header {
	cursor: move;
}
.sortable .locked .card-header {
	cursor: not-allowed;
}
.component-list .card {
	min-height: 350px;
}
.document-list {
	position: relative;
}
.document-list .card {
	min-height: 350px;
}
.page-list .card {
	min-height: 350px;
	height: 100%;
}
.card-body {
	overflow: hidden;
}

.card.hover {
	box-shadow: 5px 5px 20px rgba(0,0,0,0.1);
}

a.card-body {
	color: inherit;
	text-decoration: inherit;
}


.card .default-image {
	width: 100%;
	padding-top: 75%;
	background: transparent center no-repeat;
	background-size: contain;
}

.thumb-remove {
	background: white;
}

.btn-container {
	transition: opacity 0.5s linear 0.5s;
	opacity: 0;
}
.card-body:hover .btn-container {
	opacity: 1;
}


h1 a .fa-chevron-left {
	margin-left: -1.25em;
	margin-right: 0.25em;
}

.media-collection .form-check {
	display: none;
}

.header-link img {
	max-height: 60px;
}
.form-control-file {
	overflow: hidden;
}

.status-submit .card {
	border: 2px solid rgba(0, 128, 0, 0.5);
}
.status-process .card {
	border: 2px solid rgba(23, 162, 184, 0.6);
}

/* PRINTABLE */

.printable h1, .printable .h1 { font-size: 2.5em; margin: 0;}
.printable h2, .printable .h2 { font-size: 2em; margin: 0;}
.printable h3, .printable .h3 { font-size: 1.75em; margin: 0;}
.printable h4, .printable .h4 { font-size: 1.5em; margin: 0;}
.printable h5, .printable .h5 { font-size: 1.25em; margin: 0;}
.printable h6, .printable .h6 { font-size: 1em; margin: 0;}

.printable .col-sm-3 {flex: 0 0 25%; max-width: 25%;}
.printable .col-sm-4 {flex: 0 0 33.333333%; max-width: 33.333333%;}
.printable .col-sm-5 {flex: 0 0 41.666667%; max-width: 41.666667%;}

.printable .card {border-radius: 0; padding-right: 5px;}
.printable .card-header {display: none;}


@media print {
	.badge {
		border: none;
	}
}

.printable .images-container {padding-top: 55%; margin: 2px;}

.printable .col-6 {font-size: 90%; padding: 2rem 3rem;}
.printable .col-4 {font-size: 65%; padding: 0.5rem 1.5rem;}
.printable .col-3 {font-size: 50%; padding: 1.25rem 1rem;}


.scroll_btn,
.scroll_btn:focus {
	display: block;
	position: fixed;
	width: 0; height: 0;
	padding: 0;
	background: #007bff;
	border: none;
	border-radius: 50%;
	outline: none;
	overflow: hidden;
	box-shadow: 0 3px 10px rgba(0, 0, 0, 0.5);
	color: white;
	font-size: 0;
	transition: all 0.1s;
}
.scroll_btn.reveal {
	width: 50px; height: 50px;
	font-size: 1rem;
}
.scroll_btn.reveal:hover {
	box-shadow: 0 3px 10px rgba(0, 0, 0, 0.5), 0 3px 15px rgba(0, 0, 0, 0.5);
}
.scroll_to_bottom {
	top: 50px; right: 50px;
}
.scroll_to_top {
	right: 50px; bottom: 50px;
}


.search-highlight {
	border-color: #46b8da;
	background-color: rgba(91, 192, 222, 0.3);
}

.store-list .card {
    min-height: 200px;
}

.shared-document .fa-share-alt {
	display: none;
}


button.thumb-autogen-download:hover,
button.thumb-autogen-download:focus,
button.thumb-autogen-download:active {
	background-color: #f8f9fa;
	outline: none;
}

.ui-autocomplete {
    max-height: 400px;
    overflow-y: auto;
    overflow-x: hidden;
}

.last-documents .card {
	min-height: 400px;
}