/* Universal Reset (consider using a normalization if needed) */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video, main, progress, meter {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%; /* Ensures scaling is appropriate */
	font: inherit;
	vertical-align: baseline;
}

/* Global body styling */
body {
	-webkit-text-size-adjust: none; /* Prevents font resizing on mobile Safari */
	font-family: Arial, Helvetica, sans-serif;
	font-size: 16px;
	color: #000;
	line-height: 1.5;
	position: relative;
	background-color: #ded8e9;
}

/* Box Model */

*, *:before, *:after {
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

a {
	color: #000;
	text-decoration: none;
}

a:hover {
	text-decoration: none;
	color: #dd1777;
}

/* Define CSS variables for reusability */
:root {
	--font-size-h1: 36px;
	--font-size-h2: 28px;
	--font-size-h3: 22px;
	--line-height-heading: 1.2;

	/* Mobile adjustments */
	--font-size-h1-mobile: 28px;
	--font-size-h2-mobile: 24px;
	--font-size-h3-mobile: 20px;
}

h1:first-child {
	margin-top: 0; /* Remove top margin for the first h1 on the page */
}

/* Remove top margin from the first h1 or h2 in any section */
.file-feed-content > h1:first-child,
.file-feed-content > h2:first-child {
	margin-top: 0;
}

/* Remove top margin from the first h1 or h2 in any feed */
article > h1:first-child,
article > h2:first-child,
article > h3:first-child,
section > h1:first-child,
section > h2:first-child
section > h3:first-child {
	margin-top: 0;
}

/* Remove top margin from the first dt in any feed */
dt > h1:first-child,
dt > h2:first-child {
	margin-top: 0;
}

/* Remove top margin from the first header */
header > h1:first-child,
header > h2:first-child {
	margin-top: 0;
}

/* Apply common heading styles */
h1, h2, h3 {
	line-height: var(--line-height-heading);
	font-weight: bold;
}

/* Individual heading styles */
h1 {
	font-size: var(--font-size-h1);
	margin: 0 0 0px; /* Top margin removed globally */
}

h2 {
	font-size: var(--font-size-h2);
	margin: 15px 0 10px;
}

h3 {
	font-size: var(--font-size-h3);
	margin: 10px 0 10px;
}

/* Mobile adjustments */
@media (max-width: 768px) {
	h1 {
		font-size: var(--font-size-h1-mobile);
		margin: 0 0 10px; /* Top margin still removed */
	}
	h2 {
		font-size: var(--font-size-h2-mobile);
		margin: 10px 0 8px;
	}
	h3 {
		font-size: var(--font-size-h3-mobile);
		margin: 8px 0 8px;
	}
}

/* Further adjustment for smaller screens (e.g., phones) */
@media (max-width: 480px) {
	h1 {
		font-size: 26px;
		margin: 0 0 8px; /* No top margin */
	}
	h2 {
		font-size: 22px;
		margin: 10px 0 6px;
	}
	h3 {
		font-size: 20px;
		margin: 8px 0 6px;
	}
}
h1 img {
	margin-bottom:6px;
	vertical-align: middle;
}

.base-wrapper {
	height: auto !important;
	display: flex;
	justify-content: space-between;
	flex-wrap: nowrap;
	border-top: 2px solid #dd1777;
	border-bottom: 2px solid #dd1777;
	border-radius: .5em;
	background: #fff;
	box-shadow: rgba(0, 0, 0, 0.08) 0px 4px 12px;
	padding: 17px;
	margin-left: auto;
	margin-right: auto;
	margin-top:2em;
	gap: 1em;
	text-align: left;
	max-width:1400px;
}
.base-content {
	height: auto !important;
	float: left;
	align-self: start;
	min-width: 0px;
	width:100%;
}
.base-sidebar {
	height: auto !important;
	flex:0 0 350px;
	float: left;
	max-width:350px;
	width:100%;
	align-self: start;
}
.side-right {
	flex: 0 0 350px;
	align-self: start;
}

hr {
	border: 0;
	border-bottom: solid 2px;
	margin: 3rem 0;
	border-bottom-color: #eeeeee;
}

hr.largehr {
	border: 0;
	border-bottom: solid 2px;
	margin: 2rem 0;
	border-bottom-color: #eeeeee;
}

.subtext {
	font-size: 18px;
}
@media (max-width: 480px) {
	.subtext {
		font-size: 18px;
	}
}

.subtext_nomargin {
	color:#292929;
}
@media (max-width: 480px) {
	.subtext {
		font-size: 18px;
		line-height: 26px;
	}
}
.row-err {
	all: unset;
	font: inherit;
	line-height: normal;
	display: block;
	margin: 1rem 0;
	padding: 0.8rem 1rem;
	color: #eee;
	background-color: #a11;
}

/* Footer */

#footer {
	margin-top: 0;
	margin-left: auto;
	margin-right: auto;
	padding-left:25px;
	padding-right:25px;
	max-width: 1400px;
	width:100%;
	justify-content: space-around;
}

#footer .groups {
	display: flex;
	justify-content: space-between;
}

@media (max-width: 980px) {
	#footer .groups {
		flex-direction: column;
	}
}

#footer a {
	color: #afafaf;
	text-decoration: underline;
}

#footer a:hover {
	color: #fff;
	text-decoration: underline;
}

#logo_footer {
	display: inline-block;
	flex: none;
	align-self: center;
	height: 40px;
	vertical-align: middle;
}

#logo_footer a {
	display: block;
	text-decoration: none;
	vertical-align: middle;
	height: 100%;
}

#logo_footer img {
	display: block;
	height: 100%;
	width: auto;
	border-radius: .5em;
}

#footer .titlegroup {
	font-size: 15px;
	min-width: 0;
	margin-top:20px;
}

