/*
 pzplUI 2.4
 MIT Licensed - https://github.com/ProgramistaZpolski/pzplUI
 */

 :root {
	/* Smooth Scrolling */
	scroll-behavior: smooth;
	/* Backgrounds */
	--bg-color: white;
	--bg-text: black;
	/* Colors */
	--button-text: white;
	--black: black;
	--black-hover: #212121;
	--black-light: #4d4d4d;
	--black-alert-a: #e6e6e6;
	--white: white;
	--blue-light: #b6d9fe;
	--blue: #0270e6;
	--blue-hover: #0068d7;
	--blue-alert-text: #0257b3;
	--blue-alert-a: #003166;
	--green-light: #a7e1aa;
	--green: #308c34;
	--green-hover: #338337;
	--green-alert-text: #236626;
	--green-alerta-a: #091a0a;
	--red-light: #ecaeb4;
	--red: #d03141;
	--red-hover: #c03240;
	--red-alert-text: #a82633;
	--red-alert-a: #55131a;
	--orange-light: #fcce94;
	--orange: #f08a07;
	--orange-hover: #df8106;
	--orange-alert-text: #995700;
	--orange-alert-a: #5b3503;
	--info-blue-light: #77dde6;
	--info-blue: #1e9aa6;
	--info-blue-hover: rgb(3, 129, 143);
	--info-blue-alert-text: #16727b;
	--info-blue-alert-a: #072224;
	--secondary: #64748b;
	--secondary-hover: #4b5563;
	--text-muted: #7d868e;
	--card-border-color: rgba(12, 12, 12, 0.125);
	--card-header-bgcolor: rgba(0, 0, 0, .03);
	--modal-footer: #dee2e6;
	--modal-background: rgba(0, 0, 0, 0.4);
	--mark-color: #fff4b8;
	--form1: #e9ecef;
	--form2: #ced4da;
	--form-shadow: 0 0 0 .25rem rgba(0, 102, 255, 0.438);
	--jumbotron-bg: #e9ecef;
	--link-color: #007bff;
	--progress-bg: #e9ecef;
	--kbd: #1d1e20;
	/* Misc. Settings */
	--animation-speed: 1.5s;
	--animation-transform: 300px;
	--mp-spacing: 1rem;
	/* Dark Mode Variables */
	--dark-bg-color: #1d1e20;
	--dark-bg-text: white;
	--dark-box-shadow-1: 0 .2rem 0 rgba(0, 0, 0, 0.05);
	--dark-box-shadow-2: 0 .2rem 0 rgba(0, 0, 0, .1);
	--dark-mark-color: #ffdc1f;
	--dark-form1: #161310;
	--dark-form2: #312b25;
	--dark-form-shadow: 0 0 0 .25rem #7dd4fc98;
	--dark-jumbotron-bg: #252525;
	/* Typography */
	--code-font-stack: "Ubuntu Mono", SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
	--font-stack: 'Ubuntu', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, "Helvetica Now Text", "Helvetica Neue", "Helvetica", Cantarell, Oxygen, Arial, Tahoma, Geneva, Verdana, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
	--heading-1: 2.5rem;
	--heading-2: 2rem;
	--heading-3: 1.75rem;
	--heading-4: 1.5rem;
	--heading-5: 1.25rem;
	--heading-6: 1rem;
	--text-sm: .875rem;
	--display-1: 5rem;
	--display-2: 4.5rem;
	--display-3: 4rem;
	--display-4: 3.5rem;
	--display-5: 3rem;
	--display-6: 2.75rem;
	--badge-font-size: 75%;
	--light-font-weight: 300;
	--regular-font-weight: 400;
	--medium-font-weight: 500;
	--semibold-font-weight: 600;
	--bold-font-weight: 700;
	/* Paddings */
	--normal-padding: .75rem;
	--sm-padding: .25rem;
	--column-padding: .75rem;
	--hero-padding: 3rem 1.5rem;
	--button-padding: .375rem .75rem;
	--button-lg-padding: .5rem 1rem;
	--button-sm-padding: .25rem .5rem;
	--alert-padding: .75rem 1.25rem;
	--badge-padding: .25em .4em;
	--box-padding: 1rem;
	--box-sm-padding: .5rem;
	--box-lg-padding: 2rem;
	--navbar-padding: .5rem 1rem;
	--card-header-padding: .5rem 1rem;
	--card-body-padding: 1rem 1rem;
	--modal-header-padding: 1rem 1rem;
	--modal-body-padding: 1rem;
	--pag-link-padding: .5rem .75rem;
	--pag-lg-link-padding: .8rem 1.5rem;
	--kbd-padding: .2rem .3rem;
	--well-padding: 20px;
	/* Margins */
	--media-margin: 1rem;
	--modal-footer-margin: .25rem;
	--hr-margin: 20px 0;
	/* Border Radius */
	--xl-border-radius: .3rem;
	--normal-border-radius: .25rem;
	--sm-border-radius: .2rem;
	/* Line heights */
	--line-height-0: 0;
	--line-height-1: 1;
	--line-height-1-5: 1.2;
	--line-height-2: 1.25;
	--line-height-3: 1.5;
	--line-height-4: 1.625;
	--line-height-5: 1.75;
	--line-height-6: 2;
	/* Transitions */
	--fast-anim: .3s;
	--instant-anim: .1s;
	/* Box shadows */
	--box-shadow-1: 0px 2px 3px rgba(50, 50, 50, 0.2);
	--box-shadow-2: 0px 3px 4px rgba(40, 40, 40, 0.4);
	--box-shadow: 0 .5em 1em -.125em rgba(10, 10, 10, .1), 0 0 0 1px rgba(10, 10, 10, .02);
	--box-lg-shadow: 0 1em 1em -.125em rgba(12, 12, 12, .1), 0 0 0 1px rgba(12, 12, 12, .02);
	--box-sm-shadow: 0 .4em 1em -.125em rgba(0, 0, 0, .05), 0 0 0 1px rgba(0, 0, 0, .05);
	--well-shadow: inset 0 1px 1px rgba(0, 0, 0, .05);
	--bs-standard: 0px 0px 10px;
	--bs-1: 5px rgba(0, 0, 0, .1);
	--bs-2: 6px rgba(0, 0, 0, .13);
	--bs-3: 7px rgba(0, 0, 0, .15);
	--bs-4: 8px rgba(0, 0, 0, .17);
	--bs-5: 9px rgba(0, 0, 0, .2);
	--bs-6: 10px rgba(0, 0, 0, .23);
	/* Borders */
	--hr-border: 0;
	--hr-border-top: var(--standard-border) #eee;
	--hr-border-bottom: var(--standard-border) #fff;
	--standard-border: 1px solid;
}