#footer .titlegroup > div:first-child {
	color: #fff;
	font-weight: bold;
	margin-bottom: 5px;
}

#footer .titlegroup ul {
	list-style: none;
	margin: 0;
	padding: 0;
	line-height: 2em;
}


/* Site Search
|||||||||||||||||||
|||SIMPLIFY||||||||*/

#site-search {
	flex: auto;
	display: flex;
	justify-content: flex-end;
	min-width: 0;
	color: #444;
	/* overflow: hidden; */
	white-space: nowrap;
	height: 40px;
	position: relative;
}

#site-search .cat,
#site-search input,
#site-search ul.ac,
#site-search button.search {
	border: 1px solid #e0e0e0;
}

#site-search form {
	display: contents;
}

#site-search .cat {
	display: flex;
	align-items: center;
	gap: 0.6em;
	padding: 0 0.5em 0 0.9em;
	border-top-right-radius: 0;
	border-bottom-right-radius: 0;
	border-top-left-radius: .5em;
	border-bottom-left-radius: .5em;
	border-right: none;
	background: #fafafa;
}

#site-search .cat:hover {
	background: #fafafa;
}

#site-search .input-ac-holder {
	flex: auto;
	min-width: 0;
	display: flex;
	position: relative;
}

#site-search input {
	flex: auto;
	min-width: 0;
	border-right: none !important;
	font-family: "Source Sans Pro", Helvetica, sans-serif;
	color: #000;
	cursor: auto;
	font-size: 0.9rem;
	letter-spacing: 0.075em;
	height: 2.5rem;
	line-height: 3rem;
	padding: 0 2rem;
}

button.search i {
	color: #eee;
}

/* REMOVED #site-search */
/* WILL RELOCATE */

ul.ac:empty,
input:not(:focus):not(:hover) + ul.ac:not(:hover) {
	display: none;
}

ul.ac {
	position: absolute;
	padding: 0 0.7em;
	cursor: pointer;
	top: 100%;
	left: 0;
	min-width: 100%;
	margin: 0;
	z-index: 1;
	background: white;
	font-family: sans-serif;
	font-size: inherit;
	border-top: none !important;
}

ul.ac li:hover {
	background: #e8e8e8;
}
/* END REMOVED #site-search */

#site-search button {
	all: unset;
	font: inherit;
	flex: none;
	display: flex;
	justify-content: center;
	align-items: center;
	cursor: pointer;
}

#site-search button.search {
	background: #000;
	width: 2.8em;
	border-radius: 8px;
	border-top-left-radius: 0;
	border-bottom-left-radius: 0;
	border-left: none;
}

#site-search button.search:hover {
	background: #a90052;
	color: white;
}

@media (max-width: 480px) {
	#site-search .input-ac-holder {
		display: none;
	}
	#site-search button.search {
		background: #fff;
		border: none;
	}
	#site-search button.search i {
		color: black;
	}
}
@media (min-width: 481px) {
	#site-search button.search {
		background: #000;
	}
	#site-search button.search i {
		color: #eee !important;
	}
	div#logo {
		display: inline-block !important;
	}
}

/* Containers */

.container {
	margin-left: auto;
	margin-right: auto;
	max-width: 1400px;
	width:100%;
}

/* Footer */

#copyright {
	color: #aaa;
	padding: 0em 0 0 0;
	text-align: center;
}

#footer-wrapper {
	padding: 3em 0 4em 0;
	background-color: #000;
	margin-top: 4em;
	height:300px;
}

/* Logo */

#logo {
	display: inline-block;
	flex: none;
	align-self: center;
	height: 40px;
}

#logo a {
	display: block;
	text-decoration: none;
	vertical-align: middle;
	height: 100%;
}

#logo img {
	display: block;
	height: 100%;
	width: auto;
	border-radius: .5em;
}
.divnote {
	font-size: 16px;
	padding:.5em;
	line-height:1.5em;
	background-color:#fafafa;
	font-style: italic;
	color:#444;
}
@media (max-width: 480px) {
	.divnote {
		line-height:2em;
		margin: 0em;
	}
}

/* Font Sizes */
.f11 {
	font-size: 11px !important;
}
.f12 {
	font-size: 12px !important;
}
.f13 {
	font-size: 13px !important;
}
.f14 {
	font-size: 14px !important;
}
.f15 {
	font-size: 15px !important;
}
.f16 {
	font-size: 16px !important;
}
.f18 {
	font-size: 18px !important;
}
.f20 {
	font-size: 20px !important;
}
.f22 {
	font-size: 22px !important;
}
.f24 {
	font-size: 24px !important;
}
.f26 {
	font-size: 26px !important;
}
.f28 {
	font-size: 28px !important;
}
.f36 {
	font-size: 36px !important;
}
.f42 {
	font-size: 42px !important;
}
.f64 {
	font-size: 64px !important;
}


/* |||TEXT OVERFLOW||| */
/* wrap to next line */
.overflow-wrap {
	overflow-wrap: anywhere;
}
/* show ellipsis when text is hidden */
.overflow-ellipsis {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}


/* |||USED AS SPINNER|||*/

.loader {
	border: 16px solid #f3f3f3;
	border-radius: 50%;
	border-top: 16px solid #dd1777;
	width: 100px;
	height: 100px;
	-webkit-animation: spin 2s linear infinite; /* Safari */
	animation: spin 2s linear infinite;
	grid-column: 1 / -1;
	margin: auto;
}

/* FORMS */

form ::-moz-focus-inner {
	border: 0;
}

form ::placeholder {
	color: #666 !important;
}

form label {
	display: block;
	font-weight: bold;
	margin: 0 0 1em 0;
	font-size: 16px;
	color: #444;
}

form input[type="text"],
form input[type="email"],
form input[type="password"],
form select,
form textarea {
	-webkit-appearance: none;
	display: block;
	width: 100%;
	padding: 10px;
	background-color: #fff;
	border: 2px solid #eeeeee;
	font-family: "Source Sans Pro", Helvetica, sans-serif;
	color: #000;
	cursor: auto;
	font-size: 0.9rem;
	letter-spacing: 0.075em;
	height: 3rem;
	line-height: 3rem;
	padding: 0 2rem;
}

form input[type="text"].large,
form input[type="email"].large,
form input[type="password"].large,
form select.large,
form.large,
.form.large {
	font-size: 0.9rem;
	height: 3.5rem;
	line-height: 3.5rem;
	padding: 0 2.75rem;
}

form input[type="text"]:focus,
form input[type="email"]:focus,
form input[type="password"]:focus,
form select:focus,
form textarea:focus {
	border-color: #dd1777;
}

form select {
	-webkit-appearance: none;
	/*  other styles for aesthetics */
	width: 100%;
	cursor: pointer;
	padding: 0 1rem;
}

.select-w-icon {
	position: relative;
}

.select-w-icon i {
	position: absolute;
	right: 10%;
	top: 30%;
	cursor: pointer;
	color: #dd1777;
	pointer-events: none;
}

/* Flex form used inside with .flex-input-holder and .flex-btn */
.flex-form {
	display: flex;
	flex-wrap: wrap;
	gap: 1em;
}

.flex-input-holder {
	flex: 1 1 auto;
	position: relative;
}

/* used for if there are 2 inputs and button on same line */
.flex-input {
	position: relative;
	flex: 1 1;
}




/* Button */

	input[type="submit"],
	input[type="reset"],
	input[type="button"],
	button,
	.button {
		-moz-appearance: none;
		-webkit-appearance: none;
		-ms-appearance: none;
		appearance: none;
		-moz-transition: background-color 0.2s ease-in-out, box-shadow 0.2s ease-in-out, color 0.2s ease-in-out;
		-webkit-transition: background-color 0.2s ease-in-out, box-shadow 0.2s ease-in-out, color 0.2s ease-in-out;
		-ms-transition: background-color 0.2s ease-in-out, box-shadow 0.2s ease-in-out, color 0.2s ease-in-out;
		transition: background-color 0.2s ease-in-out, box-shadow 0.2s ease-in-out, color 0.2s ease-in-out;
		border: 0;
		border-radius: 0;
		cursor: pointer;
		display: inline-block;
		font-family: "Source Sans Pro", Helvetica, sans-serif;
		font-size: 0.8rem;
		font-weight: 900;
		letter-spacing: 0.075em;
		height: 3rem;
		line-height: 3rem;
		padding: 0 2rem;
		text-align: center;
		text-decoration: none;
		text-transform: uppercase;
		white-space: nowrap;
	}

		input[type="submit"].icon:before,
		input[type="reset"].icon:before,
		input[type="button"].icon:before,
		button.icon:before,
		.button.icon:before {
			margin-right: 0.5rem;
		}

		input[type="submit"].icon.solo,
		input[type="reset"].icon.solo,
		input[type="button"].icon.solo,
		button.icon.solo,
		.button.icon.solo {
			position: relative;
			width: 4rem;
			height: 4rem;
			line-height: 4rem;
			border-radius: 4rem;
			text-indent: 4rem;
			overflow: hidden;
			padding: 0;
			white-space: nowrap;
		}

			input[type="submit"].icon.solo:before,
			input[type="reset"].icon.solo:before,
			input[type="button"].icon.solo:before,
			button.icon.solo:before,
			.button.icon.solo:before {
				position: absolute;
				display: block;
				top: 0;
				left: 0;
				width: inherit;
				height: inherit;
				line-height: inherit;
				font-size: 1.25rem;
				margin-right: 0;
				text-align: center;
				text-indent: 0;
			}

		input[type="submit"].fit,
		input[type="reset"].fit,
		input[type="button"].fit,
		button.fit,
		.button.fit {
			width: 100%;
		}

		input[type="submit"].small,
		input[type="reset"].small,
		input[type="button"].small,
		button.small,
		.button.small {
			font-size: 0.8rem;
			height: 2.5rem;
			line-height: 2.5rem;
			padding: 0 1.5rem;
		}

		input[type="submit"].large,
		input[type="reset"].large,
		input[type="button"].large,
		button.large,
		.button.large {
			font-size: 0.9rem;
			height: 3.5rem;
			line-height: 3.5rem;
			padding: 0 2.75rem;
		}

		input[type="submit"].disabled, input[type="submit"]:disabled,
		input[type="reset"].disabled,
		input[type="reset"]:disabled,
		input[type="button"].disabled,
		input[type="button"]:disabled,
		button.disabled,
		button:disabled,
		.button.disabled,
		.button:disabled {
			pointer-events: none;
			opacity: 0.25;
		}

	input[type="submit"],
	input[type="reset"],
	input[type="button"],
	button,
	.button {
		background-color: transparent;
		box-shadow: inset 0 0 0 2px #ccc;
		color: #212931 !important;
	}

		input[type="submit"]:hover,
		input[type="reset"]:hover,
		input[type="button"]:hover,
		button:hover,
		.button:hover {
			box-shadow: inset 0 0 0 2px #a90052;
			color: #990000 !important;
			background-color: #fbf0f0;
		}

		input[type="submit"].primary,
		input[type="reset"].primary,
		input[type="button"].primary,
		button.primary,
		.button.primary {
			background-color: #dd1777;
			box-shadow: none;
			color: #ffffff !important;
		}

			input[type="submit"].primary:hover,
			input[type="reset"].primary:hover,
			input[type="button"].primary:hover,
			button.primary:hover,
			.button.primary:hover {
				background-color: #a90052;
			}
		.button i {
			margin-right:.5em;
		}