body {
	background: var(--bg-color);
	color: var(--bg-text);
	line-height: var(--line-height-3);
	font-family: var(--font-stack);
}

a {
	color: var(--link-color);
	text-decoration: none;
	background: transparent;
}

[hidden] {
	display: none !important;
}

code, kbd {
	font-family: var(--code-font-stack);
}

kbd {
	padding: var(--kbd-padding);
	color: var(--white);
	background: var(--kbd);
	border-radius: var(--sm-padding);
}

hr {
	margin: var(--hr-margin);
	border: var(--hr-border);
	border-top: var(--hr-border-top);
	border-bottom: var(--hr-border-bottom);
}

/* Typography */

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
	font-weight: var(--medium-font-weight);
	line-height: var(--line-height-1-5);
}

h1, .h1 {
	font-size: var(--heading-1);
}

h2, .h2 {
	font-size: var(--heading-2);
}

h3, .h3 {
	font-size: var(--heading-3);
}

h4, .h4 {
	font-size: var(--heading-4);
}

h5, .h5 {
	font-size: var(--heading-5);
}

h6, .h6 {
	font-size: var(--heading-6);
}

.d1 {
	font-size: var(--display-1);
}

.d2 {
	font-size: var(--display-2);
}

.d3 {
	font-size: var(--display-3);
}

.d4 {
	font-size: var(--display-4);
}

.d5 {
	font-size: var(--display-5);
}

.d6 {
	font-size: var(--display-6);
}

.text-light {
	font-weight: var(--regular-font-weight);
}

mark {
	padding: .2em;
	background: var(--mark-color);
}

/* Backgrounds */

.bg-success {
	background: var(--green) !important;
}

.bg-info {
	background: var(--info-blue) !important;
}

.bg-danger {
	background: var(--orange) !important;
}

.bg-error {
	background: var(--red) !important;
}

.bg-normal {
	background: var(--blue) !important;
}

.bg-dark {
	background: var(--black) !important;
}

.bg-secondary {
	background: var(--secondary) !important;
}

.text-normal {
	color: var(--blue) !important;
}

.text-success {
	color: var(--green) !important;
}

.text-error {
	color: var(--red) !important;
}

.text-danger {
	color: var(--orange) !important;
}

.text-dark {
	color: var(--black) !important;
}

.text-info {
	color: var(--info-blue) !important;
}

.text-white {
	color: var(--white) !important;
}

.text-muted {
	color: var(--text-muted) !important;
}

.text-secondary {
	color: var(--secondary) !important;
}

.border {
	border: var(--standard-border) var(--modal-footer) !important;
}

.border-normal {
	border-color: var(--blue) !important;
}

.border-success {
	border-color: var(--green) !important;
}

.border-error {
	border-color: var(--red) !important;
}

.border-danger {
	border-color: var(--orange) !important;
}

.border-info {
	border-color: var(--info-blue) !important;
}

.border-secondary {
	border-color: var(--secondary) !important;
}

/* Layouts */

.flexbox {
	display: flex;
	flex-wrap: wrap;
}

.column {
	display: block;
	flex-basis: 0;
	flex-grow: 1;
	flex-shrink: 1;
	padding: var(--column-padding);
}

.flex-95, .flex-90, .flex-85, .flex-80, .flex-75, .flex-70, .flex-65, .flex-60, .flex-55, .flex-50, .flex-45, .flex-40, .flex-35, .flex-30, .flex-25, .flex-20, .flex-15, .flex-10, .flex-5 {
	flex: none;
}

.flex-100 {
	width: 100%;
}

.flex-95 {
	width: 95%;
}

.flex-90 {
	width: 90%;
}

.flex-85 {
	width: 85%;
}

.flex-80 {
	width: 80%;
}

.flex-75 {
	width: 75%;
}

.flex-70 {
	width: 70%;
}

.flex-65 {
	width: 65%;
}

.flex-60 {
	width: 60%;
}

.flex-55 {
	width: 55%;
}

.flex-50 {
	width: 50%;
}

.flex-45 {
	width: 45%;
}

.flex-40 {
	width: 40%;
}

.flex-35 {
	width: 35%;
}

.flex-30 {
	width: 30%;
}

.flex-25 {
	width: 25%;
}

.flex-20 {
	width: 20%;
}

.flex-15 {
	width: 15%;
}

.flex-10 {
	width: 10%;
}

.flex-5 {
	width: 5%;
}