/* Button

.flex-btn {
	flex: 0 0 content;
}

@media screen and (max-width: 980px) {
	.flex-btn {
		flex: auto;
	}
	.flex-input {
		flex: auto;
	}
}

div.button-disabled {
	cursor: default;
	background: #d1d1d1;
}
div.button-disabled:hover {
	cursor: default;
	background: #d1d1d1;
}
a.disabled {
	cursor: default;
}
.blank-button {
	background-color: #fff;
	border: 1px solid #dd1777;
	border-radius: 5px;
	box-sizing: border-box;
	color: #000;
	cursor: pointer;
	display: inline-block;
	font-size: 16px;
	font-weight: bold;
	list-style: none;
	margin: 0;
	outline: none;
	position: relative;
	padding:5px 10px 5px 10px;
	text-align: center;
	text-decoration: none;
	transition: color 100ms;
	vertical-align: baseline;
	user-select: none;
	-webkit-user-select: none;
	touch-action: manipulation;
	width:100%;
	min-height:40px;
}
.blank-button:hover {
	background: #fff7fa;
}
input[type="button"],
input[type="submit"],
input[type="reset"],
button,
.button {
	background-color: #dd1777;
	border-radius: 5px;
	border-style: none;
	box-sizing: border-box;
	color: #FFFFFF;
	cursor: pointer;
	display: inline-block;
	font-size: 18px;
	font-weight: bold;
	list-style: none;
	margin: 0;
	outline: none;
	position: relative;
	padding:5px 10px 5px 10px;
	text-align: center;
	text-decoration: none;
	transition: color 100ms;
	vertical-align: baseline;
	user-select: none;
	-webkit-user-select: none;
	touch-action: manipulation;
	width:100%;
}

input[type="button"].icon:before,
input[type="submit"].icon:before,
input[type="reset"].icon:before,
button.icon:before,
.button.icon:before {
	position: relative;
	margin-right: 0.5em;
	top: 0.05em;
}

input[type="button"]:hover,
input[type="submit"]:hover,
input[type="reset"]:hover,
button:hover,
.button:hover {
	background: #ff5d96;
}

input[type="button"]:active,
input[type="submit"]:active,
input[type="reset"]:active,
button:active,
.button:active {
	background: #20b0e5;
}

input[type="button"]:disabled,
input[type="submit"]:disabled,
input[type="reset"]:disabled,
button:disabled,
.button:disabled {
	background: #ff99ba;
}
*/
/* INPUTS */

input[type="button"].alt,
input[type="submit"].alt,
input[type="reset"].alt,
button.alt,
.button.alt {
	background: #f1f1f1;
	background: rgba(0, 0, 0, 0.05);
	color: #444;
}

input[type="button"].alt:hover,
input[type="submit"].alt:hover,
input[type="reset"].alt:hover,
button.alt:hover,
.button.alt:hover {
	background: #e8e8e8;
	background: rgba(0, 0, 0, 0.085);
}

input[type="button"].alt:active,
input[type="submit"].alt:active,
input[type="reset"].alt:active,
button.alt:active,
.button.alt:active {
	background: #e4e4e4;
	background: rgba(0, 0, 0, 0.15);
}

input[type="button"].big,
input[type="submit"].big,
input[type="reset"].big,
button.big,
.button.big {
	font-size: 38px;
	padding: 0.5em;
}

/* Medium
||||RE-EVALUATE||||*/

@media screen and (max-width: 980px) {

	/* Off-Canvas Navigation */

	#page-wrapper {
		-moz-backface-visibility: hidden;
		-webkit-backface-visibility: hidden;
		-ms-backface-visibility: hidden;
		backface-visibility: hidden;
		-moz-transition: -moz-transform 0.5s ease;
		-webkit-transition: -webkit-transform 0.5s ease;
		-ms-transition: -ms-transform 0.5s ease;
		transition: transform 0.5s ease;
		padding-bottom: 1px;
	}
}

/* HIDE CSS */

.hide-el {
	display: none;
}

.hide1440 {

}
@media (max-width: 1440px) {
	.hide1440 {
		display: none !important;
	}
}

.hide1280 {

}
@media (max-width: 1280px) {
	.hide1280 {
		display: none !important;
	}
}

.hide1200 {

}
@media (max-width: 1200px) {
	.hide1200 {
		display: none !important;
	}
}

.hide980 {

}
@media (max-width: 980px) {
	.hide980 {
		display: none !important;
	}
}

.hide780 {

}
@media (max-width: 780px) {
	.hide780 {
		display: none !important;
	}
}

.hide580 {

}
@media (max-width: 580px) {
	.hide580 {
		display: none !important;
	}
}

.hide480 {

}
@media (max-width: 480px) {
	.hide480 {
		display: none !important;
	}
}

.hide380 {

}
@media (max-width: 380px) {
	.hide380 {
		display: none !important;
	}
}
/*||||IF CSS IS REQUIRED, THEN CONSIDER DEPRECIATED, TO BE PHASED OUT||||*/

b, strong {
	font-weight: bold;
}

i, em {
	font-style: italic;
}

/*||||FIND ALTERNATE METHOD, OR REMOVE BUTTON||||*/

button.reqp {
	background-color: #fff;
	color:#000;
	font-size:15px;
	text-align: right;
}
button.reqp:hover {
	background-color: #fff;
	color:#dd1777;
	font-size:15px;
	text-align: right;
}

/*||||CAN FIND USE IN REDISTRIBUTABLES||||*/

.linkbox {
	font-size: 18px;
	padding:15px;
	background-color:#fff;
	color:#444;
	border:2px solid #eee;
	margin-bottom:1em;
}
.inlinkbox {
	margin-bottom:.5em;
}

/*||||SIDEBAR LINKS|||| */

.sb-links {
	font-size: 14px;
	text-transform: uppercase;
	line-height: 2em;
}
.sb-links:hover {
	background-color: #fff;
}

/*||||LISTS||||*/

ol, ul {
	list-style: none;
}

ol.decimal {
	list-style: none;           /* Remove default list styling */
	counter-reset: list-counter;
	padding-left: 2em;          /* Add padding to provide space for numbers */
	margin-top: 1em;
}
ol.decimal > li {
	counter-increment: list-counter;
	position: relative;
	margin-bottom: 1em;         /* Adjust margin for spacing between items */
	padding-left: 2em;          /* Create space for the numbering */
}
ol.decimal > li::before {
	content: counter(list-counter) ". ";
	position: absolute;
	left: 0;                    /* Position the number correctly */
	top: 0;                     /* Align the number with the top of the text */
	font-weight: bold;
}

ul.decimal {
	list-style: none;           /* Remove default list styling */
	counter-reset: list-counter;
	padding-left: 2em;          /* Add padding to provide space for numbers */
	margin-top: 1em;
}
ul.decimal > li {
	counter-increment: list-counter;
	position: relative;
	margin-bottom: 1em;         /* Adjust margin for spacing between items */
	padding-left: 1em;          /* Create space for the numbering */
}
ul.decimal > li::before {
	position: absolute;
	left: 0;                    /* Position the number correctly */
	top: 0;                     /* Align the number with the top of the text */
	font-weight: bold;
}

ol.disc {
	list-style-type: disc;           /* Remove default list styling */
	padding-left: 2em;          /* Add padding to provide space */
	margin-top: 1em;
}
ol.disc > li {
	position: relative;
	margin-bottom: 1em;         /* Adjust margin for spacing between items */
	padding-left: .5em;          /* Create space */
}
ol.disc > li::before {
	position: absolute;
	left: 0;                    /* Position correctly */
	top: 0;                     /* Align the number with the top of the text */
}

ul.disc {
	list-style-type: disc;           /* Remove default list styling */
	padding-left: 2em;          /* Add padding to provide space */
	margin-top: 1em;
}
ul.disc > li {
	position: relative;
	margin-bottom: 1em;         /* Adjust margin for spacing between items */
	padding-left: .5em;          /* Create space */
}
ul.disc > li::before {
	position: absolute;
	left: 0;                    /* Position correctly */
	top: 0;                     /* Align the number with the top of the text */
}

/*||||flex float left split col||||*/

.flex-left-right {
	display: flex;
	flex-wrap: nowrap;
}
.flex-balance {
	flex: 1 0%;
}
.flex-separator {
	flex: none;
	width: var(--sep-size);
}
@media (max-width: 1200px) {
	.flex-wrap768 {
		flex-wrap: wrap;
	}
	.flex-expand768 {
		flex: 1 100%;
	}
	.flex-expand768.flex-separator {
		height: var(--sep-size);
	}
}
.flex-lr-left {
	float: left;
}

.flex-left-right > div {
	flex-wrap: nowrap;
}
/* Flex used on preview page */
.flex-left-right-preview {
	display: flex;
	flex-wrap: nowrap;
}
.flex-lr-left-preview {
	float: left;
	width: 50%;
}
@media (max-width: 768px) {
	.flex-left-right-preview {
		display: block;
	}
	.flex-lr-left-preview {
		float: none;
		width: 100%;
	}
	.col-2 {
		margin-top: 3em;
	}
}
/* Flex used on details page */
.flex-holder {
	display: flex;
}
.row {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	width: 100%;
	flex-grow: 1;
}
.column {
	flex: 1;
}
.column-left {
	min-width: 100px;
	text-align: end;
	margin-right: 1.5em;
}
@media screen and (max-width: 768px) {
	.flex-holder {
		display: block;
	}
}

/*||||DOWNLOAD PAGE - INSTALL||||*/

.flex-install {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	text-align: center;
	gap:2em;
}

.flex-install > div {
	font-size: 16px;
	width: 275px;
}

/*||||SHOULD WORK BY DEFAULT, REMOVE||||*/

#registerForm input,
#registerForm .captcha {
	margin-bottom: 1em;
}
#loginForm input,
#loginForm .captcha {
	margin-bottom: 1em;
}

/*||||HOME INDEX COL ROW||||*/

.hcolumn {
	float: left;
	width: 33.33%;
	padding: 1em;
}

.hrow {
	margin-top: 2em;
	margin-left: auto;
	margin-right: auto;
	max-width: 1400px;
	align-content: center;
}

.hrow:after {
	content: "";
	display: table;
	clear: both;
}


/*||||THUMBS UP||||*/

.fa-thumbs-up {
	color:#dd1777;
	font-size:16px;
}

/*||||COMMON MODULE BOXES||||*/

.tile-box {
	padding: 1em;
	border: 1px solid #ddd;
	min-height: 250px;
	vertical-align: middle;
	border-radius: 0.5em;
}


.infobox {
	box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 6px -1px, rgba(0, 0, 0, 0.06) 0px 2px 4px -1px;
	background-color: #fafafa;
	border-radius: 1em;
	padding: 1em 1em;
	font-style: italic;
	line-height: 1.5em;
	color: #444;
	margin-top: 5px;
}

/*||||TABS||||*/

.tabset > input[type="radio"] {
	position: absolute;
	left: -200vw;
}

.tabset .tab-panel {
	display: none;
}