.singleline {
	flex-wrap: nowrap;
}

.center-flex {
	justify-content: center !important;
}

/* Layouts 2 */

.container {
	margin: 0 auto;
}

.hero {
	padding: var(--hero-padding);
}

.subtitle {
	font-size: var(--heading-5);
	font-weight: var(--regular-font-weight);
	line-height: var(--line-height-2);
}

.title {
	font-size: var(--heading-2);
	font-weight: var(--semibold-font-weight);
}

blockquote, body, dd, dl, dt, fieldset, figure, hr, html, iframe, legend, li, ol, p, pre, textarea, ul {
	margin: 0;
	padding: 0;
}

.consended h1, .consended h2, .consended h3, .consended h4, .consended h5, .consended h6 {
	/* ! Depracated class, favor using strict mode instead */
	margin: 0;
	padding: 0;
}

/* Buttons */

.btn {
	display: inline-block;
	font-weight: var(--regular-font-weight);
	color: var(--button-text);
	text-align: center;
	text-decoration: none;
	vertical-align: middle;
	cursor: pointer;
	user-select: none;
	border: var(--standard-border) transparent;
	padding: var(--button-padding);
	font-size: var(--heading-6);
	border-radius: var(--normal-border-radius);
	transition: var(--fast-anim);
	box-shadow: var(--box-shadow-1);
	background: transparent;
	font-family: inherit;
}

.btn:hover {
	box-shadow: var(--box-shadow-2);
}

.btn-normal {
	background: var(--blue);
}

.btn-normal:hover {
	background: var(--blue-hover);
}

.btn:disabled {
	opacity: .6;
	cursor: not-allowed;
}

.btn-success {
	background: var(--green);
}

.btn-success:hover {
	background: var(--green-hover);
}

.btn-error {
	background: var(--red);
}

.btn-error:hover {
	background: var(--red-hover);
}

.btn-danger {
	color: var(--black);
	background: var(--orange);
}

.btn-danger:hover {
	background: var(--orange-hover);
}

.btn-info {
	background: var(--info-blue);
}

.btn-info:hover {
	background: var(--info-blue-hover);
}

.btn-dark {
	background: var(--black);
}

.btn-dark:hover {
	background: var(--black-hover);
}

.btn-secondary {
	background: var(--secondary);
}

.btn-secondary:hover {
	background: var(--secondary-hover);
}

.btn-normal-outline {
	color: var(--blue);
	border-color: var(--blue);
}

.btn-normal-outline:hover {
	color: var(--white);
	background: var(--blue);
}

.btn-success-outline {
	color: var(--green);
	border-color: var(--green);
}

.btn-success-outline:hover {
	color: var(--white);
	background: var(--green);
}

.btn-error-outline {
	color: var(--red);
	border-color: var(--red);
}

.btn-error-outline:hover {
	color: var(--white);
	background: var(--red);
}

.btn-danger-outline {
	color: var(--orange);
	border-color: var(--orange);
}

.btn-danger-outline:hover {
	color: var(--white);
	background: var(--orange);
}

.btn-info-outline {
	color: var(--info-blue);
	border-color: var(--info-blue);
}

.btn-info-outline:hover {
	color: var(--white);
	background: var(--info-blue);
}

.btn-dark-outline {
	color: var(--black);
	border-color: var(--black);
}

.btn-dark-outline:hover {
	color: var(--white);
	background: var(--black);
}

.btn-secondary-outline {
	border-color: var(--secondary);
}

.btn-secondary-outline:hover {
	background: var(--secondary);
}

.btn-block {
	display: block;
	width: 100%;
}

.btn-lg {
	padding: var(--button-lg-padding);
	font-size: var(--heading-5);
	line-height: var(--line-height-3);
	border-radius: var(--xl-border-radius);
}

.btn-sm {
	padding: var(--button-sm-padding);
	font-size: var(--text-sm);
	line-height: var(--line-height-3);
	border-radius: var(--sm-border-radius);
}

/* Alerts */

.alert {
	padding: var(--alert-padding);
	border-radius: var(--normal-border-radius);
	margin-bottom: var(--mp-spacing);
	color: var(--white);
}

.alert-normal {
	color: var(--blue-alert-text);
	background: var(--blue-light);
}

.alert-normal a {
	color: var(--blue-alert-a);
}

.alert-success {
	background: var(--green-light);
	color: var(--green-alert-text);
}

.alert-success a {
	color: var(--green-alert-a);
}

.alert-error {
	color: var(--red-alert-text);
	background: var(--red-light);
}

.alert-error a {
	color: var(--red-alert-a);
}

.alert-danger {
	color: var(--orange-alert-text);
	background: var(--orange-light);
}

.alert-danger a {
	color: var(--orange-alert-a);
}

.alert-info {
	color: var(--info-blue-alert-text);
	background: var(--info-blue-light);
}

.alert-info a {
	color: var(--info-blue-alert-a);
}

.alert-dark {
	background: var(--black-light);
}

.alert-dark a {
	color: var(--black-alert-a);
}

.alert a {
	font-weight: var(--bold-font-weight);
}

/* Badges */

.badge {
	display: inline-block;
	padding: var(--badge-padding);
	font-size: var(--badge-font-size);
	font-weight: var(--bold-font-weight);
	line-height: var(--line-height-1);
	color: var(--white);
	border-radius: var(--normal-border-radius);
}

.badge-normal {
	background: var(--blue);
}

.badge-success {
	background: var(--green);
}

.badge-error {
	background: var(--red);
}

.badge-danger {
	background: var(--orange);
}