.tabset > input:first-child:checked ~ .tab-panels > .tab-panel:first-child,
.tabset > input:nth-child(3):checked ~ .tab-panels > .tab-panel:nth-child(2),
.tabset > input:nth-child(5):checked ~ .tab-panels > .tab-panel:nth-child(3),
.tabset > input:nth-child(7):checked ~ .tab-panels > .tab-panel:nth-child(4),
.tabset > input:nth-child(9):checked ~ .tab-panels > .tab-panel:nth-child(5),
.tabset > input:nth-child(11):checked ~ .tab-panels > .tab-panel:nth-child(6) {
	display: block;
}

.tabset > label {
	position: relative;
	display: inline-block;
	font-weight: bold;
	padding: 0.5em 1.1em;
}

.tabset > label::after {
	content: "";
	position: absolute;
}

input:focus-visible + label {
	outline: 2px solid rgba(0,102,204,1);
	border-radius: 3px;
}

.tabset > label:hover {
	cursor: pointer;
	color: #dd1777;
}

.tabset > input:focus + label,
.tabset > input:checked + label {
	border-left:1px solid #eee;
}

.tabset > label:hover::after,
.tabset > input:focus + label::after,
.tabset > input:checked + label::after {
	background: #dd1777;
}

.tabset > input:checked + label {
	border-color: #eee;
	border-bottom: 2px solid #dd1777;
}

.tab-panel {
	border-top: 1px solid #ccc;
}
.tabset {
}

/* DROPDOWN MENU */

.menu-dropdown > button {
	all: unset;
	padding: 0 !important;
	cursor: pointer;
	width: 30px;
	margin-left: 20px;
	text-align: center;
}
.menu-dropdown > button i {
	font-size: 26px;
	vertical-align: middle;
}

.menu-dropdown ul.dropdown {
	all: unset;
	font: inherit;
	position: absolute;
	top: 100%;
	min-width: 12em;
	display: none;
	flex-direction: column;
	list-style: none;
	margin: 0;
	padding: 0;
	background: #fff;
	border: 1px solid #e0e0e0;
	box-shadow: 0 1px 8px rgb(0 0 0 / 10%);
}

.menu-dropdown ul.dropdown-left {
	left: 0;
}

.menu-dropdown ul.dropdown-right {
	right: 0;
}

/*
@media (hover: hover) {
	.menu-dropdown:not(:hover) ul.dropdown {
		display: none;
	}
}

@media (hover: none) {
	.menu-dropdown:not(.menu-active) ul.dropdown {
		display: none;
	}
}
*/

.menu-dropdown ul.dropdown li {
	all: unset;
	font: inherit;
	flex: 1 !important;
}

.menu-dropdown ul.dropdown li a {
	all: unset;
	font: inherit;
	display: block !important;
	cursor: pointer;
	padding: 0 10px;
	line-height: 2.5;
}

.menu-dropdown ul.dropdown li a:hover {
	background: #fafafa;
	border-bottom: none !important;
}

/* Upload Page */

.flex-upload-content {
	flex: 1 1 auto;
}

@media screen and (max-width: 980px) {
	.flex-upload-content {
		flex: 1 1 100%;
	}
}

.chars-remaining {
	font-style: italic;
}

.collapsible {
	background-color: #eee;
	color: #444;
	cursor: pointer;
	padding: 10px;
	width: 100%;
	border: none;
	text-align: left;
	outline: none;
	font-size: 15px;
	margin-top: 1em;
}
.active, .collapsible:hover {
	background-color: #ebebeb;
}
.content {
	padding: 1em;
	background-color: #fff;
	overflow: hidden;
	transition: max-height 0.2s ease-out;
}
.collapsible:after {
	content: '\02795'; /* Unicode character for "plus" sign (+) */
	color: #fff;
	float: right;
	margin-left: 5px;
}
.active:after {
	content: "\2796"; /* Unicode character for "minus" sign (-) */
}

/* filerow.php */

#filerow-content {
	display: inline-block;
	padding: 10px;
	gap: 10px;
	border-top: 2px solid #f2f2f2;
	line-height: 1.3em;
	width: 100%;
}
#col-one{
	display: inline-block;
	width: 40%;
	padding-right: 10px;
}
#col-two-three{
	display: inline-block;
	width: 60%;
	float: right;
	top: 0;
}
#col-two{
	width: 60%;
	display: inline-block;
	color: #666
}
#col-three{
	width: 40%;
	float: right;
	display: flex;
	justify-content: end;
}
.button-filerow {
	background-color: #dd1777;
	border-radius: 5px;
	border-style: none;
	box-sizing: border-box;
	color: #FFFFFF;
	cursor: pointer;
	display: inline-block;
	font-size: 16px;
	font-weight: bold;
	list-style: none;
	margin: 0;
	outline: none;
	position: relative;
	padding:5px 10px 5px 10px;
	text-align: center;
	text-decoration: none;
	transition: color 100ms;
	vertical-align: baseline;
	user-select: none;
	-webkit-user-select: none;
	touch-action: manipulation;
	width:fit-content;
	height:32px;
}
.button-filerow:hover {
	color:#fff;
	background-color: #446cff;
}
.new-tag {
	padding-left:5px;
	padding-right:5px;
	background-color:#008800;
	color:#fff;
	font-weight:bold;
}
.mb5 {
	margin-bottom: 5px;
}
@media (max-width: 580px) {
	#col-one{
		display: block;
		width: 100%;
		margin: 0;
	}
	#col-two-three{
		display: block;
		width: 100%;
		margin: 0;
	}
	.flex-test {
		display: inline-block;
	}
	.filerow-title {
		margin-bottom: 0 !important;
	}
}

/* account form response errors */

.submit-err {
	padding:10px;
	background-color:#f5ffc0;
	font-size:1em;
	font-weight:600;
	margin: 1em;
}