.badge-info {
	background: var(--info-blue);
}

.badge-dark {
	background: var(--black);
}

.badge-pill {
	border-radius: 50rem !important;
}

/* Progressbar */

.progress-bar {
	display: flex;
	flex-direction: column;
	justify-content: center;
	overflow: hidden;
	color: var(--white);
	text-align: center;
	white-space: nowrap;
	background: var(--blue);
	transition: width .6s ease;
}

.progress {
	display: flex;
	height: 1rem;
	overflow: hidden;
	line-height: var(--line-height-0);
	font-size: .75rem;
	background: var(--progress-bg);
	border-radius: var(--normal-border-radius);
	margin-top: var(--mp-spacing);
}

.progress-bar-striped {
	background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
	background-size: 1rem 1rem;
}

/* Spinner */

.spinner {
	display: inline-block;
	width: 2rem;
	height: 2rem;
	vertical-align: text-bottom;
	border: .25em solid currentColor;
	border-right-color: transparent;
	border-radius: 50%;
	animation: spinner .75s linear infinite;
}

@keyframes spinner {
	to {
		transform: rotate(360deg);
	}
}

.sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

/* Box and Wells */

.box {
	border-radius: 5px;
	box-shadow: var(--box-shadow);
	padding: var(--box-padding);
}

.box-sm {
	padding: var(--box-sm-padding);
	box-shadow: var(--box-sm-shadow);
}

.box-lg {
	padding: var(--box-lg-padding);
	box-shadow: var(--box-lg-shadow);
}

.well {
	min-height: 20px;
	padding: var(--well-padding);
	margin-bottom: 20px;
	background: #f5f5f5;
	border: var(--standard-border) #e3e3e3;
	border-radius: var(--normal-border-radius);
	box-shadow: var(--well-shadow);
}

.well-lg {
	padding: 25px;
}

.well-sm {
	padding: 10px;
}

/* Animations */

.anim-top, .anim-bottom, .anim-left, .anim-right {
	position: relative;
}

.anim-spin {
	animation: pzplui-spin var(--animation-speed) linear forwards;
}

@keyframes pzplui-spin {
	from {
		transform: rotate(0deg);
	}
	to {
		transform: rotate(360deg);
	}
}

.anim-fade {
	animation: pzplui-fade var(--animation-speed) linear forwards;
}

@keyframes pzplui-fade {
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}

.anim-fade-out {
	animation: pzplui-fade-out var(--animation-speed) linear forwards;
}

@keyframes pzplui-fade-out {
	from {
		opacity: 1;
	}
	to {
		opacity: 0;
	}
}

.anim-top {
	animation: pzplui-top var(--animation-speed) linear forwards;
}

@keyframes pzplui-top {
	from {
		opacity: 0;
		bottom: var(--animation-transform);
	}
	to {
		opacity: 1;
		bottom: 0;
	}
}

.anim-bottom {
	animation: pzplui-bottom var(--animation-speed) linear forwards;
}

@keyframes pzplui-bottom {
	from {
		opacity: 0;
		top: var(--animation-transform);
	}
	to {
		opacity: 1;
		top: 0;
	}
}

.anim-left {
	animation: pzplui-left var(--animation-speed) linear forwards;
}

@keyframes pzplui-left {
	from {
		opacity: 0;
		right: var(--animation-transform);
	}
	to {
		opacity: 1;
		right: 0;
	}
}

.anim-right {
	animation: pzplui-right var(--animation-speed) linear forwards;
}

@keyframes pzplui-right {
	from {
		opacity: 0;
		left: var(--animation-transform);
	}
	to {
		opacity: 1;
		left: 0;
	}
}

.anim-zoom {
	animation: pzplui-zoom var(--animation-speed) forwards;
}

@keyframes pzplui-zoom {
	from {
		transform: scale(0);
	}
	to {
		transform: scale(1);
	}
}

.anim-grow {
	width: 0%;
	animation: pzplui-grow calc(var(--animation-speed) / 3) linear forwards;
}

@keyframes pzplui-grow {
	from {
		width: 0%;
	}
	to {
		width: 100%;
	}
}

.anim-hover-grow {
	transition: transform var(--fast-anim);
}

.anim-hover-grow:hover {
	transform: scale(1.1);
}

/* Image Utility Classes */

.img-fluid {
	max-width: 100%;
	height: auto;
}

.img-round {
	border-radius: var(--normal-border-radius) !important;
}

.img-thumbnail {
	padding: var(--sm-padding);
	background: #fff;
	border: var(--standard-border) #dee2e6;
	border-radius: var(--normal-border-radius);
	max-width: 100%;
	height: auto;
}

/* Navbars */

.navbar {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-start;
	padding: var(--navbar-padding);
	text-decoration: none;
}

.navbar-brand {
	display: inline-block;
	padding-top: .3rem;
	padding-bottom: .3rem;
	margin-right: var(--mp-spacing);
	font-size: var(--heading-5);
	line-height: inherit;
	white-space: nowrap;
}

.navbar ul {
	list-style: none;
	flex-direction: row;
	display: flex;
}

.navbar ul li {
	display: block;
	padding: .5rem 1rem;
	opacity: .8;
}

.navbar-fixed {
	position: fixed;
	top: 0;
	right: 0;
	left: 0;
	z-index: 999;
}

.nav-pill {
	border-radius: var(--normal-border-radius);
	display: block;
	color: var(--white) !important;
	background: var(--blue);
	padding: var(--navbar-padding);
	text-decoration: none;
}

.not-pill {
	color: var(--blue) !important;
}

/* Float utility classes */

.float-start {
	float: left;
}

.float-end {
	float: right;
}

/* Interaction utility classes */

.pointer-disabled {
	pointer-events: none;
}

.pointer-revert {
	pointer-events: auto;
}

.select-all {
	user-select: all;
}

.select-none {
	user-select: none;
}

/* Padding and margin */

.p0 {
	padding: 0;
}

.p1 {
	padding: calc(var(--mp-spacing) * .25);
}

.p2 {
	padding: calc(var(--mp-spacing) * .5);
}

.p3 {
	padding: var(--mp-spacing);
}

.p4 {
	padding: calc(var(--mp-spacing) * 1.25);
}

.p5 {
	padding: calc(var(--mp-spacing) * 1.5);
}

.p6 {
	padding: calc(var(--mp-spacing) * 1.75);
}

.p7 {
	padding: calc(var(--mp-spacing) * 2);
}

.m0 {
	margin: 0;
}

.m1 {
	margin: calc(var(--mp-spacing) * .25);
}

.m2 {
	margin: calc(var(--mp-spacing) * .5);
}

.m3 {
	margin: var(--mp-spacing);
}

.m4 {
	margin: calc(var(--mp-spacing) * 1.25);
}

.m5 {
	margin: calc(var(--mp-spacing) * 1.5);
}

.m6 {
	margin: calc(var(--mp-spacing) * 1.75);
}

.m7 {
	margin: calc(var(--mp-spacing) * 2);
}

.pl0 {
	padding-left: 0;
}

.pl1 {
	padding-left: calc(var(--mp-spacing) * .25);
}

.pl2 {
	padding-left: calc(var(--mp-spacing) * .5);
}

.pl3 {
	padding-left: var(--mp-spacing);
}

.pl4 {
	padding-left: calc(var(--mp-spacing) * 1.25);
}

.pl5 {
	padding-left: calc(var(--mp-spacing) * 1.5);
}

.pl6 {
	padding-left: calc(var(--mp-spacing) * 1.75);
}

.pl7 {
	padding-left: calc(var(--mp-spacing) * 2);
}

.ml0 {
	margin-left: 0;
}

.ml1 {
	margin-left: calc(var(--mp-spacing) * .25);
}

.ml2 {
	margin-left: calc(var(--mp-spacing) * .5);
}

.ml3 {
	margin-left: var(--mp-spacing);
}

.ml4 {
	margin-left: calc(var(--mp-spacing) * 1.25);
}

.ml5 {
	margin-left: calc(var(--mp-spacing) * 1.5);
}

.ml6 {
	margin-left: calc(var(--mp-spacing) * 1.75);
}

.ml7 {
	margin-left: calc(var(--mp-spacing) * 2);
}

.pr0 {
	padding-right: 0;
}

.pr1 {
	padding-right: calc(var(--mp-spacing) * .25);
}

.pr2 {
	padding-right: calc(var(--mp-spacing) * .5);
}

.pr3 {
	padding-right: var(--mp-spacing);
}

.pr4 {
	padding-right: calc(var(--mp-spacing) * 1.25);
}

.pr5 {
	padding-right: calc(var(--mp-spacing) * 1.5);
}

.pr6 {
	padding-right: calc(var(--mp-spacing) * 1.75);
}

.pr7 {
	padding-right: calc(var(--mp-spacing) * 2);
}

.mr0 {
	margin-right: 0;
}

.mr1 {
	margin-right: calc(var(--mp-spacing) * .25);
}

.mr2 {
	margin-right: calc(var(--mp-spacing) * .5);
}

.mr3 {
	margin-right: var(--mp-spacing);
}

.mr4 {
	margin-right: calc(var(--mp-spacing) * 1.25);
}

.mr5 {
	margin-right: calc(var(--mp-spacing) * 1.5);
}

.mr6 {
	margin-right: calc(var(--mp-spacing) * 1.75);
}

.mr7 {
	margin-right: calc(var(--mp-spacing) * 2);
}

.pt0 {
	padding-top: 0;
}

.pt1 {
	padding-top: calc(var(--mp-spacing) * .25);
}

.pt2 {
	padding-top: calc(var(--mp-spacing) * .5);
}

.pt3 {
	padding-top: var(--mp-spacing);
}

.pt4 {
	padding-top: calc(var(--mp-spacing) * 1.25);
}

.pt5 {
	padding-top: calc(var(--mp-spacing) * 1.5);
}

.pt6 {
	padding-top: calc(var(--mp-spacing) * 1.75);
}

.pt7 {
	padding-top: calc(var(--mp-spacing) * 2);
}

.mt0 {
	margin-top: 0;
}

.mt1 {
	margin-top: calc(var(--mp-spacing) * .25);
}

.mt2 {
	margin-top: calc(var(--mp-spacing) * .5);
}

.mt3 {
	margin-top: var(--mp-spacing);
}

.mt4 {
	margin-top: calc(var(--mp-spacing) * 1.25);
}

.mt5 {
	margin-top: calc(var(--mp-spacing) * 1.5);
}

.mt6 {
	margin-top: calc(var(--mp-spacing) * 1.75);
}

.mt7 {
	margin-top: calc(var(--mp-spacing) * 2);
}

.pb0 {
	padding-bottom: 0;
}

.pb1 {
	padding-bottom: calc(var(--mp-spacing) * .25);
}

.pb2 {
	padding-bottom: calc(var(--mp-spacing) * .5);
}

.pb3 {
	padding-bottom: var(--mp-spacing);
}

.pb4 {
	padding-bottom: calc(var(--mp-spacing) * 1.25);
}