.submit-err-fail {
	padding:10px;
	background-color:#ffd3d3;
	font-size:1em;
	font-weight:600;
	margin: 1em;
}


/* Item Box */

.itembox {
	padding: 2em;
	margin-top: 2em;
	background-color: #fafafa;
}

.itembox h3 {
	margin-top: 2em;
	}

.side-right {
	/* Add any styles for the sidebar container */
}

.trending-header, .articles-header {
	margin-bottom: 0.5em;
	padding-left: 5px;
}

.link-rank {
	color: #666;
	margin-right: 5px;
	text-align: center;
	min-width: 16px;
	padding: 3px 10px;
	background-color: #f2f2f2;
	border-radius: 5px;
}

.ad-container {
	min-height: 250px;
}

.sb-links a {
	display: inline-block;      /* Enables proper sizing and truncation */
	max-width: 80%;            /* Set a maximum width based on the container */
	white-space: nowrap;        /* Prevents the text from wrapping to a new line */
	overflow: hidden;           /* Ensures overflow text is hidden */
	text-overflow: ellipsis;    /* Adds the ellipsis to indicate truncated content */
	vertical-align: middle;     /* Ensures proper alignment with other elements */
}

/* TOOLS CSS to retain styling */
.tools-container {
	display: grid;
	margin-top: 1em;
	padding: 0.5em;
	grid-template-columns: repeat(auto-fill, minmax(275px, auto));
	gap: 1em;
	justify-content: center;
}
.tools-tile-box {
	border: 2px solid #eee;
	padding: 1em;
	background: #fff;
	text-align: left;
	transition: box-shadow 0.3s;
	min-height: 250px;
}
.tools-tile-box:hover {
	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}
.tools-icon-wrapper {
	margin-bottom: 2em;
	margin-top: 1em;
	text-align: center;
}
.tools-tile-title {
	font-size: 18px;
	margin-bottom: 5px;
	font-weight: bold;
}
.tools-tile-footer {
	color: #666;
	margin-top: 20px;
	border-top: 1px solid #eee;
	padding-top: 10px;
	font-style: italic;
	font-size:14px;
}
.tools-icon-large {
	font-size: 48px !important;
}
.tools-upload-icon {
	margin-right: 0.5em;
	color: #dd1777;
}
.tools-description {
	color: #555;
	text-align: left;
	font-size: 16px;
}
/* CSS for command prompt styling */
.cmd-container {
	border: 1px solid #ccc;
	margin-top: 2em;
	background-color: #222;
	color: #eee;
	padding: 1em;
	font-size: 16px;
	font-family: monospace;
}
.cmd-line {
	margin-bottom: 10px;
}
.cmd-path {
	color: #aaa;
}
.cmd-image {
	max-width: 600px;
	border-radius: 1em;
}

/* 404 ERROR */
.not-found-section {
	text-align: center;
	margin-top: 2em;
	margin-bottom: 3em;
}

.logo-image {
	max-width: 134px;
}

.repository-tag {
	color: #666;
	font-weight: bold;
	font-size: 13px;
}

/* Figcaption Style */
figcaption {
	color: #666;
	font-style: italic;
	font-size: 14px;
}

/* Margins */
.margin-top-xlarge {
	margin-top: 3em;
}
.margin-top-large {
	margin-top: 2em;
}
.margin-top-small {
	margin-top: 1em;
}
.margin-top-xsmall {
	margin-top: 5px;
}
.no-top-margin {
	margin-top: 0;
}
.margin-top-none {
	margin-top: 0 !important;
}
.margin-top-auto {
	margin-top: auto !important;
}

.margin-bottom-xlarge {
	margin-bottom: 3em;
}
.margin-bottom-large {
	margin-bottom: 2em;
}
.margin-bottom-small {
	margin-bottom: 1em;
}
.margin-bottom-xsmall {
	margin-bottom: 5px;
}
.no-bottom-margin {
	margin-bottom: 0;
}
.margin-bottom-none {
	margin-bottom: 0 !important;
}
.margin-bottom-auto {
	margin-bottom: auto !important;
}

.margin-left-large {
	margin-left: 2em;
}
.margin-left-small {
	margin-left: 1em;
}
.margin-left-xsmall {
	margin-left: .5em;
}
.margin-left-auto {
	margin-left: auto !important;
}

.margin-right-large {
	margin-right: 2em;
}
.margin-right-small {
	margin-right: 1em;
}
.margin-right-xsmall {
	margin-right: .5em;
}
.margin-right-auto {
	margin-right: auto !important;
}


/* General Styling */

.bold {
	font-weight: bold;
}
.italic {
	font-style: italic;
}
.dottedunder{
	border-bottom: 1px dotted #727272;
}
.ucase{
	text-transform: uppercase;
}

/* Colors */

.ctheme {
	color: #dd1777;
}


/* Images */
img {
	max-width: 500px;
	width:100%;
	vertical-align: center;
}

h1 img {
	border-radius: .5em;
	margin-right: 10px !important;
}

h1 i {
	border-radius: .5em;
	margin-right: 10px !important;
}

/* GetFile Disabled Link */
.disabled-link {
	pointer-events: none;
	color: #ccc;
}
/* Header */
.top_icon {
	margin-right:10px;
}

/* MD content */
.md-content h3 {
	margin: 1em 0 0;
	font-size: 18px;
}

.md-content ul,
.md-content ol {
	list-style: unset;
	margin-top:1em;
	padding-left: 2em;
}

blockquote {
	border-left: solid 4px;
	font-style: italic;
	margin: 0 0 2rem 0;
	padding: 0.5rem 0 0.5rem 2rem;
}