.pb5 {
	padding-bottom: calc(var(--mp-spacing) * 1.5);
}

.pb6 {
	padding-bottom: calc(var(--mp-spacing) * 1.75);
}

.pb7 {
	padding-bottom: calc(var(--mp-spacing) * 2);
}

.mb0 {
	margin-bottom: 0;
}

.mb1 {
	margin-bottom: calc(var(--mp-spacing) * .25);
}

.mb2 {
	margin-bottom: calc(var(--mp-spacing) * .5);
}

.mb3 {
	margin-bottom: var(--mp-spacing);
}

.mb4 {
	margin-bottom: calc(var(--mp-spacing) * 1.25);
}

.mb5 {
	margin-bottom: calc(var(--mp-spacing) * 1.5);
}

.mb6 {
	margin-bottom: calc(var(--mp-spacing) * 1.75);
}

.mb7 {
	margin-bottom: calc(var(--mp-spacing) * 2);
}

/* Cards */

.card {
	border: var(--standard-border) var(--card-border-color);
	border-radius: var(--normal-border-radius);
}

.card-body {
	padding: var(--card-header-padding);
}

.card-header {
	padding: var(--card-header-padding);
	background: var(--card-header-bgcolor);
	border-bottom: var(--standard-border) var(--card-border-color);
}

.card h1, .card h2, .card h3, .card h4, .card h5, .card h6 {
	margin-top: 0;
	margin-bottom: var(--normal-padding);
}

/* Modals */

.modal {
	display: none;
	position: fixed;
	z-index: 100;
	padding-top: 100px;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	overflow: auto;
	background: var(--modal-background);
}

.modal-content {
	background: var(--white);
	border-radius: .3rem;
	margin: auto;
	max-width: 50%;
}

.modal-header {
	padding: var(--modal-header-padding);
	border-bottom: var(--standard-border) var(--modal-footer);
}

.modal-body {
	padding: var(--modal-body-padding);
}

.modal-footer {
	display: flex;
	justify-content: flex-end;
	padding: var(--normal-padding);
	border-top: var(--standard-border) var(--modal-footer);
}

.modal-footer>* {
	margin: var(--modal-footer-margin);
}

/* Pagination */

.pagination {
	display: flex;
	padding-left: 0;
	list-style: none;
}

.pag-link {
	display: block;
	padding: var(--pag-link-padding);
	margin-left: -1px;
	line-height: var(--line-height-2);
	border: var(--standard-border) var(--modal-footer);
}

.pag-lg .pag-link {
	padding: var(--pag-lg-link-padding);
	font-size: 1.3rem;
	line-height: var(--line-height-3);
}

.pag-sm .pag-link {
	padding: .3rem .5rem;
	font-size: .75rem;
}

.pag-item.active .pag-link {
	color: var(--white);
	background: var(--blue);
}

.pag-item:first-child .pag-link {
	border-top-left-radius: var(--normal-border-radius);
	border-bottom-left-radius: var(--normal-border-radius);
}

.pag-item:last-child .pag-link {
	border-top-right-radius: var(--normal-border-radius);
	border-bottom-right-radius: var(--normal-border-radius);
}

/* Overflows */

.overflow-auto {
	overflow: auto !important;
}

.overflow-none {
	overflow: hidden !important;
}

/* Forms */

input, textarea {
	transition: all var(--instant-anim);
	font-family: var(--font-stack);
}

.inputs label {
	display: flex;
	align-items: center;
	padding: .375rem .75rem;
	font-weight: var(--regular-font-weight);
	text-align: center;
	background: var(--form1);
	border: var(--standard-border) var(--form2);
	border-radius: var(--normal-border-radius);
}

.inputs>input, .inputs>.form-select, .inputs>textarea {
	flex: 1 1 auto;
	width: 1%;
}

.inputs input, .inputs textarea {
	padding: .375rem .75rem;
	font-size: var(--heading-6);
	line-height: var(--line-height-3);
	opacity: 0.9;
	border: var(--standard-border) var(--form2);
	border-radius: var(--normal-border-radius);
}

.inputs {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	width: 100%;
}

.inputs> :not(:first-child) {
	margin-left: -1px;
	border-top-left-radius: 0;
	border-bottom-left-radius: 0;
}

input:focus, textarea:focus {
	box-shadow: var(--form-shadow);
}

input[type="color"] {
	background: var(--form1);
	border: var(--standard-border) var(--form2);
	border-radius: var(--normal-border-radius);
	max-width: 2.85rem;
	height: auto;
	cursor: pointer;
	padding: .375rem;
}

input[type="color"]::-moz-color-swatch {
	height: 1.5em;
	border-radius: var(--normal-border-radius);
}

input[type="file"] {
	cursor: pointer;
	width: 100%;
	padding: .375rem .75rem;
	border: var(--standard-border) var(--form2);
	border-radius: var(--normal-border-radius);
}

input[type="file"]::file-selector-button {
	padding: .375rem .75rem;
	margin: -.375rem -.75rem;
	margin-inline-end: .75rem;
	border-style: solid;
	border-width: 0;
	border-inline-end-width: 1px;
}

/* Tables */

table {
	text-align: left;
	border-collapse: collapse;
	width: 100%;
}

table th, table td {
	padding: .7rem;
	border-top: var(--standard-border) var(--modal-footer);
}

table thead {
	border-bottom: 2px solid var(--modal-footer);
	font-weight: 700;
}

.table-dark {
	color: white;
	background: #232527;
}

.table-dark td, .table-dark th, .table-dark thead {
	border-color: #35393d;
}

.table-striped tbody tr:nth-of-type(2n+1) {
	background: rgba(59, 59, 59, 0.089);
}

.table-dark.table-striped tbody tr:nth-of-type(2n+1) {
	background: rgba(235, 235, 235, 0.089);
}

.table-border td, .table-border th {
	border: var(--standard-border) var(--modal-footer);
}

/* Dark Mode */

.dark-mode {
	--bg-color: var(--dark-bg-color);
	--bg-text: var(--dark-bg-text);
	--box-shadow-1: var(--dark-box-shadow-1);
	--box-shadow-2: var(--dark-box-shadow-2);
	--mark-color: var(--dark-mark-color);
	--form1: var(--dark-form1);
	--form2: var(--dark-form2);
	--form-shadow: var(--dark-form-shadow);
	--jumbotron-bg: var(--dark-jumbotron-bg);
}

.dark-mode mark {
	opacity: 0.8;
}

.dark-mode input {
	background: rgba(255, 255, 255, .05);
	color: white;
}

.dark-mode table td, .dark-mode table th, .dark-mode table thead {
	border-color: #47494d;
}

.dark-mode hr, .dark-hr {
	margin-top: 1rem;
	margin-bottom: 1rem;
	border: 0;
	border-top: var(--standard-border) rgba(0, 0, 0, .3);
	border-bottom: none;
}

/* Jumbotron */

.jumbotron {
	padding: 4rem 2rem;
	background: var(--jumbotron-bg);
	border-radius: .3rem;
}

.lead {
	font-size: 1.4rem;
	font-weight: var(--light-font-weight);
}

/* Abbr */

abbr[title] {
	text-decoration: underline dotted;
	cursor: help;
}

/* Text aligns */

.text-left {
	text-align: left;
}

.text-right {
	text-align: right;
}

.text-center {
	text-align: center;
}

/* Accordion */

.accordion[open] summary {
	background: var(--blue-light);
	color: var(--blue-alert-a);
	border-top-left-radius: var(--normal-border-radius);
	border-top-right-radius: var(--normal-border-radius);
}

.accordion:not([open]) summary, .accordion[open] summary, .accordion:not(summary) * {
	padding: 1.3rem;
}

.accordion:not(summary) * {
	border: var(--standard-border) var(--card-border-color);
}

/* Media Object */

.media {
	display: flex;
	align-items: flex-start;
}

.media>img, .media>a {
	margin-right: var(--media-margin);
}

.media .media {
	margin-top: var(--media-margin) !important;
}

/* Blocks */

.block:not(:last-child) {
	margin-bottom: 1.5rem;
}

.block-sm:not(:last-child) {
	margin-bottom: 1rem;
}

.block-lg:not(:last-child) {
	margin-bottom: 2rem;
}

/* Strict Mode */

.pzplui-strict-mode .h1, .pzplui-strict-mode .h2, .pzplui-strict-mode .h3, .pzplui-strict-mode .h4, .pzplui-strict-mode .h5, .pzplui-strict-mode .h6, .pzplui-strict-mode h1, .pzplui-strict-mode h2, .pzplui-strict-mode h3, .pzplui-strict-mode h4, .pzplui-strict-mode h5, .pzplui-strict-mode h6 {
	margin-top: 0;
	margin-bottom: 0.5rem;
}

.pzplui-strict-mode .progress:not(.progress>.progress-bar) {
	border: none;
	border-radius: 9999px;
	display: block;
	height: 1rem;
	overflow: hidden;
	padding: 0;
	width: 100%;
	background: var(--progress-bg) !important;
	appearance: none;
}

/* when will browser vendors finally get together and make a normal pseudo-class for progressbars? */

.pzplui-strict-mode .progress.bg-normal::-moz-progress-bar, .pzplui-strict-mode .progress.bg-normal::-webkit-progress-value {
	background: var(--blue);
}

.pzplui-strict-mode .progress.bg-success::-moz-progress-bar, .pzplui-strict-mode .progress.bg-success::-webkit-progress-value {
	background: var(--green);
}

.pzplui-strict-mode .progress.bg-error::-moz-progress-bar, .pzplui-strict-mode .progress.bg-error::-webkit-progress-value {
	background: var(--red);
}

.pzplui-strict-mode .progress.bg-danger::-moz-progress-bar, .pzplui-strict-mode .progress.bg-danger::-webkit-progress-value {
	background: var(--orange);
}

.pzplui-strict-mode .progress.bg-info::-moz-progress-bar, .pzplui-strict-mode .progress.bg-info::-webkit-progress-value {
	background: var(--info-blue);
}

/* Line Heights */

.line-height-1 {
	line-height: var(--line-height-1);
}

.line-height-2 {
	line-height: var(--line-height-2);
}

.line-height-3 {
	line-height: var(--line-height-3);
}

.line-height-4 {
	line-height: var(--line-height-4);
}

.line-height-5 {
	line-height: var(--line-height-5);
}

.line-height-6 {
	line-height: var(--line-height-6);
}

/* Other utils */

.uppercase {
	text-transform: uppercase;
}

.absolute {
	position: absolute;
}

.fixed {
	position: fixed;
}

.relative {
	position: relative;
}

.sticky {
	position: sticky;
}

.static {
	position: static;
}

.top0 {
	top: 0%;
}

.right0 {
	right: 0%;
}

.left0 {
	left: 0%;
}

.bottom0 {
	bottom: 0%;
}

.top5 {
	top: 5%;
}

.right5 {
	right: 5%;
}

.left5 {
	left: 5%;
}