code {
	border: solid 2px;
	font-family: "Courier New", monospace;
	font-size: 0.9rem;
	margin: 0 0.25rem;
	padding: 0.25rem 0.65rem;
}
/* Box */

	.box {
		border: solid 2px;
		margin-bottom: 2rem;
		padding: 1.5rem;
	}

		.box > :last-child,
		.box > :last-child > :last-child,
		.box > :last-child > :last-child > :last-child {
			margin-bottom: 0;
		}

		.box.alt {
			border: 0;
			border-radius: 0;
			padding: 0;
		}

	.box {
		border-color: #eeeeee;
	}

	.box h3 {
		margin-top: 2em;
		}

/* Icon */

.icon {
	text-decoration: none;
	border-bottom: none;
	position: relative;
}

	.icon:before {
		-moz-osx-font-smoothing: grayscale;
		-webkit-font-smoothing: antialiased;
		display: inline-block;
		font-style: normal;
		font-variant: normal;
		text-rendering: auto;
		line-height: 1;
		text-transform: none !important;
		font-family: 'Font Awesome 6 Free';
		font-weight: 400;
	}

	.icon > .label {
		display: none;
	}

	.icon:before {
		line-height: inherit;
	}

	.icon.solid:before {
		font-weight: 900;
	}

	.icon.regular:before {
		font-weight: normal;
	}

	.icon.brands:before {
		font-family: 'Font Awesome 6 Brands';
	}

	.logo-icon {
		width:34px;
		height:34px;
}

/* FILE FEED */

.file-feed {
	background-color: #fff;
	padding: 1em;
	margin-top:1em;
	margin-bottom:1em;
	border: 2px solid #eee;
}

.file-feed-content {
	overflow: hidden;
}
.request-feed-thumbnail {
	width: 34px;
	height: 34px;
	float: left;
	margin-right:1em;
	background-size: cover;
	border-radius: 5px;
}

.file-feed-thumbnail {
	width: 34px;
	height: 34px;
	float: left;
	margin-right:1em;
	background-image: url(/img/dllme_50_square_icon.png);
	background-size: cover;
	border-radius: 5px;
}

.file-feed-thumbnail-na {
	width: 34px;
	height: 34px;
	float: left;
	margin-right:1em;
	background-image: url(/img/dllme_50_square_icon.png);
	background-size: cover;
	border-radius: 5px;
	-webkit-filter: grayscale(100%);
	filter: grayscale(100%);
	opacity: .2;
}

.file-feed a:hover {
	color: #dd1777;
}
.file-feed:hover {
	transition: box-shadow 0.3s;
	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}
.file-feed p {
	color: #444;
}
.file-feed-attribution {
	font-size: 14px;
	color:#666;
	display: inline-block;
	float: right;
	text-align: right;
}

.file-feed-attribution-left {
	font-size: 14px;
	color:#666;
	display: inline-block;
	float: left;
	text-align: left;
}

/* Actions */

ul.actions {
	display: -moz-flex;
	display: -webkit-flex;
	display: -ms-flex;
	display: flex;
	cursor: default;
	list-style: none;
	margin-left: -1rem;
	padding-left: 0;
}

ul.actions li {
	padding: 0 0 0 1rem;
	vertical-align: middle;
}

ul.actions.special {
	-moz-justify-content: center;
	-webkit-justify-content: center;
	-ms-justify-content: center;
	justify-content: center;
	width: 100%;
	margin-left: 0;
}

ul.actions.special li:first-child {
	padding-left: 0;
}

ul.actions.stacked {
	-moz-flex-direction: column;
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
	margin-left: 0;
}

ul.actions.stacked li {
	padding: 1.3rem 0 0 0;
}

ul.actions.stacked li:first-child {
	padding-top: 0;
}

ul.actions.fit {
	width: calc(100% + 1rem);
}

ul.actions.fit li {
	-moz-flex-grow: 1;
	-webkit-flex-grow: 1;
	-ms-flex-grow: 1;
	flex-grow: 1;
	-moz-flex-shrink: 1;
	-webkit-flex-shrink: 1;
	-ms-flex-shrink: 1;
	flex-shrink: 1;
	width: 100%;
}

ul.actions.fit li > * {
	width: 100%;
}

ul.actions.fit.stacked {
	width: 100%;
}

@media screen and (max-width: 480px) {

	ul.actions:not(.fixed) {
		-moz-flex-direction: column;
		-webkit-flex-direction: column;
		-ms-flex-direction: column;
		flex-direction: column;
		margin-left: 0;
		width: 100% !important;
	}

	ul.actions:not(.fixed) li {
		-moz-flex-grow: 1;
		-webkit-flex-grow: 1;
		-ms-flex-grow: 1;
		flex-grow: 1;
		-moz-flex-shrink: 1;
		-webkit-flex-shrink: 1;
		-ms-flex-shrink: 1;
		flex-shrink: 1;
		padding: 1rem 0 0 0;
		text-align: center;
		width: 100%;
	}

	ul.actions:not(.fixed) li > * {
		width: 100%;
	}

	ul.actions:not(.fixed) li:first-child {
		padding-top: 0;
	}

	ul.actions:not(.fixed) li input[type="submit"],
	ul.actions:not(.fixed) li input[type="reset"],
	ul.actions:not(.fixed) li input[type="button"],
	ul.actions:not(.fixed) li button,
	ul.actions:not(.fixed) li .button {
		width: 100%;
	}

	ul.actions:not(.fixed) li input[type="submit"].icon:before,
	ul.actions:not(.fixed) li input[type="reset"].icon:before,
	ul.actions:not(.fixed) li input[type="button"].icon:before,
	ul.actions:not(.fixed) li button.icon:before,
	ul.actions:not(.fixed) li .button.icon:before {
		margin-left: -0.5rem;
	}
}