.bottom5 {
	bottom: 5%;
}

.top10 {
	top: 10%;
}

.right10 {
	right: 10%;
}

.left10 {
	left: 10%;
}

.bottom10 {
	bottom: 10%;
}

.top15 {
	top: 15%;
}

.right15 {
	right: 15%;
}

.left15 {
	left: 15%;
}

.bottom15 {
	bottom: 15%;
}

.top20 {
	top: 20%;
}

.right20 {
	right: 20%;
}

.left20 {
	left: 20%;
}

.bottom20 {
	bottom: 20%;
}

.top25 {
	top: 25%;
}

.right25 {
	right: 25%;
}

.left25 {
	left: 25%;
}

.bottom25 {
	bottom: 25%;
}

.top30 {
	top: 30%;
}

.right30 {
	right: 30%;
}

.left30 {
	left: 30%;
}

.bottom30 {
	bottom: 30%;
}

.top35 {
	top: 35%;
}

.right35 {
	right: 35%;
}

.left35 {
	left: 35%;
}

.bottom35 {
	bottom: 35%;
}

.top40 {
	top: 40%;
}

.right40 {
	right: 40%;
}

.left40 {
	left: 40%;
}

.bottom40 {
	bottom: 40%;
}

.top45 {
	top: 45%;
}

.right45 {
	right: 45%;
}

.left45 {
	left: 45%;
}

.bottom45 {
	bottom: 45%;
}

.top50 {
	top: 50%;
}

.right50 {
	right: 50%;
}

.left50 {
	left: 50%;
}

.bottom50 {
	bottom: 50%;
}

.top55 {
	top: 55%;
}

.right55 {
	right: 55%;
}

.left55 {
	left: 55%;
}

.bottom55 {
	bottom: 55%;
}

.top60 {
	top: 60%;
}

.right60 {
	right: 60%;
}

.left60 {
	left: 60%;
}

.bottom60 {
	bottom: 60%;
}

.top65 {
	top: 65%;
}

.right65 {
	right: 65%;
}

.left65 {
	left: 65%;
}

.bottom65 {
	bottom: 65%;
}

.top70 {
	top: 70%;
}

.right70 {
	right: 70%;
}

.left70 {
	left: 70%;
}

.bottom70 {
	bottom: 70%;
}

.top75 {
	top: 75%;
}

.right75 {
	right: 75%;
}

.left75 {
	left: 75%;
}

.bottom75 {
	bottom: 75%;
}

.top80 {
	top: 80%;
}

.right80 {
	right: 80%;
}

.left80 {
	left: 80%;
}

.bottom80 {
	bottom: 80%;
}

.top85 {
	top: 85%;
}

.right85 {
	right: 85%;
}

.left85 {
	left: 85%;
}

.bottom85 {
	bottom: 85%;
}

.top90 {
	top: 90%;
}

.right90 {
	right: 90%;
}

.left90 {
	left: 90%;
}

.bottom90 {
	bottom: 90%;
}

.top95 {
	top: 95%;
}

.right95 {
	right: 95%;
}

.left95 {
	left: 95%;
}

.bottom95 {
	bottom: 95%;
}

.top100 {
	top: 100%;
}

.right100 {
	right: 100%;
}

.left100 {
	left: 100%;
}

.bottom100 {
	bottom: 100%;
}

.h0 {
	height: 0%;
}

.h5 {
	height: 5%;
}

.h10 {
	height: 10%;
}

.h15 {
	height: 15%;
}

.h20 {
	height: 20%;
}

.h25 {
	height: 25%;
}

.h30 {
	height: 30%;
}

.h35 {
	height: 35%;
}

.h40 {
	height: 40%;
}

.h45 {
	height: 45%;
}

.h50 {
	height: 50%;
}

.h55 {
	height: 55%;
}

.h60 {
	height: 60%;
}

.h65 {
	height: 65%;
}

.h70 {
	height: 70%;
}

.h75 {
	height: 75%;
}

.h80 {
	height: 80%;
}

.h85 {
	height: 85%;
}

.h90 {
	height: 90%;
}

.h95 {
	height: 95%;
}

.h100 {
	height: 100%;
}

.bs0 {
	box-shadow: none;
}

.bs1 {
	box-shadow: var(--bs-standard) var(--bs-1);
}

.bs2 {
	box-shadow: var(--bs-standard) var(--bs-2);
}

.bs3 {
	box-shadow: var(--bs-standard) var(--bs-3);
}

.bs4 {
	box-shadow: var(--bs-standard) var(--bs-4);
}

.bs5 {
	box-shadow: var(--bs-standard) var(--bs-5);
}

.bs6 {
	box-shadow: var(--bs-standard) var(--bs-6);
}

.br0 {
	border-radius: 0rem;
}

.br1 {
	border-radius: calc(var(--normal-border-radius) / 2);
}

.br2 {
	border-radius: var(--normal-border-radius);
}

.br3 {
	border-radius: calc(var(--normal-border-radius) * 2);
}

.br4 {
	border-radius: calc(var(--normal-border-radius) * 3);
}

.br5 {
	border-radius: calc(var(--normal-border-radius) * 4);
}

.br6 {
	border-radius: calc(var(--normal-border-radius) * 5);
}

header details {
    text-decoration: none;
    color: #3a3a3a;
    transition: 0.15s;
}

header details * {
	line-height: 1.5;
}

.dark-mode header details {
    color: #818181;
}

.bgWhite {
    background-color: white;
    display: inline-block;
    padding: 30px;
    border-radius: 5px;
    color: black;
}

main {
	width: 70%;
}