/* FreeTP light redesign layer. Loaded after the default DLE styles. */
@font-face {
	font-family: 'Mirza';
	src: url('../fonts/mirza-latin-600.woff2') format('woff2');
	font-style: normal;
	font-weight: 600;
	font-display: swap;
}

:root {
	--ftp-bg: #f7f1df;
	--ftp-surface: #fff9ec;
	--ftp-surface-2: #fff1d4;
	--ftp-surface-3: #f7e5b8;
	--ftp-text: #172017;
	--ftp-muted: #667265;
	--ftp-line: #ead9ad;
	--ftp-line-strong: #d9bf82;
	--ftp-green: #43a51f;
	--ftp-green-dark: #2e7d17;
	--ftp-green-soft: #e9f7e4;
	--ftp-orange: #ff8a1e;
	--ftp-red: #ee3342;
	--ftp-blue: #2f82e7;
	--ftp-notice-bg: #fff1ea;
	--ftp-notice-border: #f2b3a4;
	--ftp-notice-text: #6b3428;
	--ftp-notice-title: #4a1f17;
	--ftp-push-success: #2b6e22;
	--ftp-push-success-soft: #d9e9d3;
	--ftp-push-warning: #8b561c;
	--ftp-push-warning-soft: #f0e3c5;
	--ftp-push-error: #a33b2d;
	--ftp-push-error-soft: #fae5dd;
	--ftp-push-info: #315e87;
	--ftp-push-info-soft: #dce6ee;
	--ftp-dialog-action: #3f8626;
	--ftp-radius: 12px;
	--ftp-shadow: 0 18px 48px rgba(35, 55, 30, .12);
	--ftp-shadow-soft: 0 8px 22px rgba(35, 55, 30, .09);
}

.ftp-modern {
	--ftp-scroll-top-size: 48px;
	--ftp-right-gutter: max(calc(var(--ftp-scroll-top-size) + 16px), calc((100% - 1480px) / 2));
	--ftp-left-gutter-min: 24px;
	min-width: 280px;
	background: #f4ecd8 linear-gradient(180deg, #fffaf0 0, var(--ftp-bg) 340px, #f4ecd8 100%) no-repeat;
	background-attachment: scroll;
	background-repeat: no-repeat;
	background-size: auto;
	color: var(--ftp-text);
	font-family: "Manrope", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
	font-size: 14px;
	line-height: 1.58;
	letter-spacing: 0;
}

.ftp-modern a {
	color: var(--ftp-green-dark);
	text-decoration: none;
}

.ftp-modern a:hover {
	color: var(--ftp-green);
	text-decoration: none;
}

.ftp-modern .page {
	width: 100%;
	margin: 0;
	background: transparent;
	box-shadow: none;
}

.ftp-modern .wrp {
	width: 100%;
	max-width: none;
}

.ftp-modern #header {
	position: sticky;
	top: -14px;
	z-index: 5000;
	overflow: visible;
	isolation: isolate;
	height: auto;
	margin: 0;
	padding: 10px 0 12px;
	border-top: 4px solid transparent;
	overflow-anchor: none;
	backdrop-filter: none;
	transition: background .18s ease, box-shadow .18s ease;
}

.ftp-modern #header:before {
	display: none;
}

.ftp-modern.ftp-header-scrolled #header {
	border-top-color: transparent;
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
}

.ftp-modern .header {
	position: relative;
	z-index: 1001;
	height: auto;
	background: transparent;
	box-shadow: none;
	backdrop-filter: none;
}

.ftp-modern .header .midside,
.ftp-modern .midside {
	float: none;
	width: auto;
	box-sizing: border-box;
}

.ftp-modern .header .midside {
	height: auto;
	padding: 0;
}

.ftp-modern #header_menu {
	position: relative;
	z-index: 1002;
	overflow: visible;
	isolation: isolate;
	box-sizing: border-box;
	display: grid;
	grid-template-columns: auto max-content minmax(180px, 320px) minmax(0, 1fr) 48px 58px max-content;
	grid-template-areas: "logo menu search spacer theme discord login";
	gap: 10px;
	align-items: center;
	width: min(1480px, calc(100% - 48px));
	min-height: 70px;
	height: auto;
	margin: 0 auto;
	padding: 9px 16px;
	border: 1px solid rgba(91,155,68,.3);
	border-radius: 26px;
	-webkit-backdrop-filter: blur(20px) saturate(1.16);
}

.ftp-modern #header_menu:before {
	position: absolute;
	inset: 1px;
	z-index: -1;
	border-radius: 25px;
	background:
		linear-gradient(110deg, rgba(255,255,255,.52), rgba(255,255,255,.14) 32%, rgba(255,255,255,0) 58%),
		linear-gradient(270deg, rgba(67,165,31,.16), rgba(67,165,31,.045) 44%, rgba(67,165,31,0) 68%);
	content: "";
	pointer-events: none;
}

.ftp-modern #header_menu:after {
	display: none;
}

.ftp-modern.ftp-header-scrolled #header_menu {
	border-top-left-radius: 0 !important;
	border-top-right-radius: 0 !important;
}

.ftp-modern.ftp-header-scrolled #header_menu:before {
	border-top-left-radius: 0 !important;
	border-top-right-radius: 0 !important;
}

.ftp-modern #header_menu > * {
	min-width: 0;
}

.ftp-modern .logotype {
	grid-area: logo;
	display: flex;
	align-items: center;
	gap: 6px;
	width: clamp(170px, 12vw, 210px);
	max-width: 100%;
	height: 62px;
	color: #f4f8ef;
}

.ftp-modern .logo_icon {
	display: block;
	flex: none;
	width: clamp(38px, 4.5vw, 56px);
	aspect-ratio: 1;
}

.ftp-modern .ftp-logo-wordmark {
	font-family: 'Mirza', Georgia, serif;
	font-size: clamp(15.6px, 1.68vw, 22.8px);
	font-weight: 600;
	line-height: 1;
	white-space: nowrap;
	text-transform: uppercase;
}

html.ftp-theme-dark .ftp-modern .ftp-logo-wordmark {
	color: #fff;
}

@media (max-width: 360px) {
	.ftp-modern .ftp-logo-wordmark {
		display: none;
	}
}

.ftp-modern .logo_icon img,
.ftp-modern .page_form__logo img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.ftp-modern .page_form__logo img {
	height: auto;
}

.ftp-modern .header-discord {
	grid-area: discord;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 58px;
	height: 58px;
	border: 1px solid var(--ftp-line);
	border-radius: 20px;
	box-shadow: 0 10px 28px rgba(25, 45, 20, .08);
	animation: ftp-discord-shake 6s ease-in-out infinite;
}

.ftp-modern .header-discord:hover {
	border-color: #9fd18c;
	background: var(--ftp-green-soft);
}

.ftp-modern .header-discord img {
	width: 30px;
	height: 30px;
	object-fit: contain;
}

.ftp-modern .ftp-theme-toggle {
	grid-area: theme;
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	padding: 0;
	border: 1px solid var(--ftp-line);
	border-radius: 18px;
	color: var(--ftp-green-dark);
	box-shadow: 0 10px 28px rgba(25, 45, 20, .08);
	cursor: pointer;
	transition: border-color .18s ease, background .18s ease, color .18s ease, box-shadow .18s ease;
}

.ftp-modern .ftp-theme-toggle:hover {
	border-color: #9fd18c;
	background: var(--ftp-green-soft);
	box-shadow: 0 0 0 4px rgba(67,165,31,.1);
}

.ftp-modern .ftp-theme-toggle__icon,
.ftp-modern .ftp-theme-toggle__icon:before,
.ftp-modern .ftp-theme-toggle__icon:after {
	display: block;
	box-sizing: border-box;
}

.ftp-modern .ftp-theme-toggle__icon {
	position: relative;
	width: 24px;
	height: 24px;
	border-radius: 0;
	background: currentColor;
	box-shadow: none;
	transition: transform .18s ease;
	-webkit-mask: url("../images/new/icons/moon-stars.svg") center / contain no-repeat;
	mask: url("../images/new/icons/moon-stars.svg") center / contain no-repeat;
}

.ftp-modern .ftp-theme-toggle__icon:before,
.ftp-modern .ftp-theme-toggle__icon:after {
	display: none;
	content: none;
}

.ftp-modern .ftp-theme-toggle[aria-pressed="true"] .ftp-theme-toggle__icon {
	width: 24px;
	height: 24px;
	-webkit-mask-image: url("../images/new/icons/sun.svg");
	mask-image: url("../images/new/icons/sun.svg");
}

.ftp-modern .ftp-theme-toggle:hover .ftp-theme-toggle__icon {
	transform: rotate(-8deg) scale(1.04);
}

@keyframes ftp-discord-shake {
	0%, 88%, 100% { transform: translateX(0); }
	90% { transform: translateX(-3px) rotate(-4deg); }
	92% { transform: translateX(3px) rotate(4deg); }
	94% { transform: translateX(-2px) rotate(-3deg); }
	96% { transform: translateX(2px) rotate(3deg); }
}

.ftp-modern #top_menu {
	grid-area: menu;
	display: flex;
	align-items: center;
	gap: 2px;
	min-width: 0;
	margin: 0;
	text-align: left;
	white-space: nowrap;
}

.ftp-modern #top_menu > a,
.ftp-modern #top_menu > .top-menu-dd > .top-menu-dd__summary {
	display: inline-flex;
	align-items: center;
	min-height: 38px;
	padding: 0 12px;
	border-radius: 999px;
	color: #344133;
	font-size: 13px;
	font-weight: 800;
	opacity: 1;
	white-space: nowrap;
}

.ftp-modern #top_menu > a:hover,
.ftp-modern #top_menu > a.active,
.ftp-modern #top_menu > .top-menu-dd[open] > .top-menu-dd__summary,
.ftp-modern #top_menu > .top-menu-dd > .top-menu-dd__summary:hover {
	color: #fff;
}

.ftp-modern #top_menu > a:before,
.ftp-modern #top_menu > a:after,
.ftp-modern #top_menu > .top-menu-dd > .top-menu-dd__summary:before,
.ftp-modern #top_menu > .top-menu-dd > .top-menu-dd__summary:after {
	display: none;
}

.ftp-modern .top-menu-dd {
	position: relative;
	display: inline-flex;
	align-items: center;
	margin: 0;
	padding: 0;
}

.ftp-modern .top-menu-dd__summary {
	list-style: none;
	cursor: pointer;
	user-select: none;
}

.ftp-modern .top-menu-dd__summary::-webkit-details-marker {
	display: none;
}

.ftp-modern .top-menu-dd__summary:after {
	display: none;
}

.ftp-modern .top-menu-dd__menu {
	position: absolute;
	top: calc(100% + 10px);
	left: 0;
	z-index: 7200;
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	grid-auto-flow: row;
	gap: 2px;
	box-sizing: border-box;
	min-width: 255px;
	max-width: min(320px, calc(100vw - 24px));
	max-height: min(72vh, 620px);
	padding: 8px;
	border: 1px solid var(--ftp-line);
	border-radius: 16px;
	color: var(--ftp-text);
	backdrop-filter: blur(16px);
	-webkit-backdrop-filter: blur(16px);
	overflow-y: auto;
	overflow-x: hidden;
	opacity: 0;
	visibility: hidden;
	transform: translateY(-4px);
	transition: opacity .16s ease, transform .16s ease, visibility .16s ease;
}

.ftp-modern .top-menu-dd[open] .top-menu-dd__menu {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

.ftp-modern .top-menu-dd__menu a {
	display: flex;
	min-width: 0;
	white-space: normal;
	overflow-wrap: anywhere;
	align-items: center;
	min-height: 38px;
	padding: 0 11px;
	border-radius: 10px;
	color: #344133;
	font-size: 13px;
	font-weight: 800;
	line-height: 1.25;
	text-decoration: none;
}

.ftp-modern .top-menu-dd__label {
	display: block;
	margin: 8px 0 3px;
	padding: 0 11px;
	color: #4aa628;
	font-size: 11px;
	font-weight: 900;
	line-height: 1.2;
	text-transform: uppercase;
}

.ftp-modern #q_search {
	grid-area: search;
	float: none;
	width: 100%;
	margin: 0;
	padding: 0;
}

@media (min-width: 981px) {
	.ftp-modern #q_search {
		width: 100%;
		transform: none;
	}
}

.ftp-modern .q_search {
	margin: 0;
}

.ftp-modern .q_search > input {
	height: 44px;
	padding-left: 16px;
	padding-right: 54px;
	border: 1px solid var(--ftp-line);
	border-radius: 22px;
	box-shadow: none;
}

.ftp-modern .q_search > input:focus {
	border-color: #99cb86;
	background: #fff;
	box-shadow: 0 0 0 4px rgba(67,165,31,.12);
}

.ftp-modern .q_search > input::placeholder {
	color: #899584;
}

.ftp-modern .q_search > .btn {
	top: 4px;
	right: 4px;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: var(--ftp-green);
}

.ftp-modern .q_search .icon-search {
	fill: #fff;
}

.ftp-modern .q_search .q_search_adv {
	display: none;
}

.ftp-modern #login_pane {
	grid-area: login;
	justify-self: end;
	position: relative;
	z-index: 5100;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	float: none;
	margin: 0;
	padding: 0;
	line-height: 1;
	list-style: none;
}

.ftp-modern #login_pane > li {
	display: flex;
	align-items: center;
	margin: 0;
	padding: 0;
	line-height: 1;
	list-style: none;
}

.ftp-modern .profile-trigger {
	display: grid;
	gap: 8px;
	align-items: center;
	box-sizing: border-box;
	height: 58px;
	padding: 6px 9px 6px 6px;
	border: 1px solid var(--ftp-line);
	border-radius: 999px;
	color: var(--ftp-text);
	box-shadow: 0 10px 28px rgba(25, 45, 20, .08);
}

.ftp-modern .profile-trigger:hover {
	border-color: #9fd18c;
	background: #fff;
	color: var(--ftp-text);
}

.ftp-modern .profile-trigger__avatar {
	grid-row: auto;
	display: block;
	box-sizing: border-box;
	width: 44px;
	height: 44px;
	min-width: 0;
	border: 2px solid #fff;
	border-radius: 50%;
	background-color: #f1f7ee;
	background-position: center;
	background-size: cover;
	box-shadow: 0 8px 20px rgba(20, 34, 18, .18);
}

.ftp-modern .profile-trigger__name {
	display: none;
	min-width: 0;
	overflow: hidden;
	color: #111b11;
	font-size: 14px;
	font-weight: 900;
	line-height: 1.15;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.ftp-modern .profile-trigger__stats {
	display: flex;
	justify-content: center;
	min-width: 0;
	width: 100%;
	gap: 0;
	align-items: center;
	margin-top: 0;
}

.ftp-modern .profile-trigger__stat {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	min-height: 24px;
	border-radius: 999px;
	color: var(--ftp-green-dark);
	font-size: 13px;
	font-weight: 900;
	line-height: 1;
	white-space: nowrap;
}

.ftp-modern .profile-trigger__stat img {
	display: block;
	width: 15px;
	height: 15px;
	object-fit: contain;
}

.ftp-modern .profile-trigger__stat b {
	display: inline-block;
}

.ftp-modern .DLEPush {
	z-index: 21000;
	top: 96px;
	right: 20px;
	max-width: calc(100vw - 32px);
}

/* FIX-046: the native DLE notification keeps its lifecycle and markup. */
.ftp-modern .DLEPush-notification.wrapper {
	--ftp-push-accent: var(--ftp-push-info);
	--ftp-push-soft: var(--ftp-push-info-soft);
	box-sizing: border-box;
	grid-template-columns: 36px minmax(0, 1fr);
	align-items: start;
	column-gap: 12px;
	width: min(400px, calc(100vw - 32px));
	min-width: 0;
	max-width: 100%;
	padding: 16px 40px 16px 14px;
	border: 1px solid var(--ftp-line);
	border-left: 3px solid var(--ftp-push-accent);
	border-radius: 14px;
	background: var(--ftp-surface);
	color: var(--ftp-text);
	font-family: inherit;
	box-shadow: var(--ftp-shadow);
}
.ftp-modern .DLEPush-notification.push-success {--ftp-push-accent: var(--ftp-push-success);--ftp-push-soft: var(--ftp-push-success-soft);}
.ftp-modern .DLEPush-notification.push-warning {--ftp-push-accent: var(--ftp-push-warning);--ftp-push-soft: var(--ftp-push-warning-soft);}
.ftp-modern .DLEPush-notification.push-error {--ftp-push-accent: var(--ftp-push-error);--ftp-push-soft: var(--ftp-push-error-soft);}
.ftp-modern .DLEPush-notification.wrapper .DLEPush-icon {
	box-sizing: border-box;
	width: 36px;
	height: 36px;
	border-radius: 10px;
	background: var(--ftp-push-soft);
	color: var(--ftp-push-accent);
}
.ftp-modern .DLEPush-notification .DLEPush-icon svg {width:24px;height:24px;scale:1;}
.ftp-modern .DLEPush-notification .DLEPush-header {
	min-width: 0;
	margin: 0 0 4px;
	padding: 0;
	color: inherit;
	font-size: 14px;
	font-weight: 800;
	line-height: 1.5;
	overflow-wrap: anywhere;
}
.ftp-modern .DLEPush-notification .DLEPush-header:empty {display:none;}
.ftp-modern .DLEPush-notification .DLEPush-header:empty + .DLEPush-message {grid-row:1 / span 2;}
.ftp-modern .DLEPush-notification .DLEPush-message {
	align-self: center;
	min-width: 0;
	margin: 0;
	padding: 0;
	background: transparent;
	color: inherit;
	font-size: 13px;
	line-height: 1.55;
	white-space: normal;
	overflow-wrap: anywhere;
}
.ftp-modern .DLEPush-message :is(b,strong) {display:inline;color:inherit;}
.ftp-modern .DLEPush-message a {color:var(--ftp-green-dark);text-decoration:underline;text-underline-offset:2px;}
.ftp-modern .DLEPush-message a:hover {color:var(--ftp-green-dark);}
.ftp-modern .DLEPush-notification .DLEPush-close {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	top: 6px;
	right: 8px;
	width: 28px;
	height: 28px;
	padding: 0;
	border: 0;
	border-radius: 7px;
	background: transparent;
	color: var(--ftp-muted);
	font: inherit;
	font-size: 22px;
	line-height: 1;
	opacity: 1;
}
.ftp-modern .DLEPush-notification .DLEPush-close:hover {background:var(--ftp-surface-2);color:var(--ftp-text);}
.ftp-modern .DLEPush :is(a,button):focus-visible {outline:2px solid var(--ftp-green);outline-offset:2px;}

.ftp-modern .ui-front,
.ftp-modern .ui-dialog {
	z-index: 12000 !important;
}

.ftp-modern .tox-tinymce-aux,
.ftp-modern .tox-dialog-wrap,
.ftp-modern .tox-menu,
.ftp-modern .tox-collection,
.ftp-modern .tox-pop,
.ftp-modern .tox-pop__dialog,
.ftp-modern .emoji_box {
	z-index: 16000 !important;
}

.ftp-modern .ui-widget-overlay {
	z-index: 11000 !important;
}

.ftp-modern .ui-dialog {
	max-width: calc(100vw - 24px);
	max-height: calc(100dvh - 112px);
}

.ftp-modern .ui-dialog .ui-dialog-content {
	max-height: calc(100dvh - 190px);
}

.ftp-modern .ui-dialog:not(.ftp-profile-dialog) {
	box-sizing: border-box;
	overflow: hidden;
	border: 1px solid var(--ftp-line);
	border-radius: 18px;
	box-shadow: var(--ftp-shadow);
	font-family: inherit;
}

.ftp-modern .ui-dialog:not(.ftp-profile-dialog) .ui-dialog-titlebar {
	box-sizing: border-box;
	min-height: 48px;
	padding: 13px 52px 13px 16px;
	border: 0;
	background:
		linear-gradient(115deg, rgba(67,165,31,.92), rgba(47,130,231,.58)),
		var(--ftp-green) !important;
	color: #fff;
}

.ftp-modern .ui-dialog:not(.ftp-profile-dialog) .ui-dialog-title {
	color: #fff;
	font-size: 14px;
	font-weight: 900;
	text-shadow: none;
}

.ftp-modern .ui-dialog:not(.ftp-profile-dialog) .ui-dialog-titlebar-close {
	top: 50%;
	right: 14px;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: 28px !important;
	height: 28px !important;
	margin: -14px 0 0 !important;
	padding: 0 !important;
	border: 1px solid rgba(255,255,255,.16) !important;
	border-radius: 9px;
	background: rgba(14,26,18,.38) !important;
	box-shadow: none !important;
	color: #fff;
	overflow: hidden;
}

.ftp-modern .ui-dialog:not(.ftp-profile-dialog) .ui-dialog-titlebar-close .ui-icon,
.ftp-modern .ui-dialog:not(.ftp-profile-dialog) .ui-dialog-titlebar-close .ui-button-text {
	display: none !important;
}

.ftp-modern .ui-dialog:not(.ftp-profile-dialog) .ui-dialog-titlebar-close:before,
.ftp-modern .ui-dialog:not(.ftp-profile-dialog) .ui-dialog-titlebar-close:after {
	position: absolute;
	width: 14px;
	height: 2px;
	border-radius: 1px;
	margin: 0;
	background: currentColor;
	content: "";
	opacity: .88;
}

.ftp-modern .ui-dialog:not(.ftp-profile-dialog) .ui-dialog-titlebar-close:before {
	transform: rotate(45deg);
}

.ftp-modern .ui-dialog:not(.ftp-profile-dialog) .ui-dialog-titlebar-close:after {
	transform: rotate(-45deg);
}

.ftp-modern .ui-dialog:not(.ftp-profile-dialog) .ui-dialog-titlebar-close:hover {
	background: rgba(14,26,18,.58) !important;
}

/* FIX-046: common dialog controls; specialized profile tools keep their style. */
.ftp-modern .ui-dialog:not(.ftp-profile-dialog) .ui-dialog-content {line-height:1.58;overflow-wrap:anywhere;}
.ftp-modern .ui-dialog:not(.ftp-profile-dialog) .ui-dialog-buttonpane {margin:0;padding:12px 16px;border-top:1px solid var(--ftp-line);}
.ftp-modern .ui-dialog:not(.ftp-profile-dialog) .ui-dialog-buttonset {display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;max-width:100%;}
.ftp-modern .ui-dialog:not(.ftp-profile-dialog) .ui-dialog-buttonpane .ui-button {
	box-sizing:border-box;min-height:38px;max-width:100%;margin:0;padding:9px 16px;
	border:1px solid var(--ftp-line-strong)!important;border-radius:999px;
	background:var(--ftp-surface-2)!important;color:var(--ftp-text)!important;
	font-family:inherit;font-size:13px;font-weight:800;line-height:1.4;
	white-space:normal;text-shadow:none;box-shadow:none;
}
.ftp-modern .ui-dialog:not(.ftp-profile-dialog) .ui-dialog-buttonpane .ui-button:hover {border-color:var(--ftp-green)!important;}
.ftp-modern .ui-dialog:not(.ftp-profile-dialog) .ui-dialog-buttonset > .ui-button:last-child {border-color:var(--ftp-dialog-action)!important;background:var(--ftp-dialog-action)!important;color:#fff!important;}
.ftp-modern .ui-dialog:not(.ftp-profile-dialog) .ui-button:focus-visible {outline:2px solid var(--ftp-green);outline-offset:3px;}
.ftp-modern .ui-dialog:not(.ftp-profile-dialog) .ui-button:disabled {opacity:.55;cursor:default;}
.ftp-modern .ui-dialog:not(.ftp-profile-dialog) input:not([type="checkbox"]):not([type="radio"]),
.ftp-modern .ui-dialog:not(.ftp-profile-dialog) textarea,
.ftp-modern .ui-dialog:not(.ftp-profile-dialog) select {box-sizing:border-box;max-width:100%;border-color:var(--ftp-line-strong)!important;background:var(--ftp-field,var(--ftp-surface-2))!important;color:var(--ftp-text)!important;}

.ftp-modern .ui-dialog.ftp-profile-dialog {
	overflow: hidden;
	width: min(560px, calc(100vw - 28px)) !important;
	border: 1px solid #dce8d6;
	border-radius: 18px;
	box-shadow: 0 24px 70px rgba(20, 34, 18, .2);
}

.ftp-modern .ui-dialog.ftp-profile-dialog .ui-dialog-titlebar {
	padding: 13px 16px;
	border: 0;
	background:
		linear-gradient(115deg, rgba(67,165,31,.9), rgba(47,130,231,.72)),
		var(--ftp-green) !important;
	color: #fff;
}

.ftp-modern .ui-dialog.ftp-profile-dialog.ui-draggable .ui-dialog-titlebar {
	cursor: move;
}

.ftp-modern .ui-dialog.ftp-profile-dialog.is-admin .ui-dialog-titlebar {
	background: linear-gradient(115deg, #b94040, #ff8a1e) !important;
}

.ftp-modern .ui-dialog.ftp-profile-dialog.is-uploader .ui-dialog-titlebar {
	background: linear-gradient(115deg, #6e48c9, #c050d6) !important;
}

.ftp-modern .ui-dialog.ftp-profile-dialog.is-user .ui-dialog-titlebar {
	background: linear-gradient(115deg, #2e7d17, #2f82e7) !important;
}

.ftp-modern .ui-dialog.ftp-profile-dialog .ui-dialog-title {
	color: #fff;
	font-size: 14px;
	font-weight: 900;
	text-shadow: none;
}

.ftp-modern .ui-dialog.ftp-profile-dialog .ui-dialog-titlebar-close {
	top: 50%;
	right: 14px;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: 28px !important;
	height: 28px !important;
	margin: -14px 0 0 !important;
	padding: 0 !important;
	border: 1px solid rgba(255,255,255,.16) !important;
	border-radius: 9px;
	background: rgba(14,26,18,.38) !important;
	box-shadow: none !important;
	color: #fff;
	overflow: hidden;
}

.ftp-modern .ui-dialog.ftp-profile-dialog .ui-dialog-titlebar-close .ui-icon,
.ftp-modern .ui-dialog.ftp-profile-dialog .ui-dialog-titlebar-close .ui-button-text {
	display: none;
}

.ftp-modern .ui-dialog.ftp-profile-dialog .ui-dialog-titlebar-close:before,
.ftp-modern .ui-dialog.ftp-profile-dialog .ui-dialog-titlebar-close:after {
	position: absolute;
	width: 14px;
	height: 2px;
	border-radius: 1px;
	margin: 0;
	background: currentColor;
	content: "";
	opacity: .86;
}

.ftp-modern .ui-dialog.ftp-profile-dialog .ui-dialog-titlebar-close:before {
	transform: rotate(45deg);
}

.ftp-modern .ui-dialog.ftp-profile-dialog .ui-dialog-titlebar-close:after {
	transform: rotate(-45deg);
}

.ftp-modern .ui-dialog.ftp-profile-dialog .ui-dialog-titlebar-close:hover {
	background: rgba(14,26,18,.58) !important;
}

.ftp-modern .ui-dialog.ftp-profile-dialog .ui-dialog-titlebar-close:hover:before,
.ftp-modern .ui-dialog.ftp-profile-dialog .ui-dialog-titlebar-close:hover:after {
	opacity: 1;
}

.ftp-modern .ui-dialog.ftp-profile-dialog .ui-dialog-content {
	padding: 0;
	border: 0;
	overflow: visible;
}

.ftp-modern .ftp-profile-popup,
.ftp-modern .userinfo.ftp-profile-popup {
	display: block;
	margin: 0 !important;
	padding: 0 !important;
	color: var(--ftp-text);
}

.ftp-modern .ftp-profile-popup__hero {
	display: grid;
	grid-template-columns: 104px minmax(0, 1fr);
	gap: 16px;
	align-items: center;
	padding: 18px;
	background:
		radial-gradient(circle at 16% 10%, rgba(255,255,255,.8), rgba(255,255,255,0) 34%),
		linear-gradient(135deg, rgba(67,165,31,.13), rgba(47,130,231,.08));
}

.ftp-modern .ui-dialog.ftp-profile-dialog.is-admin .ftp-profile-popup__hero {
	background:
		radial-gradient(circle at 16% 10%, rgba(255,255,255,.78), rgba(255,255,255,0) 34%),
		linear-gradient(135deg, rgba(238,51,66,.16), rgba(255,138,30,.12));
}

.ftp-modern .ui-dialog.ftp-profile-dialog.is-uploader .ftp-profile-popup__hero {
	background:
		radial-gradient(circle at 16% 10%, rgba(255,255,255,.78), rgba(255,255,255,0) 34%),
		linear-gradient(135deg, rgba(110,72,201,.18), rgba(192,80,214,.12));
}

.ftp-modern .ui-dialog.ftp-profile-dialog.is-user .ftp-profile-popup__hero {
	background:
		radial-gradient(circle at 16% 10%, rgba(255,255,255,.78), rgba(255,255,255,0) 34%),
		linear-gradient(135deg, rgba(67,165,31,.14), rgba(47,130,231,.1));
}

.ftp-modern .ftp-profile-popup .avatar {
	position: static !important;
	float: none !important;
	width: 104px;
	height: 104px;
	margin: 0 !important;
}

.ftp-modern .ftp-profile-popup .avatar .cover {
	display: block;
	width: 104px;
	height: 104px;
	border: 4px solid #fff;
	border-radius: 26px;
	background-position: center;
	background-size: cover;
	box-shadow: 0 16px 34px rgba(20,34,18,.18);
	text-indent: -9999px;
	overflow: hidden;
}

.ftp-modern .ftp-profile-popup__main {
	min-width: 0;
}

.ftp-modern .ftp-profile-popup__status b {
	display: inline-flex;
	align-items: center;
	min-height: 24px;
	padding: 0 10px;
	border-radius: 999px;
	background: rgba(67,165,31,.12);
	color: var(--ftp-green-dark);
	font-size: 12px;
	font-weight: 900;
}

.ftp-modern .ftp-profile-popup__group {
	margin-top: 8px;
	color: #172017;
	font-size: 15px;
	font-weight: 800;
}

.ftp-modern .ftp-profile-popup__group a,
.ftp-modern .ftp-profile-popup__group span,
.ftp-modern .ftp-profile-popup__group b {
	font-weight: 900;
}

.ftp-modern .ftp-profile-popup__last {
	margin-top: 7px;
	color: var(--ftp-muted);
	font-size: 13px;
}

.ftp-modern .ftp-profile-popup__last b {
	color: #263425;
	font-weight: 900;
}

.ftp-modern .ftp-profile-popup__meta {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
	padding: 14px 18px 18px;
}

.ftp-modern .ftp-profile-popup__meta > div {
	min-width: 0;
	padding: 11px;
	border: 1px solid var(--ftp-line);
	border-radius: 14px;
}

.ftp-modern .ftp-profile-popup__meta span,
.ftp-modern .ftp-profile-popup__meta b,
.ftp-modern .ftp-profile-popup__meta small {
	display: block;
}

.ftp-modern .ftp-profile-popup__meta span {
	color: var(--ftp-muted);
	font-size: 11px;
	font-weight: 800;
}

.ftp-modern .ftp-profile-popup__meta b {
	margin-top: 3px;
	color: #111b11;
	font-size: 18px;
	font-weight: 900;
}

.ftp-modern .ftp-profile-popup__meta small {
	margin-top: 3px;
	color: var(--ftp-green-dark);
	font-size: 11px;
	line-height: 1.25;
	overflow-wrap: anywhere;
}

.ftp-modern .ftp-profile-popup__links {
	display: flex;
	align-items: center;
	gap: 7px;
	flex-wrap: wrap;
}

.ftp-modern .ftp-profile-popup__links a {
	display: inline-flex;
	align-items: center;
	color: var(--ftp-green-dark);
	font-weight: 800;
}

.ftp-modern .ftp-profile-popup__rss-link {
	position: relative;
	justify-content: center;
	width: 22px;
	height: 22px;
	border: 1px solid var(--ftp-line);
	border-radius: 7px;
	background: var(--ftp-green-soft);
	font-size: 0;
}

.ftp-modern .ftp-profile-popup__rss-link:before {
	position: relative;
	display: block;
	width: 11px;
	height: 11px;
	border-top: 2px solid currentColor;
	border-right: 2px solid currentColor;
	border-radius: 0 9px 0 0;
	content: "";
}

.ftp-modern .ftp-profile-popup__rss-link:after {
	position: absolute;
	left: 6px;
	bottom: 6px;
	width: 4px;
	height: 4px;
	border-radius: 50%;
	background: currentColor;
	content: "";
}

.ftp-modern .ui-dialog.ftp-profile-dialog .ui-dialog-buttonpane {
	margin: 0;
	padding: 0 18px 18px;
	border: 0;
	background: #fff;
}

.ftp-modern .ui-dialog.ftp-profile-dialog .ui-dialog-buttonset {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
	float: none;
	width: 100%;
}

.ftp-modern .ui-dialog.ftp-profile-dialog .ui-dialog-buttonpane .ui-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	width: 100%;
	min-height: 42px;
	margin: 0;
	padding: 0 12px;
	border: 1px solid #cfe4c7;
	border-radius: 12px;
	box-shadow: none;
	font-size: 12px;
	font-weight: 900;
	text-shadow: none;
}

.ftp-modern .ui-dialog.ftp-profile-dialog .ui-dialog-buttonpane .ui-button:hover {
	border-color: #b8dea9;
	background: #dff2d8;
	color: var(--ftp-green-dark);
}

.ftp-modern .ui-dialog.ftp-profile-dialog .ui-dialog-buttonpane .ui-button:before {
	display: inline-block;
	width: 17px;
	height: 17px;
	background: currentColor;
	content: "";
	flex: 0 0 auto;
}

.ftp-modern .ui-dialog.ftp-profile-dialog .ftp-profile-action--complaint {
	border-color: #f2c9c9;
	background: #fff4f4;
	color: #b94343;
}

.ftp-modern .ui-dialog.ftp-profile-dialog .ftp-profile-action--complaint:hover {
	border-color: #ebb2b2;
	background: #ffecec;
	color: #a93434;
}

.ftp-modern .ui-dialog.ftp-profile-dialog .ftp-profile-action--profile:before {
	-webkit-mask: url("../images/new/icons/user.svg") center / contain no-repeat;
	mask: url("../images/new/icons/user.svg") center / contain no-repeat;
}

.ftp-modern .ui-dialog.ftp-profile-dialog .ftp-profile-action--pm:before {
	-webkit-mask: url("../images/new/icons/envelope-simple.svg") center / contain no-repeat;
	mask: url("../images/new/icons/envelope-simple.svg") center / contain no-repeat;
}

.ftp-modern .ui-dialog.ftp-profile-dialog .ftp-profile-action--complaint:before {
	-webkit-mask: url("../images/new/icons/seal-warning.svg") center / contain no-repeat;
	mask: url("../images/new/icons/seal-warning.svg") center / contain no-repeat;
}

.ftp-modern #login_pane > li > .btn-border {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	height: 40px;
	line-height: 40px;
	padding: 0 13px;
	border: 1px solid var(--ftp-line-strong);
	border-radius: 999px;
	background: #fff;
	color: var(--ftp-text);
	box-shadow: var(--ftp-shadow-soft);
}

.ftp-modern #login_pane > li > .btn-border:hover {
	border-color: #9fd18c;
	box-shadow: 0 0 0 4px rgba(67,165,31,.1);
}

.ftp-modern #login_pane > li > .btn-border .over {
	max-width: 118px;
	margin: 0;
	color: var(--ftp-text);
	font-weight: 900;
}

.ftp-modern #login_pane > li > .btn-border > .pm_num,
.ftp-modern .pm_num {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 20px;
	height: 20px;
	margin: 0;
	padding: 0 6px;
	border-radius: 999px;
	background: var(--ftp-green-soft);
	color: var(--ftp-green-dark);
	font-size: 11px;
	font-weight: 900;
	line-height: 1;
}

.ftp-modern #login_pane .dropdown {
	position: relative;
}

.ftp-modern #login_pane .dropdown-form {
	left: auto;
	right: 0;
	top: calc(100% + 12px);
	width: 300px;
	margin: 0 !important;
	padding: 24px;
	border: 1px solid var(--ftp-line);
	border-radius: 18px;
	z-index: 10050;
	text-align: left;
}

.ftp-modern #login_pane .dropdown-form.dot:before,
.ftp-modern #login_pane .dropdown-form.logged:after {
	display: none;
}

.ftp-modern .login_pane__info {
	text-align: center;
}

.ftp-modern .login_pane__info .avatar {
	display: block;
	width: 92px;
	margin: 0 auto 10px;
}

.ftp-modern .login_pane__info .avatar .cover {
	display: block;
	width: 92px;
	height: 92px;
	border: 1px solid var(--ftp-line);
	border-radius: 28px;
	background-color: #f1f7ee;
	background-size: cover;
	background-position: center;
	box-shadow: var(--ftp-shadow-soft);
	text-indent: -9999px;
	overflow: hidden;
}

.ftp-modern .login_pane__name {
	display: inline-block;
	margin-bottom: 10px;
	color: var(--ftp-text);
	font-size: 16px;
	font-weight: 900;
}

.ftp-modern .login_pane__admin a {
	display: inline-flex;
	align-items: center;
	min-height: 30px;
	padding: 0 10px;
	border-radius: 999px;
	color: var(--ftp-green-dark);
	font-size: 12px;
	font-weight: 800;
}

.ftp-modern .login_pane__menu {
	margin: 18px 0;
	padding: 0;
	border: 0;
}

.ftp-modern .login_pane__menu li a {
	display: grid;
	grid-template-columns: 28px minmax(0, 1fr) auto;
	gap: 10px;
	align-items: center;
	padding: 11px 0;
	border-top: 1px solid var(--ftp-line);
	color: var(--ftp-text);
}

.ftp-modern .login_pane__menu li:last-child a {
	border-bottom: 1px solid var(--ftp-line);
}

.ftp-modern .login_pane__menu li a b {
	color: #71806d;
	font-size: 13px;
}

.ftp-modern .login_pane__menu-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	background: var(--ftp-green-soft);
	color: var(--ftp-green-dark);
	font-size: 14px;
	font-weight: 900;
}

.ftp-modern .login_pane__foot {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	font-weight: 700;
}

.ftp-modern .login_pane__foot .right {
	float: none;
}

.ftp-modern #login_pane .login_form {
	display: grid;
	gap: 12px;
	margin: 0;
	padding: 0;
	border: 0;
}

.ftp-modern #login_pane .login_form > li {
	position: relative;
	margin: 0;
	border: 0;
}

.ftp-modern #login_pane .login_form > li > input {
	height: 52px;
	padding: 0 16px 0 48px;
	border: 1px solid var(--ftp-line-strong);
	border-radius: 14px;
	font-size: 14px;
	font-weight: 700;
}

.ftp-modern .login_form__icon {
	position: absolute;
	left: 17px;
	top: 50%;
	width: 18px;
	height: 18px;
	object-fit: contain;
	transform: translateY(-50%);
}

.ftp-modern #login_pane .login_form__submit {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 48px;
	margin-top: 14px;
	padding: 0 18px;
	font-size: 14px;
}

.ftp-modern #login_pane .login_form__foot {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
	margin-top: 12px;
	text-align: left;
}

.ftp-modern #login_pane .login_form__foot a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	min-height: 42px;
	padding: 0 12px;
	border: 1px solid var(--ftp-line);
	border-radius: 999px;
	background: #fff;
	color: var(--ftp-green-dark);
	font-size: 13px;
	font-weight: 900;
	line-height: 1.2;
}

.ftp-modern #login_pane .login_form__foot a:hover {
	border-color: #9fd18c;
	background: var(--ftp-green-soft);
}

.ftp-modern #login_pane .login_form__foot img {
	width: 17px;
	height: 17px;
	object-fit: contain;
}

.ftp-modern .login_form__close {
	display: none;
}

.ftp-modern #mobile_menu_btn {
	display: none;
}

.ftp-modern .ftp-menu-toggle {
	grid-area: menu-btn;
	position: relative;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	padding: 0;
	border: 1px solid var(--ftp-line);
	border-radius: 16px;
	color: var(--ftp-green-dark);
	box-shadow: 0 10px 28px rgba(25, 45, 20, .08);
	cursor: pointer;
}

.ftp-modern .ftp-menu-toggle:hover,
.ftp-modern .ftp-menu-toggle[aria-expanded="true"] {
	border-color: #9fd18c;
	background: var(--ftp-green-soft);
	box-shadow: 0 0 0 4px rgba(67,165,31,.1);
}

.ftp-modern .ftp-menu-toggle span,
.ftp-modern .ftp-menu-toggle span:before,
.ftp-modern .ftp-menu-toggle span:after {
	position: absolute;
	display: block;
	width: 20px;
	height: 2px;
	border-radius: 1px;
	background: currentColor;
	content: "";
	transition: transform .18s ease, opacity .18s ease;
}

.ftp-modern .ftp-menu-toggle span:before {
	transform: translateY(-7px);
}

.ftp-modern .ftp-menu-toggle span:after {
	transform: translateY(7px);
}

.ftp-modern .ftp-menu-toggle[aria-expanded="true"] span {
	background: transparent;
}

.ftp-modern .ftp-menu-toggle[aria-expanded="true"] span:before {
	transform: rotate(45deg);
}

.ftp-modern .ftp-menu-toggle[aria-expanded="true"] span:after {
	transform: rotate(-45deg);
}

.ftp-modern .ftp-scroll-top {
	position: fixed;
	right: calc((var(--ftp-right-gutter) - var(--ftp-scroll-top-size)) / 2);
	bottom: 24px;
	z-index: 850;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	width: var(--ftp-scroll-top-size);
	height: var(--ftp-scroll-top-size);
	border: 1px solid var(--ftp-line-strong);
	border-radius: 14px;
	background: var(--ftp-surface);
	transition: background-color .16s ease, border-color .16s ease;
}

.ftp-modern .ftp-scroll-top:hover {
	border-color: var(--ftp-green);
	background: var(--ftp-green-soft);
}

.ftp-modern .ftp-scroll-top:focus-visible {
	outline: 2px solid var(--ftp-green);
	outline-offset: -2px;
}

.ftp-modern .ftp-scroll-top__arrow {
	width: 14px;
	height: 14px;
	box-sizing: border-box;
	border-top: 2px solid var(--ftp-green-dark);
	border-left: 2px solid var(--ftp-green-dark);
	transform: translateY(3px) rotate(45deg);
}

.page_form_style .ftp-modern .ftp-scroll-top {
	display: none;
}

.ftp-modern .ftp-hero {
	display: grid;
	grid-template-columns: 116px minmax(0, 1fr) auto;
	gap: 22px;
	align-items: center;
	width: min(1480px, calc(100% - 48px));
	margin: 28px auto 0;
	padding: 22px;
	border: 1px solid rgba(67,165,31,.18);
	border-radius: 22px;
	background:
		linear-gradient(135deg, rgba(67,165,31,.16), transparent 48%),
		linear-gradient(90deg, #ffffff, #f4faef);
	box-shadow: var(--ftp-shadow);
}

.ftp-modern .ftp-hero__media {
	width: 116px;
	height: 92px;
	max-width: 116px;
	max-height: 92px;
}

.ftp-modern .ftp-hero__media img {
	display: block;
	width: 100%;
	height: 100%;
	max-width: 116px;
	max-height: 92px;
	object-fit: contain;
}

.ftp-modern .ftp-hero__eyebrow {
	margin: 0 0 4px;
	color: var(--ftp-green-dark);
	font-size: 12px;
	font-weight: 900;
	text-transform: uppercase;
}

.ftp-modern .ftp-hero h1 {
	margin: 0;
	max-width: 760px;
	color: #132113;
	font-size: 30px;
	line-height: 1.15;
	font-weight: 900;
	letter-spacing: 0;
}

.ftp-modern .ftp-hero p {
	max-width: 720px;
	margin: 8px 0 0;
	color: var(--ftp-muted);
}

.ftp-modern .ftp-hero__actions {
	display: flex;
	gap: 10px;
	align-items: center;
}

.ftp-modern .ftp-hero__primary,
.ftp-modern .ftp-hero__secondary {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 42px;
	padding: 0 16px;
	border-radius: 999px;
	font-weight: 900;
	white-space: nowrap;
}

.ftp-modern .ftp-hero__secondary {
	border: 1px solid var(--ftp-line-strong);
	background: #fff;
	color: var(--ftp-text);
}

.ftp-modern .conteiner {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: minmax(0, 1fr) 320px;
	gap: 22px;
	width: min(1480px, calc(100% - 48px));
	margin: 24px auto 0;
	padding: 0 0 34px;
	background: transparent;
}

.ftp-modern .conteiner:after,
.ftp-modern #header:after {
	display: none;
}

.ftp-modern .conteiner > .midside {
	min-width: 0;
	padding: 0;
}

.ftp-modern .conteiner > .rightside,
.ftp-modern aside.rightside {
	float: none;
	width: auto;
	min-width: 0;
	margin: 0;
	padding: 0;
}

.ftp-modern .content_top {
	display: none;
}

.ftp-modern .ftp-donate-strip {
	display: flex;
	/* FIX-006: keep the icon glow inside the rounded banner. */
	overflow: hidden;
	background-clip: padding-box;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	box-sizing: border-box;
	width: 100%;
	margin: 0 0 18px;
	padding: 13px 14px 13px 16px;
	border: 1px solid #ffd0a7;
	border-radius: 18px;
}

.ftp-modern .ftp-donate-strip__main {
	display: flex;
	align-items: center;
	gap: 12px;
	min-width: 0;
}

.ftp-modern .ftp-donate-strip__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: #111;
	flex: 0 0 auto;
}

.ftp-modern .ftp-donate-strip__icon:before {
	display: block;
	width: 40px;
	height: 40px;
	background: currentColor;
	content: "";
	transform: translateX(3px);
	-webkit-mask: url("../images/new/icons/hand-coins.svg") center / 40px 40px no-repeat;
	mask: url("../images/new/icons/hand-coins.svg") center / 40px 40px no-repeat;
}

.ftp-modern .ftp-donate-strip__icon img {
	display: none;
}

.ftp-modern .ftp-donate-strip__main b,
.ftp-modern .ftp-donate-strip__main span {
	display: block;
}

.ftp-modern .ftp-donate-strip__main b {
	font-size: 15px;
	font-weight: 900;
	line-height: 1.2;
}

.ftp-modern .ftp-donate-strip__main span {
	margin-top: 2px;
	font-size: 12px;
	font-weight: 700;
	line-height: 1.25;
}

.ftp-modern .ftp-donate-strip__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	min-height: 38px;
	padding: 0 18px;
	border-radius: 999px;
	font-size: 12px;
	font-weight: 900;
	text-transform: uppercase;
	white-space: nowrap;
}

.ftp-modern #content {
	padding: 0;
}

.ftp-modern #content {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
	align-items: start;
}

.ftp-modern #content > .navigation,
.ftp-modern #content > .ftp-info,
.ftp-modern #content > .box:not(.game-card):not(.berrors),
.ftp-modern #content > .story:not(.game-card):not(.game-page),
.ftp-modern #content > .addform,
.ftp-modern #content > form,
.ftp-modern #content > .userinfo,
.ftp-modern #content > .comments,
.ftp-modern #content > .pmlist,
.ftp-modern #content > .baseform,
.ftp-modern #content > .static,
.ftp-modern #content > .berrors,
.ftp-modern #content > script {
	grid-column: 1 / -1;
	width: 100%;
	max-width: none;
	min-width: 0;
	justify-self: stretch;
}

.ftp-modern .showfull #content {
	display: block;
}

.ftp-modern .showfull .story {
	float: none;
	width: auto;
	margin-top: 0;
}

.ftp-modern .showfull .comments,
.ftp-modern .showfull #content .box {
	float: none;
	width: auto;
}

.ftp-modern .showfull #content .rightside {
	margin: 0;
}

.ftp-modern .ftp-info:empty {
	display: none;
}

.ftp-modern .ftp-info:not(:empty) {
	box-sizing: border-box;
	margin-bottom: 16px;
	padding: 16px 24px;
	border: 1px solid var(--ftp-notice-border);
	border-radius: 16px;
	background: var(--ftp-notice-bg);
	color: var(--ftp-notice-text);
	line-height: 1.5;
	box-shadow: var(--ftp-shadow-soft);
}

.ftp-modern .ftp-info .berrors {
	display: block !important;
	width: auto !important;
	height: auto !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	color: inherit !important;
	overflow: visible !important;
}

.ftp-modern .box,
.ftp-modern .comment,
.ftp-modern .block,
.ftp-modern .block_bg,
.ftp-modern .berrors {
	border-radius: var(--ftp-radius);
	box-shadow: var(--ftp-shadow-soft);
}

.ftp-modern .berrors {
	box-sizing: border-box;
	overflow: visible;
	height: auto !important;
	min-height: 0 !important;
	padding: 16px 24px;
	border: 1px solid var(--ftp-notice-border);
	border-radius: 14px;
	background: var(--ftp-notice-bg);
	color: var(--ftp-notice-text);
	line-height: 1.5;
}

.ftp-modern .berrors > b:first-child + br {display:none;}

.ftp-modern .berrors *,
.ftp-modern .berrors a {
	color: inherit;
}

.ftp-modern .berrors > b:first-child,
.ftp-modern .berrors > strong:first-child,
.ftp-modern .berrors .title,
.ftp-modern .berrors h1,
.ftp-modern .berrors h2,
.ftp-modern .berrors h3 {
	display: block;
	margin: 0 0 4px;
	color: var(--ftp-notice-title);
	font-weight: 900;
}

.ftp-modern .game-card {
	overflow: hidden;
	margin-bottom: 18px;
	/* FIX-003: border: 1px solid var(--ftp-line); */
	border: 0;
	transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}

.ftp-modern .game-card:hover {
	transform: translateY(-2px);
	/* FIX-003: border-color: #bad9ae; */
	box-shadow: var(--ftp-shadow);
}

.ftp-modern .game-card__inner {
	padding: 0;
}

.ftp-modern .game-card__head {
	position: relative;
	display: flex;
	align-items: center;
	min-height: 56px;
	padding: 13px 58px 12px 18px;
	border-bottom: 1px solid var(--ftp-line);
	background: #fff;
}

.ftp-modern .game-card__head:before {
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 5px;
	content: "";
	background: linear-gradient(180deg, var(--ftp-green), var(--ftp-orange));
}

.ftp-modern .game-card .story_icons {
	position: absolute;
	top: 14px;
	right: 16px;
	z-index: 2;
	margin: 0;
	padding: 0;
}

.ftp-modern .game-card__title {
	margin: 0;
	color: var(--ftp-text);
	font-size: 20px;
	font-weight: 900;
	line-height: 1.25;
}

.ftp-modern .game-card__title a {
	color: inherit;
}

.ftp-modern .game-card__body {
	padding: 18px 18px 12px;
	color: #273026;
	font-size: 14px;
}

.ftp-modern .game-card__summary {
	min-height: 160px;
}

.ftp-modern .game-card__summary:after {
	display: table;
	clear: both;
	content: "";
}

.ftp-modern .game-card__summary img {
	float: left;
	width: min(280px, 42%);
	aspect-ratio: 16 / 9;
	object-fit: cover;
	margin: 0 18px 8px 0;
	border: 1px solid var(--ftp-line);
	border-radius: 12px;
	background: #dfe8dc;
	box-shadow: 0 10px 24px rgba(20,40,16,.12);
}

.ftp-modern .game-card__summary p {
	margin-top: 0;
}

.ftp-modern .game-card__summary b,
.ftp-modern .game-card__summary strong {
	color: #101810;
}

.ftp-modern .game-card__tools {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 0 18px 18px;
	margin: 0;
}

.ftp-modern .game-card__category {
	flex: 1 1 auto;
	min-width: 0;
	color: var(--ftp-muted);
}

.ftp-modern .game-card__more,
.ftp-modern .btn {
	border: 0;
	border-radius: 999px;
	background: var(--ftp-green);
	color: #fff !important;
	font-weight: 900;
	box-shadow: none;
	text-shadow: none;
}

.ftp-modern .game-card__more:hover,
.ftp-modern .btn:hover {
	background: var(--ftp-green-dark);
	color: #fff !important;
}

.ftp-modern .game-card__meta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 11px 18px;
	border-top: 1px solid var(--ftp-line);
	background: #f8fbf6;
	font-size: 12px;
	color: var(--ftp-muted);
}

.ftp-modern .meta ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.ftp-modern .meta > ul > li {
	margin-top: 0;
}

.ftp-modern .game-card__stats,
.ftp-modern .game-page__stats {
	display: flex;
	align-items: center;
	gap: 12px;
}

.ftp-modern .game-card .icon,
.ftp-modern .game-page .icon {
	width: 17px;
	height: 17px;
	fill: var(--ftp-green);
}

.ftp-modern .story_icons .icon {
	fill: #6f7f6b;
}

.ftp-modern #content > .game-card {
	display: flex;
	position: relative;
	flex-direction: column;
	height: 100%;
	margin: 0;
	border-radius: 18px;
}

.ftp-modern .home-new {
	grid-column: 1 / -1;
	width: 100%;
	/* margin: 0 0 18px; */
	padding-bottom: 18px;
	border-bottom: 1px solid var(--ftp-line);
}

.ftp-modern .home-new__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin: 0 0 12px;
}

.ftp-modern .home-new__head h2 {
	margin: 0;
	color: var(--ftp-text);
	font-size: 20px;
	font-weight: 900;
	line-height: 1.2;
	letter-spacing: 0;
	text-transform: uppercase;
}

.ftp-modern .home-new__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 16px;
}

.ftp-modern .home-new-card {
	position: relative;
	overflow: hidden;
	min-width: 0;
	margin: 0;
	/* FIX-004: border: 1px solid var(--ftp-line); */
	border: 0;
	border-radius: 14px;
	background: var(--ftp-surface);
	box-shadow: var(--ftp-shadow-soft);
}

.ftp-modern .home-new-card__media {
	position: relative;
	display: block;
	overflow: hidden;
	aspect-ratio: 16 / 9;
	background: var(--ftp-surface-2);
	color: inherit;
}

.ftp-modern .home-new-card__media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .18s ease;
}

.ftp-modern .home-new-card:hover .home-new-card__media img {
	transform: scale(1.035);
}

.ftp-modern .home-new-card--all {
	/* FIX-014: reserve a full-height grid card for the updates archive. */
	display: flex;
	aspect-ratio: auto;
	color: inherit;
	text-decoration: none;
}

.ftp-modern .home-new-card__all-media {
	display: block;
	flex: 1;
	width: 100%;
	background:
		linear-gradient(180deg, rgba(8,20,14,.04), rgba(8,20,14,.1)),
		url("../images/new/ALL_UPDATES.webp") center / cover no-repeat;
	transition: transform .18s ease;
}

.ftp-modern .home-new-card--all:hover .home-new-card__all-media {
	transform: scale(1.035);
}

.ftp-modern .home-new-card__title {
	margin: 0;
	padding: 12px 14px 14px;
	font-size: 15px;
	font-weight: 900;
	line-height: 1.25;
	letter-spacing: 0;
}

.ftp-modern .home-new-card__title a {
	display: -webkit-box;
	overflow: hidden;
	color: var(--ftp-text);
	text-decoration: none;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.ftp-modern .home-releases-title {
	grid-column: 1 / -1;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	margin: 0 0 -2px;
}

.ftp-modern .ftp-releases-title--generated {
	justify-content: flex-end;
	margin: 0 0 8px;
}

.ftp-modern .home-releases-title h2 {
	margin: 0;
	color: var(--ftp-text);
	font-size: 20px;
	font-weight: 900;
	line-height: 1.2;
	letter-spacing: 0;
	text-transform: uppercase;
}

.ftp-modern .home-releases-view {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 4px;
	border: 1px solid var(--ftp-line);
	border-radius: 999px;
}

.ftp-modern .home-releases-view__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: transparent;
	color: var(--ftp-muted);
	cursor: pointer;
	transition: background .16s ease, color .16s ease, box-shadow .16s ease;
}

.ftp-modern .home-releases-view__btn img {
	display: block;
	width: 18px;
	height: 18px;
	filter: brightness(0) saturate(100%) invert(38%) sepia(12%) saturate(495%) hue-rotate(60deg) brightness(89%) contrast(86%);
	transition: filter .16s ease;
}

.ftp-modern .home-releases-view__btn:hover,
.ftp-modern .home-releases-view__btn.is-active {
	background: var(--ftp-green);
	color: #fff;
	box-shadow: 0 8px 18px rgba(67,165,31,.2);
}

.ftp-modern .home-releases-view__btn:hover img,
.ftp-modern .home-releases-view__btn.is-active img {
	filter: brightness(0) invert(1);
}

.ftp-modern .game-card__media-link {
	display: block;
	color: inherit;
}

.ftp-modern .game-card__media {
	position: relative;
	min-width: 0;
	min-height: 0;
	box-sizing: border-box;
	overflow: hidden;
	aspect-ratio: 16 / 9;
	/* FIX-005: prevent the light underlay showing at antialiased corners. */
	background: var(--ftp-surface-2);
}

.ftp-modern .game-card__media img {
	/* FIX-001: intrinsic poster dimensions must not size the card. */
	position: absolute;
	inset: 0;
	display: block;
	float: none;
	width: 100%;
	height: 100%;
	max-width: 100%;
	max-height: 100%;
	margin: 0;
	border: 0;
	border-radius: 0;
	object-fit: cover;
	object-position: center;
	box-shadow: none;
}

.ftp-modern .game-card__update {
	position: absolute;
	left: 8px;
	right: auto;
	bottom: 8px;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	width: fit-content;
	max-width: calc(100% - 16px);
	min-height: 24px;
	padding: 4px 8px;
	box-sizing: border-box;
	border-radius: 999px;
	background:
		linear-gradient(90deg, rgba(178, 18, 42, .96), rgba(238, 51, 66, .92) 58%, rgba(255, 88, 62, .86)),
		linear-gradient(90deg, rgba(24, 52, 26, .18), transparent);
	color: #fff;
	font-size: 10.5px;
	font-weight: 900;
	font-variant-numeric: tabular-nums;
	line-height: 1.25;
	text-shadow: 0 1px 1px rgba(67, 0, 8, .28);
	box-shadow: 0 2px 8px rgba(0, 0, 0, .2);
	overflow: hidden;
}

.ftp-modern .game-card__update-track {
	display: inline-block;
	min-width: 0;
	max-width: 100%;
	vertical-align: top;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.ftp-modern .game-card__update:not(.game-page__update) .game-card__update-track {
	white-space: normal;
	overflow-wrap: anywhere;
}

.ftp-modern .game-card__update-track span {
	opacity: .96;
}

.ftp-modern .game-card__update-track b {
	font-weight: 900;
}

@media (max-width: 360px) {
	.ftp-modern .home-new-card .game-card__update {
		padding-inline: 6px;
	}
}

.ftp-modern .game-page__update .game-card__update-track b:before {
	content: "• ";
	opacity: .75;
}

.ftp-modern .game-card__content {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: 16px;
}

.ftp-modern .game-card__content .game-card__title {
	margin: 0 0 10px;
	color: #111b11;
	font-size: 18px;
	line-height: 1.22;
}

.ftp-modern .game-card__author {
	margin: -4px 0 10px;
	color: var(--ftp-muted);
	font-size: 12px;
	font-weight: 800;
}

.ftp-modern .game-card__author a {
	color: var(--ftp-green-dark);
}

.ftp-modern .game-card__excerpt {
	flex: 1;
	margin: 0;
	color: #4a5548;
	font-size: 13px;
	line-height: 1.55;
}

.ftp-modern .game-card__excerpt img,
.ftp-modern .game-card__excerpt br {
	display: none !important;
}

.ftp-modern .game-card__excerpt p {
	margin: 0 0 8px;
}

.ftp-modern .game-card__excerpt p:last-child {
	margin-bottom: 0;
}

.ftp-modern .game-card__badges {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 14px 0 12px;
}

.ftp-modern .game-card__badge {
	display: inline-flex;
	align-items: center;
	min-height: 28px;
	padding: 0 10px;
	border-radius: 999px;
	color: var(--ftp-green-dark);
	font-size: 12px;
	font-weight: 900;
}

.ftp-modern .game-card__badge--category {
	background: #f3f7f0;
	color: #5d6b59;
}

.ftp-modern .game-card__badge--category a {
	color: inherit;
}

.ftp-modern .game-card__footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	margin-top: 16px;
	padding-top: 14px;
	border-top: 1px solid var(--ftp-line);
}

.ftp-modern .game-card__comments {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	color: var(--ftp-muted);
	font-size: 12px;
}

.ftp-modern .game-card__comments img {
	width: 17px;
	height: 17px;
	object-fit: contain;
}

.ftp-modern .game-card__comments b {
	color: var(--ftp-green-dark);
	font-weight: 900;
}

.ftp-modern .game-card__footer .game-card__more {
	display: inline-flex;
	align-items: center;
	min-height: 34px;
	padding: 0 12px;
	border-radius: 999px;
	background: var(--ftp-green);
	color: #fff;
	font-size: 12px;
	font-weight: 900;
}

.ftp-modern #content:is(.ftp-releases-rows, html.ftp-view-rows #content:has(> .game-card)) {
	grid-template-columns: 1fr;
}

.ftp-modern #content:is(.ftp-releases-rows, html.ftp-view-rows #content:has(> .game-card)) > .home-new,
.ftp-modern #content:is(.ftp-releases-rows, html.ftp-view-rows #content:has(> .game-card)) > .home-releases-title,
.ftp-modern #content:is(.ftp-releases-rows, html.ftp-view-rows #content:has(> .game-card)) > .ftp-info,
.ftp-modern #content:is(.ftp-releases-rows, html.ftp-view-rows #content:has(> .game-card)) > .box:not(.game-card),
.ftp-modern #content:is(.ftp-releases-rows, html.ftp-view-rows #content:has(> .game-card)) > .story:not(.game-card):not(.game-page) {
	grid-column: 1 / -1;
}

.ftp-modern #content:is(.ftp-releases-rows, html.ftp-view-rows #content:has(> .game-card)) > .game-card {
	--ftp-row-image-height: 200px;
	display: grid;
	grid-column: 1 / -1;
	grid-template-columns: calc(var(--ftp-row-image-height) * 16 / 9) minmax(0, 1fr);
	min-height: 0;
	border-radius: 16px;
}

.ftp-modern #content:is(.ftp-releases-rows, html.ftp-view-rows #content:has(> .game-card)) > .game-card .game-card__media-link,
.ftp-modern #content:is(.ftp-releases-rows, html.ftp-view-rows #content:has(> .game-card)) > .game-card .game-card__media {
	align-self: start;
	height: auto;
	min-height: 0;
}

.ftp-modern #content:is(.ftp-releases-rows, html.ftp-view-rows #content:has(> .game-card)) > .game-card .game-card__media {
	aspect-ratio: 16 / 9;
}

.ftp-modern #content:is(.ftp-releases-rows, html.ftp-view-rows #content:has(> .game-card)) > .game-card .game-card__content {
	min-width: 0;
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	grid-template-rows: auto auto minmax(0, 1fr) auto;
	gap: 6px 12px;
	padding: 12px 16px;
}

.ftp-modern #content:is(.ftp-releases-rows, html.ftp-view-rows #content:has(> .game-card)) > .game-card .game-card__content .game-card__title {
	grid-column: 1 / -1;
	display: -webkit-box;
	margin: 0;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	font-size: 18px;
}

.ftp-modern #content:is(.ftp-releases-rows, html.ftp-view-rows #content:has(> .game-card)) > .game-card .game-card__author {
	grid-column: 1 / -1;
	margin: 0;
}

.ftp-modern #content:is(.ftp-releases-rows, html.ftp-view-rows #content:has(> .game-card)) > .game-card .game-card__excerpt {
	display: -webkit-box;
	grid-column: 1 / -1;
	align-self: start;
	overflow: hidden;
	flex: 0 1 auto;
	max-height: 41px;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.ftp-modern #content:is(.ftp-releases-rows, html.ftp-view-rows #content:has(> .game-card)) > .game-card .game-card__excerpt p {
	margin: 0;
}

.ftp-modern #content:is(.ftp-releases-rows, html.ftp-view-rows #content:has(> .game-card)) > .game-card .game-card__badges {
	grid-row: 4;
	align-self: center;
	margin: 0;
}

.ftp-modern #content:is(.ftp-releases-rows, html.ftp-view-rows #content:has(> .game-card)) > .game-card .game-card__footer {
	grid-row: 4;
	gap: 12px;
	margin: 0;
	padding: 0;
	border: 0;
}

.ftp-modern .game-card__edit {
	position: absolute;
	top: 10px;
	left: 10px;
	right: auto;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	padding: 0;
	border: 1px solid rgba(91,155,68,.22);
	border-radius: 50%;
	background: rgba(255,255,255,.92);
	color: var(--ftp-green-dark);
	font-size: 0;
	font-weight: 800;
	line-height: 1;
	box-shadow: 0 10px 24px rgba(21, 43, 17, .12);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
}

.ftp-modern .game-card__edit:before {
	display: block;
	width: 17px;
	height: 17px;
	background: currentColor;
	content: "";
	-webkit-mask: url("../images/new/icons/pencil.svg") center / contain no-repeat;
	mask: url("../images/new/icons/pencil.svg") center / contain no-repeat;
}

.ftp-modern .game-card__edit:hover {
	background: #fff;
	color: var(--ftp-green);
}

.ftp-modern #searchsuggestions {
	z-index: 7000;
	box-sizing: border-box;
	width: min(420px, calc(100vw - 24px)) !important;
	padding: 6px;
	border: 1px solid var(--ftp-line);
	border-radius: 16px;
	color: var(--ftp-text);
	backdrop-filter: blur(14px);
	-webkit-backdrop-filter: blur(14px);
}

.ftp-modern #searchsuggestions a,
.ftp-modern #searchsuggestions span.notfound {
	display: block;
	padding: 10px 12px;
	border: 0;
	border-radius: 10px;
	color: var(--ftp-text);
	text-decoration: none;
}

.ftp-modern #searchsuggestions a + a {
	margin-top: 2px;
}

.ftp-modern #searchsuggestions a span:not(.searchheading),
.ftp-modern #searchsuggestions span.seperator {
	display: none !important;
}

.ftp-modern #searchsuggestions span.searchheading {
	display: block;
	margin: 0;
	font-size: 13px;
	font-weight: 900;
	line-height: 1.25;
}

.ftp-modern #dropmenudiv {
	z-index: 8000 !important;
	box-sizing: border-box;
	min-width: 160px;
	padding: 6px !important;
	border: 1px solid var(--ftp-line) !important;
	border-radius: 12px;
	backdrop-filter: blur(14px);
	-webkit-backdrop-filter: blur(14px);
}

.ftp-modern #dropmenudiv a {
	display: block;
	padding: 9px 11px !important;
	border: 0 !important;
	border-radius: 8px;
	background: transparent !important;
	color: var(--ftp-text) !important;
	font-size: 13px;
	font-weight: 800;
	line-height: 1.2;
	text-decoration: none;
}

.ftp-modern .game-page {
	overflow: hidden;
	margin-bottom: 20px;
	border: 1px solid var(--ftp-line);
}

.ftp-modern .game-page__inner {
	padding: 0;
}

.ftp-modern .game-page__head {
	padding: 20px 26px 14px;
	border-bottom: 1px solid var(--ftp-line);
}

.ftp-modern .game-page__title-row {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: start;
	gap: 12px;
}

.ftp-modern .game-page__title {
	min-width: 0;
	margin: 0;
	color: #111b11;
	font-size: 30px;
	font-weight: 900;
	line-height: 1.16;
	letter-spacing: 0;
}

.ftp-modern .game-page__subline {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	margin-top: 10px;
	color: var(--ftp-text);
	font-family: inherit;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.35;
}

.ftp-modern .game-page__subline > span:not(.fixed_label) {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	box-sizing: border-box;
	max-width: 100%;
	min-height: 32px;
	padding: 6px 12px;
	border: 1px solid var(--ftp-line);
	border-radius: 16px;
	background: var(--ftp-surface-2);
	overflow-wrap: anywhere;
}

.ftp-modern .game-page__head .game-page__subline > span > :is(a, b) {
	color: inherit;
	font-weight: 700;
}

.ftp-modern .game-page__head .game-page__subline > span > a:hover {
	color: inherit;
	text-decoration: underline;
}

.ftp-modern .game-page__subline > span a,
.ftp-modern .game-page__subline > span a b,
.ftp-modern .game-page__subline > span a span {
	display: inline !important;
	min-height: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

.ftp-modern .game-page__subline img {
	width: 17px;
	height: 17px;
	object-fit: contain;
}

.ftp-modern .game-page__update {
	position: relative;
	inset: auto;
	min-width: 0;
	max-width: 100%;
	min-height: 32px;
	padding: 6px 12px;
	border-radius: 16px;
	background: linear-gradient(100deg, #a61735, #bf3434);
	font-size: 12px;
	font-weight: inherit;
	line-height: inherit;
	box-shadow: none;
}

.ftp-modern .game-page__update .game-card__update-track {
	white-space: normal;
	overflow-wrap: anywhere;
}

.ftp-modern .game-page__update .game-card__update-track b {
	font-weight: 700;
}

.ftp-modern .game-page__actions {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 2px;
}

.ftp-modern .game-page__title-row > a,
.ftp-modern .game-page__actions > a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	line-height: 0;
}

.ftp-modern .game-page__icon-action,
.ftp-modern .game-page__icon-action a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	border: 1px solid var(--ftp-line);
	border-radius: 50%;
	cursor: pointer;
}

.ftp-modern a .game-page__icon-action {
	pointer-events: none;
}

.ftp-modern .game-page__icon-action img {
	width: 18px;
	height: 18px;
	object-fit: contain;
}

.ftp-modern .game-page__actions .game-page__icon-action,
.ftp-modern .game-page__actions .game-page__icon-action a {
	width: 34px;
	height: 34px;
}

.ftp-modern .game-page__actions .game-page__icon-action img {
	width: 20px;
	height: 20px;
}

.ftp-modern .game-page__icon-action--complaint img {
	filter: invert(37%) sepia(32%) saturate(1482%) hue-rotate(319deg) brightness(92%) contrast(90%);
}

.ftp-modern .game-page__actions .game-page__icon-action--complaint,
.ftp-modern .game-page__actions .game-page__icon-action--complaint a,
.ftp-modern .game-page__icon-action--complaint,
.ftp-modern .game-page__icon-action--complaint a {
	border-color: #f2c9c9;
	background: #fff4f4;
	color: #b94343;
}

.ftp-modern .game-page__actions .game-page__icon-action--complaint:hover,
.ftp-modern .game-page__actions .game-page__icon-action--complaint a:hover,
.ftp-modern .game-page__icon-action--complaint:hover,
.ftp-modern .game-page__icon-action--complaint a:hover {
	border-color: #ebb2b2;
	background: #ffecec;
	color: #a93434;
}

.ftp-modern .game-page__icon-action--active,
.ftp-modern .game-page__icon-action--active a {
	border-color: #b8dea9;
	background: var(--ftp-green-soft);
}

.ftp-modern .game-page__icon-action:empty {
	display: none;
}

.ftp-modern .ftp-downloads-who:empty {
	display: none;
}

.ftp-modern .ftp-downloads-who {
	margin-top: 10px;
}

.ftp-modern .ftp-download-who-row {
	display: flex;
	align-items: center;
	gap: 8px;
	flex-wrap: wrap;
	margin: 6px 0 0;
	padding: 8px 10px;
	border: 1px solid var(--ftp-line);
	border-radius: 10px;
	background: var(--ftp-surface-2);
	color: var(--ftp-muted);
	font-size: 12px;
}

.ftp-modern .ftp-download-who-row__user {
	font-weight: 900;
}

.ftp-modern .ftp-download-who-row__date,
.ftp-modern .ftp-download-who-row__group {
	color: var(--ftp-muted);
}

.ftp-modern .ftp-game-article {
	display: grid;
	gap: 18px;
}

.ftp-modern .ftp-game-media {
	overflow: hidden;
	border: 1px solid var(--ftp-line);
	border-radius: 18px;
	background: #101510;
	box-shadow: var(--ftp-shadow-soft);
}

.ftp-modern .ftp-game-media img,
.ftp-modern .ftp-game-media iframe {
	display: block;
	width: 100%;
	aspect-ratio: 16 / 9;
	object-fit: cover;
	margin: 0;
	border: 0;
	border-radius: 0;
	box-shadow: none;
}

.ftp-modern .ftp-game-info,
.ftp-modern .ftp-downloads,
.ftp-modern .ftp-launch,
.ftp-modern .ftp-faq {
	padding: 18px;
	border: 1px solid var(--ftp-line);
	border-radius: 18px;
}

.ftp-modern .ftp-game-info ul,
.ftp-modern .ftp-launch ol,
.ftp-modern .ftp-faq ul {
	margin: 12px 0 0;
	padding-left: 22px;
}

.ftp-modern .ftp-downloads h3,
.ftp-modern .ftp-launch h3,
.ftp-modern .ftp-faq h3 {
	margin: 0 0 14px;
	color: #111b11;
	font-size: 18px;
	font-weight: 900;
}

.ftp-modern .ftp-download {
	display: grid;
	gap: 5px;
	padding: 14px;
	border: 1px solid #cfe4c7;
	border-radius: 14px;
	background: var(--ftp-green-soft);
}

.ftp-modern .ftp-download + .ftp-download {
	margin-top: 10px;
}

.ftp-modern .ftp-download b {
	color: #111b11;
}

.ftp-modern .ftp-download a {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	width: fit-content;
	max-width: 100%;
	margin: 2px 0;
	padding: 9px 13px;
	border: 1px solid #baddae;
	border-radius: 10px;
	font-weight: 900;
}

.ftp-modern .ftp-download a:before {
	display: inline-block;
	width: 18px;
	height: 18px;
	background: currentColor;
	content: "";
	flex: 0 0 auto;
	-webkit-mask: url("../images/new/icons/file-arrow-down.svg") center / contain no-repeat;
	mask: url("../images/new/icons/file-arrow-down.svg") center / contain no-repeat;
}

.ftp-modern .ftp-download span {
	color: var(--ftp-muted);
	font-size: 13px;
}

.ftp-modern .ftp-download .ftp-warning {
	color: var(--ftp-red);
	font-weight: 800;
}

.ftp-modern .game-page__tools,
.ftp-modern .game-page__meta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 13px 26px;
	margin: 0;
	border-top: 1px solid var(--ftp-line);
	background: #f8fbf6;
}

.ftp-modern .game-page__category,
.ftp-modern .game-page__meta {
	color: var(--ftp-muted);
}

.ftp-modern .game-comments .box,
.ftp-modern .comments .box {
	border: 1px solid var(--ftp-line);
	background: var(--ftp-surface);
	color: var(--ftp-text);
}

.ftp-modern .game-comments .addcomment-box {
	overflow: hidden;
	padding: 0;
	border-radius: 18px;
	box-shadow: var(--ftp-shadow-soft);
}

.ftp-modern .game-comments .addcomment-box .addcomment {
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

.ftp-modern .game-comments .addcomment-box .box_in {
	padding: 24px;
}

.ftp-modern .game-comments .addcomment-box .plus_icon {
	display: none;
}

.ftp-modern .game-comments .heading {
	padding: 16px 18px;
	border-bottom: 1px solid var(--ftp-line);
}

.ftp-modern .comments .com_list {
	display: grid;
	gap: 14px;
	padding: 16px;
}

.ftp-modern .ftp-pm-read {
	margin: 0;
}

.ftp-modern .ftp-pm-read__box {
	overflow: hidden;
	border-radius: 18px;
	box-shadow: var(--ftp-shadow-soft);
}

.ftp-modern .ftp-pm-read__head {
	display: grid;
	gap: 5px;
	padding: 18px 22px;
	border-bottom: 1px solid var(--ftp-line);
	background:
		linear-gradient(90deg, rgba(67,165,31,.1), rgba(255,255,255,0) 58%),
		var(--ftp-surface);
	text-transform: none;
}

.ftp-modern .ftp-pm-read__head span {
	color: var(--ftp-muted);
	font-size: 12px;
	font-weight: 800;
	text-transform: uppercase;
}

.ftp-modern .ftp-pm-read__head h4 {
	margin: 0;
	color: var(--ftp-text);
	font-size: 19px;
	font-weight: 900;
	line-height: 1.25;
	letter-spacing: 0;
}

.ftp-modern .ftp-pm-read__thread {
	padding: 16px;
}

.ftp-modern .ftp-pm-read__message {
	display: grid;
	gap: 12px;
	margin: 0;
	padding: 18px 22px;
	border: 1px solid var(--ftp-line);
	border-radius: 16px;
	background: #fbfdfa;
	box-shadow: none;
}

.ftp-modern .ftp-pm-read__message:hover {
	box-shadow: 0 12px 28px rgba(25,45,20,.08);
}

.ftp-modern .ftp-pm-read__message .com_info {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0;
	border: 0;
	background: transparent;
	font-size: 13px;
}

.ftp-modern .ftp-pm-read__message .avatar {
	display: block;
	float: none;
	margin: 0;
	position: relative;
}

.ftp-modern .ftp-pm-read__message .avatar .cover {
	width: 38px;
	height: 38px;
	border: 2px solid #fff;
	box-shadow: 0 8px 18px rgba(20,34,18,.14);
}

.ftp-modern .ftp-pm-read__message .avatar.is-online .cover {
	border-color: #54c937;
	box-shadow:
		0 0 0 3px rgba(84,201,55,.18),
		0 8px 18px rgba(20,34,18,.14);
}

.ftp-modern .ftp-pm-read__message .com_online {
	display: none;
}

.ftp-modern .ftp-pm-read__message .com_user {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 4px;
	float: none;
	min-width: 0;
	margin: 0;
	color: var(--ftp-muted);
}

.ftp-modern .ftp-pm-read__message .com_user .name {
	color: var(--ftp-green-dark);
	font-weight: 900;
}

.ftp-modern .ftp-pm-read__message .meta {
	display: block;
	margin-left: auto;
}

.ftp-modern .ftp-pm-read__message .meta .left {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 0;
}

.ftp-modern .ftp-pm-read__message .meta > ul.left > li {
	margin: 0;
}

.ftp-modern .ftp-pm-read__message .meta .left a {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	width: auto;
	height: 28px;
	margin: 0;
	padding: 0 8px;
	border-radius: 999px;
	color: var(--ftp-green-dark);
	font-weight: 800;
	line-height: 1;
	text-decoration: none !important;
}

.ftp-modern .ftp-pm-read__message .edit_btn > a {
	justify-content: center;
	width: 30px;
	height: 30px;
	padding: 0;
	font-size: 0;
	transform: none !important;
	transition: background-color .18s ease, color .18s ease;
}

.ftp-modern .ftp-pm-read__message .edit_btn > a > i,
.ftp-modern .ftp-pm-read__message .edit_btn > a:after {
	display: none !important;
	content: none !important;
}

.ftp-modern .ftp-pm-read__message .edit_btn > a:before {
	content: "";
	display: block;
	width: 15px;
	height: 15px;
	padding: 0;
	margin: 0;
	background: currentColor;
	-webkit-mask: url("../images/new/icons/pencil.svg") center / contain no-repeat;
	mask: url("../images/new/icons/pencil.svg") center / contain no-repeat;
}

.ftp-modern .ftp-pm-read__message .meta .left .icon {
	width: 15px;
	height: 15px;
	margin: 0;
	fill: currentColor !important;
}

.ftp-modern .ftp-pm-read__message .com_content {
	margin-left: 48px;
	border: 0;
	background: transparent;
	color: var(--ftp-text);
}

.ftp-modern .ftp-pm-read__message .text {
	max-width: 820px;
	font-size: 14px;
	line-height: 1.65;
}

.ftp-modern .ftp-pm-read__message .signature {
	margin-top: 12px;
	color: var(--ftp-muted);
	font-size: 13px;
	line-height: 1.45;
}

.ftp-modern .ftp-pm-read__reply {
	padding: 18px 22px 22px;
	border-top: 1px solid var(--ftp-line);
	background: rgba(67,165,31,.035);
}

.ftp-modern .ftp-pm-read__reply h3 {
	margin: 0 0 14px;
	color: var(--ftp-text);
	font-size: 18px;
	font-weight: 900;
	line-height: 1.25;
}

.ftp-modern .ftp-pm-read__reply br {
	display: none;
}

.ftp-modern .ftp-pm-read__reply .btn {
	margin-top: 14px;
}

.ftp-modern .addform,
.ftp-modern .addcomment,
.ftp-modern .addpm,
.ftp-modern #content > .story:not(.game-card):not(.game-page) {
	box-sizing: border-box;
	padding: 24px;
	border: 1px solid var(--ftp-line);
	border-radius: 18px;
	background: #fff;
	color: var(--ftp-text);
	box-shadow: var(--ftp-shadow-soft);
}

.ftp-modern #content > .story:not(.game-card):not(.game-page) .addform,
.ftp-modern #content > .story:not(.game-card):not(.game-page) .addpm {
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

.ftp-modern .addform .title,
.ftp-modern .addcomment .title,
.ftp-modern .addpm .title,
.ftp-modern #content > .story:not(.game-card):not(.game-page) .title,
.ftp-modern #content > .story:not(.game-card):not(.game-page) h1,
.ftp-modern #content > .story:not(.game-card):not(.game-page) h2 {
	margin-top: 0;
	color: #111b11;
	font-weight: 900;
	letter-spacing: 0;
}

.ftp-modern .ui-form {
	display: grid;
	gap: 12px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.ftp-modern .ui-form > li {
	margin: 0;
}

.ftp-modern .ftp-addnews .form-group > label {
	display: block;
	margin: 0 0 7px;
	color: #1b271a;
	font-size: 13px;
	font-weight: 900;
}

.ftp-modern input[type="text"],
.ftp-modern input[type="password"],
.ftp-modern input[type="email"],
.ftp-modern textarea,
.ftp-modern select {
	box-sizing: border-box;
	min-height: 40px;
	border: 1px solid #d7e4d2;
	border-radius: 10px;
	box-shadow: none;
}

.ftp-modern input[type="text"]:focus,
.ftp-modern input[type="password"]:focus,
.ftp-modern input[type="email"]:focus,
.ftp-modern textarea:focus,
.ftp-modern select:focus {
	border-color: #99cb86 !important;
	box-shadow: 0 0 0 4px rgba(67,165,31,.12);
	outline: 0;
}

.ftp-modern .ftp-addnews #category,
.ftp-modern .ftp-addnews select[name="category[]"],
.ftp-modern .ftp-addnews select[name="catlist[]"],
.ftp-modern .ftp-addnews select[name="catlist"] {
	width: 100%;
	min-height: 170px;
	padding: 8px;
	border-radius: 14px;
}

.ftp-modern .ftp-addnews #category option,
.ftp-modern .ftp-addnews select[name="category[]"] option,
.ftp-modern .ftp-addnews select[name="catlist[]"] option,
.ftp-modern .ftp-addnews select[name="catlist"] option {
	padding: 7px 10px;
	border-bottom: 1px solid #e2ecdc;
	border-radius: 7px;
	color: #263425;
}

.ftp-modern .ftp-addnews #category option:checked,
.ftp-modern .ftp-addnews select[name="category[]"] option:checked,
.ftp-modern .ftp-addnews select[name="catlist[]"] option:checked,
.ftp-modern .ftp-addnews select[name="catlist"] option:checked {
	background: linear-gradient(90deg, var(--ftp-green), #5bbb35);
	color: #fff;
	font-weight: 900;
}

.ftp-modern .ftp-addnews #category optgroup,
.ftp-modern .ftp-addnews select[name="category[]"] optgroup,
.ftp-modern .ftp-addnews select[name="catlist[]"] optgroup,
.ftp-modern .ftp-addnews select[name="catlist"] optgroup {
	padding: 8px 0;
	color: var(--ftp-green-dark);
	font-weight: 900;
}

.ftp-modern .ftp-addnews .chosen-container,
.ftp-modern .ftp-addnews .chosen-container-multi,
.ftp-modern .ftp-addnews .chosen-container-single {
	width: 100% !important;
	color: var(--ftp-text);
}

.ftp-modern .ftp-addnews .chosen-container-multi .chosen-choices,
.ftp-modern .ftp-addnews .chosen-container-single .chosen-single {
	min-height: 42px;
	border: 1px solid #d7e4d2 !important;
	border-radius: 12px !important;
	box-shadow: none !important;
}

.ftp-modern .ftp-addnews .chosen-container .chosen-drop {
	border-color: #d7e4d2;
	border-radius: 0 0 12px 12px;
	box-shadow: 0 14px 30px rgba(8,24,16,.14);
}

.ftp-modern .ftp-addnews .chosen-container .chosen-results li {
	margin: 2px 4px;
	padding: 8px 10px;
	border-bottom: 1px solid #edf3e9;
	border-radius: 8px;
}

.ftp-modern .ftp-addnews .chosen-container .chosen-results li.highlighted {
	background: var(--ftp-green);
	color: #fff;
}

.ftp-modern .ftp-primary-xfields[hidden] {
	display: none;
}

.ftp-modern .ftp-primary-xfields {
	padding: 14px;
	border: 1px solid #cfe4c7;
	border-radius: 16px;
}

.ftp-modern .ftp-xfields {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0 8px;
}

.ftp-modern .ftp-xfields td {
	padding: 10px 12px;
	border-top: 1px solid #dfeada;
	border-bottom: 1px solid #dfeada;
	vertical-align: middle;
}

.ftp-modern .ftp-xfields td:first-child {
	border-left: 1px solid #dfeada;
	border-radius: 12px 0 0 12px;
	color: #263425;
	font-weight: 800;
}

.ftp-modern .ftp-xfields td:last-child {
	border-right: 1px solid #dfeada;
	border-radius: 0 12px 12px 0;
}

.ftp-modern .ftp-primary-xfields .ftp-xfields tr {
	background: #fff;
}

.ftp-modern .ftp-xfields input[type="text"],
.ftp-modern .ftp-xfields input[type="file"],
.ftp-modern .ftp-xfields select,
.ftp-modern .ftp-xfields textarea {
	width: 100%;
}

.ftp-modern .ftp-template-tools {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	align-items: center;
	margin-top: 10px;
}

.ftp-modern .ftp-template-tools span {
	color: var(--ftp-muted);
	font-size: 12px;
}

.ftp-modern .ftp-template-tools .btn-border {
	min-height: 38px;
	padding: 9px 13px;
}

.ftp-modern #comment-editor,
.ftp-modern .wseditor,
.ftp-modern .bb-editor,
.ftp-modern .dlecomments-editor,
.ftp-modern .dleaddcomments-editor,
.ftp-modern .dlefastedit-editor,
.ftp-modern .tox-tinymce {
	overflow: hidden;
	border: 1px solid #d7e4d2 !important;
	border-radius: 16px !important;
	box-shadow: none !important;
}

.ftp-modern .tox .tox-toolbar,
.ftp-modern .tox .tox-toolbar__primary,
.ftp-modern .tox .tox-toolbar-overlord {
	color: var(--ftp-text) !important;
}

.ftp-modern .wseditor table,
.ftp-modern .bb-editor table {
	background: #fff !important;
	color: var(--ftp-text) !important;
}

.ftp-modern .tox .tox-toolbar,
.ftp-modern .tox .tox-toolbar__primary,
.ftp-modern .bb-editor .bb-pane,
.ftp-modern .wseditor .bb-pane {
	border: 0 !important;
	border-bottom: 1px solid var(--ftp-line) !important;
}

.ftp-modern .tox .tox-toolbar__group {
	border-color: #dfeada !important;
}

.ftp-modern .tox .tox-tbtn,
.ftp-modern .tox .tox-tbtn--select,
.ftp-modern .bb-editor .bb-btn,
.ftp-modern .wseditor .bb-btn {
	border-radius: 8px !important;
	border-color: transparent !important;
	color: #31402f !important;
}

.ftp-modern .tox .tox-tbtn--select {
	border: 1px solid #d7e4d2 !important;
/*	background: #fff !important; */
}

.ftp-modern .tox .tox-tbtn svg,
.ftp-modern .tox .tox-tbtn svg path,
.ftp-modern .bb-editor .bb-btn svg,
.ftp-modern .wseditor .bb-btn svg,
.ftp-modern .bb-editor .bb-btn .icon,
.ftp-modern .wseditor .bb-btn .icon {
	fill: #31402f !important;
	color: #31402f !important;
	opacity: 1 !important;
}

.ftp-modern .tox .tox-tbtn:hover,
.ftp-modern .bb-editor .bb-btn:hover,
.ftp-modern .wseditor .bb-btn:hover {
	background: var(--ftp-green-soft) !important;
	color: var(--ftp-green-dark) !important;
}

.ftp-modern .tox .tox-edit-area__iframe,
.ftp-modern .bb-editor textarea,
.ftp-modern #comment-editor textarea {
	min-height: 220px;
}

.ftp-modern .addpm #comment-editor textarea {
	min-height: 300px;
}

.ftp-modern .form_submit,
.ftp-modern .form-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	align-items: center;
	margin-top: 16px;
}

.ftp-modern .ftp-comment__avatar {
	position: relative;
}

.ftp-modern .ftp-comment__avatar .cover {
	display: block;
	border: 2px solid transparent;
	background-position: center;
	background-size: cover;
	text-indent: -9999px;
	overflow: hidden;
}

.ftp-modern .ftp-comment__avatar--online .cover {
	border-color: var(--ftp-green);
	box-shadow: 0 0 0 3px rgba(55, 165, 33, 0.16), 0 10px 24px rgba(23, 32, 23, 0.08);
}

.ftp-modern .ftp-comment__head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 14px;
	margin-bottom: 6px;
}

.ftp-modern .ftp-comment__user {
	display: flex;
	flex-wrap: wrap;
	gap: 6px 10px;
	align-items: baseline;
	min-width: 0;
}

.ftp-modern .ftp-comment__user .name {
	color: var(--ftp-green-dark);
	font-size: 14px;
	font-weight: 900;
}

.ftp-modern .ftp-comment__date {
	color: var(--ftp-muted);
	font-size: 12px;
}

.ftp-modern .ftp-comment__anchor {
	flex: 0 0 auto;
	color: var(--ftp-green-dark);
	font-size: 12px;
	font-weight: 900;
}

.ftp-modern .ftp-comment__news-title {
	margin: 0 0 10px;
	color: var(--ftp-text);
	font-size: 15px;
	font-weight: 900;
}

.ftp-modern .ftp-comment__text {
	color: var(--ftp-text);
	font-size: 14px;
	line-height: 1.65;
}

.ftp-modern .ftp-comment__foot {
	padding-top: 12px;
}

.ftp-modern .ftp-comment__action a,
.ftp-modern .ftp-comment__action {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	border-radius: 999px;
	color: var(--ftp-green-dark);
	font-weight: 900;
	white-space: nowrap;
}

.ftp-modern .ftp-comment__action img {
	width: 17px;
	height: 17px;
	object-fit: contain;
}

.ftp-modern .ftp-comment__action--complaint a {
	color: #9a651a;
}

.ftp-modern .ftp-comment__rate {
	display: inline-flex;
	align-items: center;
}

.ftp-modern .ftp-comment__admin,
.ftp-modern .ftp-comment__mass {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 1px solid var(--ftp-line);
	border-radius: 999px;
	color: var(--ftp-muted);
	font-size: 12px;
	font-weight: 800;
	line-height: 1;
	white-space: nowrap;
}

.ftp-modern .ftp-comment__admin a,
.ftp-modern .ftp-comment__mass a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: inherit;
	text-decoration: none;
}

.ftp-modern aside.rightside .block,
.ftp-modern aside.rightside .block_bg,
.ftp-modern aside.rightside .banner {
	overflow: hidden;
	margin-bottom: 16px;
	/* FIX-013: match the borderless news cards across all sidebar sections. */
	border: 0;
	border-radius: var(--ftp-radius);
	background: var(--ftp-surface);
	box-shadow: var(--ftp-shadow-soft);
}

.ftp-modern aside.rightside {
	min-width: 0;
}

/* FIX-013: the chat sleep/loading card has its own decorative frame. */
.ftp-modern aside.rightside .side-chat--mod .mod-chat-overlay-card {
	border: 0;
}

.ftp-modern aside.rightside .block > .title,
.ftp-modern aside.rightside .block_bg > .title {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 14px 14px;
	margin: 0;
	border-bottom: 1px solid var(--ftp-line);
	font-size: 13px;
	text-align: left;
	text-transform: uppercase;
}

.ftp-modern aside.rightside .block > .title:after,
.ftp-modern aside.rightside .block_bg > .title:after {
	flex: 1;
	height: 3px;
	content: "";
	border-radius: 1.5px;
}

.ftp-modern aside.rightside .topnews,
.ftp-modern aside.rightside .lastcomm,
.ftp-modern aside.rightside .relnews,
.ftp-modern aside.rightside .tag_list,
.ftp-modern aside.rightside .tab-content {
	padding: 12px;
	margin: 0;
}

.ftp-modern aside.rightside img {
	max-width: 100%;
	height: auto;
}

.ftp-modern .side-actions {
	display: grid;
	gap: 10px;
	margin-bottom: 16px;
}

.ftp-modern .side-actions__btn {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding: 9px 14px;
	border-radius: var(--ftp-radius);
	color: #fff !important;
	font-size: 13px;
	font-weight: 900;
	line-height: 1.25;
	text-align: center;
}

.ftp-modern .side-actions__btn--green {
	background: var(--ftp-green);
}

/* FIX-009: match the actual donation banner height, including its borders. */
.ftp-modern .side-actions__btn--request {
	box-sizing: border-box;
	min-height: var(--ftp-donate-height, 72px);
}

.ftp-modern .side-actions__btn--orange {
	background: var(--ftp-orange);
}

.ftp-modern .side-game__body,
.ftp-modern .side-discord__body {
	padding: 14px;
}

.ftp-modern .side-game__list {
	padding: 0 !important;
	margin: 0 !important;
}

.ftp-modern aside.rightside .side-game-card {
	margin: 0;
	list-style: none;
}

.ftp-modern aside.rightside .side-game-card a {
	padding: 0;
	overflow: hidden;
	border-radius: 14px;
	background: #fff;
	box-shadow: none;
}

.ftp-modern .side-game-card__media {
	display: block !important;
	margin: 0 0 10px !important;
	color: inherit !important;
	font-size: 0 !important;
	opacity: 1 !important;
}

.ftp-modern .side-game-card__media img,
.ftp-modern .side-game__body > img {
	display: block;
	width: 100%;
	aspect-ratio: 16 / 9;
	object-fit: cover;
	margin: 0;
	border: 1px solid var(--ftp-line);
	border-radius: 12px;
	background: #dfe8dc;
	opacity: 1 !important;
	filter: none !important;
}

.ftp-modern aside.rightside .side-game-card b,
.ftp-modern aside.rightside .side-game-card > a > span:not(.side-game-card__media) {
	padding-left: 10px;
	padding-right: 10px;
}

.ftp-modern aside.rightside .side-game-card > a > span:not(.side-game-card__media) {
	padding-bottom: 10px;
}

.ftp-modern aside.rightside .topnews {
	list-style: none;
}

.ftp-modern aside.rightside .relnews {
	list-style: none;
}

.ftp-modern aside.rightside .topnews li + li,
.ftp-modern aside.rightside .relnews li + li {
	margin-top: 9px;
}

.ftp-modern aside.rightside .topnews a,
.ftp-modern aside.rightside .relnews a,
.ftp-modern .lastcomm a {
	display: block;
	padding: 11px;
	border: 1px solid var(--ftp-line);
	border-radius: 12px;
	color: var(--ftp-text);
	font-size: 13px;
	line-height: 1.35;
	overflow-wrap: anywhere;
}

.ftp-modern aside.rightside .topnews .icon,
.ftp-modern aside.rightside .relnews .icon {
	display: none;
}

.ftp-modern aside.rightside .topnews b,
.ftp-modern aside.rightside .topnews span,
.ftp-modern aside.rightside .relnews b,
.ftp-modern aside.rightside .relnews span {
	display: block;
}

.ftp-modern aside.rightside .topnews span,
.ftp-modern aside.rightside .relnews span,
.ftp-modern .lastcomm b {
	margin-top: 2px;
	color: var(--ftp-muted);
	font-size: 12px;
}

.ftp-modern .side-discord__body {
	text-align: center;
}

/* FIX-011: cached Discord data in the native FreeTP theme, without an iframe. */
.ftp-modern .ftp-discord {
	min-width: 0;
	color: var(--ftp-text);
	text-align: left;
}

.ftp-modern .ftp-discord [hidden] { display: none !important; }

.ftp-modern .ftp-discord__summary {
	display: flex;
	align-items: center;
	gap: 7px;
	flex-wrap: wrap;
	font-size: 12px;
	color: var(--ftp-muted);
}

.ftp-modern .ftp-discord__summary strong {
	font-size: 20px;
	font-weight: 900;
	line-height: 1.2;
	color: var(--ftp-text);
}

.ftp-modern .ftp-discord h5 {
	margin: 14px 0 8px;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
	color: var(--ftp-muted);
}

.ftp-modern .ftp-discord ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.ftp-modern .ftp-discord__channels > ul > li {
	padding: 3px 0;
	font-size: 12px;
	line-height: 1.35;
	overflow-wrap: anywhere;
}

.ftp-modern .ftp-discord__channels .ftp-discord__voice-members {
	margin: 5px 0 5px 8px;
}

.ftp-modern .ftp-discord__members ul {
	max-height: 240px;
	overflow-y: auto;
	overflow-x: hidden;
	overscroll-behavior: contain;
	scrollbar-width: thin;
	scrollbar-color: var(--ftp-line-strong) transparent;
}

.ftp-modern .ftp-discord__member {
	display: flex;
	align-items: center;
	gap: 9px;
	min-width: 0;
	min-height: 36px;
	padding: 4px 8px 4px 0;
	box-sizing: border-box;
}

.ftp-modern .ftp-discord__avatar {
	position: relative;
	display: grid;
	place-items: center;
	flex: 0 0 28px;
	width: 28px;
	height: 28px;
	overflow: hidden;
	border-radius: 50%;
	background: var(--ftp-green-soft);
	color: var(--ftp-text);
	font-size: 12px;
}

.ftp-modern .side-discord__body .ftp-discord__avatar img {
	position: absolute;
	inset: 0;
	width: 28px;
	height: 28px;
	margin: 0;
	border: 0;
	object-fit: cover;
	filter: none;
}

.ftp-modern .ftp-discord__member-text { flex: 1; min-width: 0; }

.ftp-modern .ftp-discord__name,
.ftp-modern .ftp-discord__activity {
	display: block;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	font-size: 13px;
	line-height: 1.35;
}

.ftp-modern .ftp-discord__activity { color: var(--ftp-muted); font-size: 11px; }

.ftp-modern .ftp-discord__join {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 38px;
	margin-top: 14px;
	padding: 0 12px;
	border-radius: 999px;
	background: var(--ftp-green);
	color: #fff !important;
	font-size: 13px;
	font-weight: 800;
	text-decoration: none;
}

.ftp-modern .ftp-discord__join:hover { filter: brightness(1.07); }
.ftp-modern .side-discord__body .ftp-discord__status,
.ftp-modern .side-discord__body .ftp-discord__note {
	margin: 12px 0 0;
	color: var(--ftp-muted);
	font-size: 12px;
	line-height: 1.4;
}

/* FIX-008: Random Game is one card, with an edge-to-edge preview. */
.ftp-modern aside.rightside .block.side-game {
	overflow: hidden;
	border: 0;
	border-radius: 14px;
}

.ftp-modern aside.rightside .side-game .side-game__body {
	padding: 0;
}

.ftp-modern aside.rightside .side-game .side-game__list .side-game-card > a {
	display: block;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

.ftp-modern aside.rightside .side-game .side-game-card__media {
	margin: 0 !important;
}

.ftp-modern aside.rightside .side-game .side-game-card__media img {
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 9;
	margin: 0;
	border: 0;
	border-radius: 0;
	box-shadow: none;
}

.ftp-modern aside.rightside .side-game .side-game-card > a > b {
	margin: 0;
	padding: 12px 14px 14px;
}

.ftp-modern .side-discord__body img {
	width: 48px;
	height: 48px;
	margin: 4px auto 8px;
	object-fit: cover;
}

.ftp-modern .side-discord__body p {
	margin: 0 0 12px;
	color: var(--ftp-muted);
}

.ftp-modern .side-discord__body .btn {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 40px;
	padding: 0 14px;
	font-size: 13px;
}

.ftp-modern .banner {
	text-align: center;
	background: #fff;
}

.ftp-modern .navigation {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	flex-wrap: wrap;
	margin: 20px 0 12px;
	text-align: center;
}

.ftp-modern .navigation:after {
	display: none;
}

.ftp-modern .navigation .pages {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 5px;
	flex-wrap: wrap;
	text-align: center;
}

.ftp-modern .navigation .pages > *,
.ftp-modern .page_prev > *,
.ftp-modern .page_next > * {
	box-sizing: border-box;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 34px;
	height: 34px;
	padding: 0 11px;
	border: 1px solid var(--ftp-line);
	border-radius: 8px;
	background: #fff;
	color: var(--ftp-text);
	font-size: 13px;
	font-weight: 900;
	line-height: 1;
	text-decoration: none !important;
	box-shadow: 0 6px 16px rgba(35,55,30,.08);
}

.ftp-modern .page_prev > *,
.ftp-modern .page_next > * {
	min-width: 62px;
	color: var(--ftp-green-dark);
}

.ftp-modern .navigation .pages > span:not(.nav_ext),
.ftp-modern .navigation .pages > a:hover,
.ftp-modern .page_prev > a:hover,
.ftp-modern .page_next > a:hover {
	border-color: var(--ftp-green);
	background: var(--ftp-green);
	color: #fff;
	box-shadow: 0 8px 18px rgba(67,165,31,.2);
}

.ftp-modern .navigation .pages > .nav_ext {
	min-width: 34px;
	padding: 0 8px;
	background: var(--ftp-green);
	color: #fff;
}

.ftp-modern .page_next-prev {
	float: none;
	height: auto;
	background: transparent;
	box-shadow: none;
}

.ftp-modern .page_next-prev *,
.ftp-modern .page_prev,
.ftp-modern .page_next {
	float: none;
}

.ftp-modern .ftp-footer-scene {
	position: relative;
	width: 100%;
	height: clamp(150px, 11.72vw, 300px);
	margin-top: 14px;
	margin-bottom: -1px;
	background-image: url("../images/new/footer.webp");
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: cover;
	pointer-events: none;
}

.ftp-modern .ftp-footer-scene:after {
	display: none;
}

.ftp-modern .footer_menu {
	background: #172017;
	box-shadow: inset 0 3px 3px rgba(0,0,0,.32);
	color: #c8d5c4;
}

.ftp-modern .footer_menu {
	min-height: 150px;
	padding: 34px 24px 38px;
	box-sizing: border-box;
}

.ftp-modern .footer_menu .midside {
	float: none;
	width: min(1120px, 100%);
	margin: 0 auto;
	padding: 0;
}

.ftp-modern .footer_menu .foot_menu {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 42px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.ftp-modern .footer_menu .foot_menu > li {
	float: none;
	width: auto;
	padding: 0;
}

.ftp-modern .footer_menu .foot_menu > li > b {
	display: block;
	margin: 0 0 14px;
	color: #f1f7ee;
	font-size: 14px;
	font-weight: 900;
}

.ftp-modern .footer_menu .foot_menu nav {
	display: grid;
	gap: 8px;
}

.ftp-modern .footer_menu .foot_menu a {
	color: #93a391;
	font-size: 13px;
	font-weight: 600;
}

.ftp-modern .footer_menu .foot_menu a:hover {
	color: #fff;
}

.ftp-modern .footer {
	display: none;
}

.ftp-modern .footer .midside,
.ftp-modern .footer .rightside {
	float: none;
	width: auto;
	margin: 0;
	padding: 0;
}

.ftp-modern .page_form {
	box-sizing: border-box;
	width: 100%;
	max-width: none;
	min-height: 100vh;
	padding-left: 0;
	background:
		radial-gradient(circle at 24% 16%, rgba(67,165,31,.12) 0 18%, rgba(67,165,31,0) 46%),
		radial-gradient(circle at 86% 12%, rgba(255,138,30,.1) 0 16%, rgba(255,138,30,0) 42%),
		linear-gradient(180deg, #fbfdf9 0, #f4f7f2 44%, #eef3eb 100%);
	background-attachment: scroll;
	color: var(--ftp-text);
	font-family: "Manrope", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
}

.ftp-modern .page_form__body {
	box-sizing: border-box;
	width: min(760px, calc(100% - 40px));
	margin: 0 auto;
	padding: 56px 0 28px;
}

.ftp-modern .page_form__back {
	position: fixed;
	left: 24px;
	top: 24px;
	z-index: 20;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	padding: 0;
	border: 1px solid var(--ftp-line);
	border-radius: 50%;
	background: rgba(255,255,255,.92);
	box-shadow: var(--ftp-shadow-soft);
}

.ftp-modern .page_form__back:after {
	display: none;
}

.ftp-modern .page_form__theme {
	position: fixed;
	left: 84px;
	top: 24px;
	z-index: 20;
	width: 48px;
	height: 48px;
	border-radius: 50%;
}

.ftp-modern .page_form__back > .icon {
	position: static;
	width: 22px;
	height: 22px;
	margin: 0;
	fill: var(--ftp-green-dark);
	opacity: 1;
}

.ftp-modern .page_form__logo {
	width: min(120px, 40vw);
	height: auto;
	margin: 0 auto 20px;
}

.ftp-modern .page_form__inner {
	padding: 28px;
	border: 1px solid var(--ftp-line);
	border-radius: 22px;
}

.ftp-modern .page_form__body > .box:not(.berrors),
.ftp-modern .page_form__body > .story,
.ftp-modern .page_form__body > .baseform,
.ftp-modern .page_form__body > .static {
	box-sizing: border-box;
	padding: 28px;
	border: 1px solid var(--ftp-line);
	border-radius: 22px;
	background: #fff;
	color: var(--ftp-text);
	box-shadow: var(--ftp-shadow);
}

.ftp-modern .page_form__body > .berrors {
	padding: 28px;
	border-radius: 22px;
	box-shadow: var(--ftp-shadow);
}

.ftp-modern .page_form__body > .box:not(.berrors) + .page_form__inner,
.ftp-modern .page_form__body > .story + .page_form__inner,
.ftp-modern .page_form__body > .baseform + .page_form__inner,
.ftp-modern .page_form__body > .static + .page_form__inner {
	margin-top: 18px;
}

.ftp-modern .page_form__body > .box:not(.berrors) h1,
.ftp-modern .page_form__body > .box:not(.berrors) h2,
.ftp-modern .page_form__body > .box:not(.berrors) h3,
.ftp-modern .page_form__body > .story h1,
.ftp-modern .page_form__body > .story h2,
.ftp-modern .page_form__body > .story h3,
.ftp-modern .page_form__body > .baseform h1,
.ftp-modern .page_form__body > .baseform h2,
.ftp-modern .page_form__body > .baseform h3,
.ftp-modern .page_form__body > .static h1,
.ftp-modern .page_form__body > .static h2,
.ftp-modern .page_form__body > .static h3 {
	margin-top: 0;
	color: #111b11;
	font-weight: 900;
	letter-spacing: 0;
}

.ftp-modern .page_form__body > .box:not(.berrors) p,
.ftp-modern .page_form__body > .story p,
.ftp-modern .page_form__body > .baseform p,
.ftp-modern .page_form__body > .static p {
	margin: 0 0 12px;
}

.ftp-modern .page_form__body > .box:not(.berrors) ul,
.ftp-modern .page_form__body > .story ul,
.ftp-modern .page_form__body > .baseform ul,
.ftp-modern .page_form__body > .static ul {
	margin: 10px 0 0;
	padding-left: 22px;
}

.ftp-modern .page_form__inner > .title {
	margin: 0 0 18px;
	color: #111b11;
	font-size: 28px;
	line-height: 1.15;
	font-weight: 900;
	letter-spacing: 0;
}

.ftp-modern .page_form__form {
	font-size: 15px;
}

.ftp-modern .page_form__form .regtext {
	margin: 0 0 18px;
	padding: 14px 16px;
	border: 1px solid var(--ftp-line);
	border-radius: 14px;
	color: var(--ftp-muted);
	line-height: 1.55;
}

.ftp-modern .page_form__form .form-group {
	margin-bottom: 14px;
}

.ftp-modern .page_form__form .form-group > label {
	display: block;
	margin-bottom: 7px;
	color: #40503d;
	font-size: 13px;
	font-weight: 900;
}

.ftp-modern .page_form__form .form-group input,
.ftp-modern .page_form__form .form-group textarea,
.ftp-modern .page_form__form .form-group select,
.ftp-modern .page_form__form .c-captcha input {
	width: 100%;
	min-height: 52px;
	padding: 0 15px;
	border: 1px solid var(--ftp-line-strong);
	border-radius: 14px;
	background: #fff;
	color: var(--ftp-text);
	font-size: 15px;
	font-weight: 700;
	line-height: 1.35;
}

.ftp-modern .page_form__form .form-group textarea {
	min-height: 130px;
	padding-top: 13px;
	padding-bottom: 13px;
}

.ftp-modern .page_form__form .login_check {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 10px;
	position: static;
}

.ftp-modern .page_form__form .login_check > input {
	padding-right: 15px;
}

.ftp-modern .page_form__form .login_check > .btn {
	position: static;
	width: auto;
	min-width: 126px;
	min-height: 52px;
	margin: 0;
	padding: 0 16px;
	font-weight: 900;
}

.ftp-modern .page_form__form .c-captcha {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	align-items: center;
}

.ftp-modern .page_form__form .c-captcha img {
	width: 160px;
	height: 80px;
	border: 1px solid var(--ftp-line);
	border-radius: 12px;
	object-fit: cover;
}

.ftp-modern .page_form__form .c-captcha input {
	width: min(260px, 100%);
	flex: 1 1 220px;
}

.ftp-modern .page_form__form .form_submit {
	display: flex;
	margin-top: 18px;
	padding-top: 18px;
	border-top: 1px solid var(--ftp-line);
}

.ftp-modern .page_form__form .form_submit > .btn {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 52px;
	font-size: 15px;
	font-weight: 900 !important;
}

.ftp-modern .page_form__foot {
	margin-top: 22px;
	padding-bottom: 0;
	color: var(--ftp-muted);
	text-align: center;
}

@media (max-width: 1180px) {
	.ftp-modern {
		--ftp-left-gutter-min: 16px;
	}

	.ftp-modern #header_menu,
.ftp-modern .ftp-hero,
.ftp-modern .conteiner {
		width: min(100% - 32px, 1480px);
	}

	.ftp-modern .home-new__grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}

	.ftp-modern .conteiner {
		grid-template-columns: minmax(0, 1fr) 300px;
	}
}

@media (max-width: 980px) {
	.ftp-modern .ftp-hero {
		grid-template-columns: 92px minmax(0, 1fr);
	}

	.ftp-modern .ftp-hero__actions {
		grid-column: 1 / -1;
	}

	.ftp-modern .conteiner {
		grid-template-columns: 1fr;
	}

	.ftp-modern aside.rightside {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 16px;
		/* FIX-032: keep each section at its own content height. */
		align-items: start;
	}

	/* The request gets its own row; chat and random game share the next. */
	.ftp-modern aside.rightside > .side-actions,
	.ftp-modern aside.rightside > .side-discord {
		grid-column: 1 / -1;
	}

	.ftp-modern aside.rightside > * {
		margin-bottom: 0;
	}
}

/* FIX-032: grid gaps replace block margins only in the two-column layout. */
@media (min-width: 641px) and (max-width: 980px) {
	.ftp-modern aside.rightside > .block {
		margin-bottom: 0;
	}
}

@media (min-width: 981px) and (max-width: 1260px) {
	.ftp-modern #header_menu {
		grid-template-columns: auto minmax(0, 1fr) 46px 56px auto;
		grid-template-areas:
			"logo menu theme discord login"
			"search search search search search";
		gap: 10px 12px;
		padding: 9px 16px;
	}

	.ftp-modern .logotype {
		grid-area: logo;
		width: clamp(150px, 18vw, 190px);
		height: 54px;
	}

	.ftp-modern #top_menu {
		grid-area: menu;
		justify-content: center;
		overflow: visible;
	}

	.ftp-modern #top_menu > a,
	.ftp-modern #top_menu > .top-menu-dd > .top-menu-dd__summary {
		min-height: 36px;
		padding: 0 10px;
		font-size: 12px;
	}

	.ftp-modern #q_search {
		display: block !important;
		grid-area: search;
		min-width: 0;
		width: 100% !important;
		opacity: 1 !important;
		visibility: visible !important;
	}

	.ftp-modern #header_menu > .ftp-theme-toggle {
		grid-area: theme;
		width: 46px;
		height: 46px;
		border-radius: 18px;
	}

	.ftp-modern .header-discord {
		grid-area: discord;
		width: 56px;
		height: 56px;
		border-radius: 20px;
	}

	.ftp-modern #login_pane {
		grid-area: login;
		align-self: center;
	}

	.ftp-modern #login_pane > li > .btn-border {
		min-height: 44px;
		padding: 0 14px;
	}

	.ftp-modern .profile-trigger {
		grid-template-columns: 42px minmax(0, 1fr);
		height: 54px;
		min-width: 110px;
		max-width: 126px;
		gap: 7px;
		padding: 6px 8px 6px 6px;
	}

	.ftp-modern .profile-trigger__avatar {
		width: 42px;
		height: 42px;
	}
}

@media (min-width: 881px) and (max-width: 980px) {
	.ftp-modern .DLEPush {
		top: 124px;
	}

	.ftp-modern #header_menu {
		grid-template-columns: auto minmax(0, 1fr) 42px 50px auto;
		grid-template-areas:
			"logo menu theme discord login"
			"search search search search search";
		gap: 8px 10px;
		padding: 9px 16px;
	}

	.ftp-modern .logotype {
		grid-area: logo;
		width: min(150px, 20vw);
		height: 48px;
	}

	.ftp-modern #top_menu {
		display: flex;
		grid-area: menu;
		justify-content: center;
	}

	.ftp-modern #top_menu > a,
	.ftp-modern #top_menu > .top-menu-dd > .top-menu-dd__summary {
		min-height: 34px;
		padding: 0 9px;
		font-size: 12px;
	}

	.ftp-modern #q_search {
		display: block;
		grid-area: search;
		min-width: 0;
	}

	.ftp-modern #header_menu > .ftp-theme-toggle,
	.ftp-modern .ftp-theme-toggle {
		grid-area: theme;
		width: 42px;
		height: 42px;
		border-radius: 16px;
	}

	.ftp-modern .header-discord {
		grid-area: discord;
		width: 50px;
		height: 50px;
		border-radius: 18px;
	}

	.ftp-modern .header-discord img {
		width: 26px;
		height: 26px;
	}

	.ftp-modern #login_pane {
		grid-area: login;
		align-self: center;
		margin: 0;
	}

	.ftp-modern #login_pane > li > .btn-border {
		min-height: 42px;
		padding: 0 13px;
	}

	.ftp-modern .profile-trigger {
		grid-template-columns: 38px minmax(0, 1fr);
		align-items: center;
		height: 50px;
		min-width: 100px;
		max-width: 116px;
		gap: 6px;
		padding: 5px 7px 5px 5px;
		box-sizing: border-box;
	}

	.ftp-modern .profile-trigger__avatar {
		width: 38px;
		height: 38px;
	}

	.ftp-modern .profile-trigger__stat {
		min-width: 42px;
		font-size: 12px;
	}

	.ftp-modern .profile-trigger__stat img {
		width: 13px;
		height: 13px;
	}
}

@media (min-width: 761px) and (max-width: 880px) {
	.ftp-modern .DLEPush {
		top: 170px;
	}

	.ftp-modern #header_menu {
		grid-template-columns: minmax(0, 1fr) 44px 42px 50px auto;
		grid-template-areas:
			"logo menu-btn theme discord login"
			"search search search search search"
			"menu menu menu menu menu";
		gap: 8px 10px;
		padding: 9px 16px;
	}

	.ftp-modern .logotype {
		grid-area: logo;
		width: min(145px, 22vw);
		height: 48px;
	}

	.ftp-modern #top_menu {
		display: none;
		grid-area: menu;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		width: 100%;
		gap: 6px;
		padding-top: 2px;
		white-space: normal;
	}

	.ftp-modern.mobile_menu_open #top_menu {
		display: grid;
	}

	.ftp-modern #top_menu > a,
	.ftp-modern #top_menu > .top-menu-dd > .top-menu-dd__summary {
		justify-content: center;
		width: 100%;
		box-sizing: border-box;
		min-height: 32px;
		padding: 0 7px;
		font-size: 11px;
	}

	.ftp-modern #mobile_menu_btn {
		display: inline-flex;
		grid-area: menu-btn;
	}

	.ftp-modern .top-menu-dd {
		display: flex;
		width: 100%;
	}

	.ftp-modern .top-menu-dd__menu {
		position: fixed;
		top: 118px;
		left: 16px;
		right: 16px;
		width: auto;
		min-width: 0;
		max-width: none;
	}

	.ftp-modern #q_search {
		display: block;
		grid-area: search;
		min-width: 0;
	}

	.ftp-modern #header_menu > .ftp-theme-toggle,
	.ftp-modern .ftp-theme-toggle {
		grid-area: theme;
		width: 42px;
		height: 42px;
		border-radius: 16px;
	}

	.ftp-modern .header-discord {
		grid-area: discord;
		width: 50px;
		height: 50px;
		border-radius: 18px;
	}

	.ftp-modern .header-discord img {
		width: 26px;
		height: 26px;
	}

	.ftp-modern #login_pane {
		grid-area: login;
		align-self: center;
		margin: 0;
	}

	.ftp-modern #login_pane > li > .btn-border {
		min-height: 42px;
		padding: 0 13px;
	}

	.ftp-modern .profile-trigger {
		grid-template-columns: 38px minmax(0, 1fr);
		align-items: center;
		height: 50px;
		min-width: 100px;
		max-width: 116px;
		gap: 6px;
		padding: 5px 7px 5px 5px;
		box-sizing: border-box;
	}

	.ftp-modern .profile-trigger__avatar {
		width: 38px;
		height: 38px;
	}

	.ftp-modern .profile-trigger__stat {
		min-width: 42px;
		font-size: 12px;
	}

	.ftp-modern .profile-trigger__stat img {
		width: 13px;
		height: 13px;
	}
}

@media (min-width: 641px) and (max-width: 760px) {
	.ftp-modern .DLEPush {
		top: 170px;
	}

	.ftp-modern #header_menu {
		grid-template-columns: minmax(0, 1fr) 44px 42px auto;
		grid-template-areas:
			"logo menu-btn theme login"
			"search search search search"
			"menu menu menu menu";
		gap: 8px 10px;
		padding: 9px 16px;
	}

	.ftp-modern .logotype {
		grid-area: logo;
		width: min(150px, 36vw);
		height: 48px;
	}

	.ftp-modern #mobile_menu_btn {
		display: inline-flex;
		grid-area: menu-btn;
	}

	.ftp-modern #top_menu {
		display: none;
		grid-area: menu;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		width: 100%;
		gap: 6px;
		padding-top: 2px;
		white-space: normal;
		overflow-x: visible;
		overflow-y: visible;
	}

	.ftp-modern.mobile_menu_open #top_menu {
		display: grid;
	}

	.ftp-modern #top_menu > a,
	.ftp-modern #top_menu > .top-menu-dd > .top-menu-dd__summary {
		justify-content: center;
		width: 100%;
		box-sizing: border-box;
		min-height: 32px;
		padding: 0 8px;
		font-size: 11px;
	}

	.ftp-modern .top-menu-dd {
		display: flex;
		width: 100%;
	}

	.ftp-modern .top-menu-dd__menu {
		position: fixed;
		top: 118px;
		left: 16px;
		right: 16px;
		width: auto;
		min-width: 0;
		max-width: none;
	}

	.ftp-modern #q_search {
		display: block !important;
		grid-area: search;
		min-width: 0;
		width: 100% !important;
		opacity: 1 !important;
		visibility: visible !important;
	}

	.ftp-modern .q_search > input {
		height: 40px;
	}

	.ftp-modern .q_search .q_search_btn {
		width: 36px;
		height: 36px;
	}

	.ftp-modern #header_menu > .ftp-theme-toggle,
	.ftp-modern .ftp-theme-toggle {
		grid-area: theme;
		width: 42px;
		height: 42px;
		border-radius: 16px;
	}

	.ftp-modern .header-discord {
		display: none;
		grid-area: discord;
		width: 50px;
		height: 50px;
		border-radius: 18px;
	}

	.ftp-modern .header-discord img {
		width: 26px;
		height: 26px;
	}

	.ftp-modern #login_pane {
		grid-area: login;
		align-self: center;
		margin: 0;
	}

	.ftp-modern #login_pane > li > .btn-border {
		min-height: 42px;
		padding: 0 13px;
	}

	.ftp-modern .profile-trigger {
		grid-template-columns: 38px minmax(0, 1fr);
		align-items: center;
		height: 50px;
		min-width: 100px;
		max-width: 116px;
		gap: 6px;
		padding: 5px 7px 5px 5px;
		box-sizing: border-box;
	}

	.ftp-modern .profile-trigger__avatar {
		width: 38px;
		height: 38px;
	}

	.ftp-modern .profile-trigger__stat {
		min-width: 42px;
		font-size: 12px;
	}

	.ftp-modern .profile-trigger__stat img {
		width: 13px;
		height: 13px;
	}
}

@media (max-width: 640px) {
	.ftp-modern #header {
		top: -10px;
		padding: 6px 0 8px;
	}

	.ftp-modern .DLEPush {
		top: 136px;
		right: 10px;
		left: 10px;
	}

	.ftp-modern .DLEPush-notification.wrapper {
		min-width: 0;
		max-width: none;
	}

	.ftp-modern #header_menu {
		border-radius: 20px;
	}

	.ftp-modern #header_menu:before {
		border-radius: 19px;
	}

	.ftp-modern {
		font-size: 13px;
	}

	.ftp-modern .home-new__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 10px;
	}

	.ftp-modern .home-new__head h2 {
		font-size: 18px;
	}

	.ftp-modern .home-releases-title h2 {
		font-size: 18px;
	}

	.ftp-modern .home-releases-view {
		display: none;
	}

	.ftp-modern .ftp-releases-title--generated {
		display: none;
	}

	.ftp-modern #content:is(.ftp-releases-rows, html.ftp-view-rows #content:has(> .game-card)) > .game-card {
		grid-template-columns: 1fr;
		min-height: 0;
	}

	.ftp-modern #content:is(.ftp-releases-rows, html.ftp-view-rows #content:has(> .game-card)) > .game-card .game-card__media-link,
	.ftp-modern #content:is(.ftp-releases-rows, html.ftp-view-rows #content:has(> .game-card)) > .game-card .game-card__media {
		height: auto;
		min-height: 0;
	}

	.ftp-modern #content:is(.ftp-releases-rows, html.ftp-view-rows #content:has(> .game-card)) > .game-card .game-card__media {
		aspect-ratio: 16 / 9;
	}

	.ftp-modern #header_menu,
.ftp-modern .ftp-hero,
.ftp-modern .conteiner {
		width: calc(100% - 20px);
	}

	.ftp-modern #header_menu {
		grid-template-areas:
			"logo menu-btn theme login"
			"search search search search"
			"menu menu menu menu";
		min-height: 0;
		padding: 10px;
	}

	.ftp-modern .logotype {
		grid-area: logo;
		justify-content: start;
		height: 50px;
		min-width: 0;
	}

	.ftp-modern #mobile_menu_btn {
		display: inline-flex;
		grid-area: menu-btn;
	}

	.ftp-modern #top_menu {
		display: none;
		grid-area: menu;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		width: 100%;
		gap: 6px;
		padding-top: 2px;
		white-space: normal;
		overflow-x: visible;
		overflow-y: visible;
	}

	.ftp-modern.mobile_menu_open #top_menu {
		display: grid;
	}

	.ftp-modern #top_menu > a,
	.ftp-modern #top_menu > .top-menu-dd > .top-menu-dd__summary {
		justify-content: center;
		width: 100%;
		box-sizing: border-box;
		min-height: 32px;
		padding: 0 8px;
		font-size: 11px;
	}

	.ftp-modern .top-menu-dd {
		display: flex;
		width: 100%;
	}

	.ftp-modern .top-menu-dd__menu {
		position: fixed;
		top: 126px;
		left: 10px;
		right: 10px;
		width: auto;
		min-width: 0;
		max-width: none;
	}

	.ftp-modern #login_pane {
		display: block !important;
		grid-area: login;
		justify-self: end;
		align-self: center;
		opacity: 1 !important;
		visibility: visible !important;
		margin: 0 !important;
	}

	.ftp-modern .header-discord {
		display: none;
	}

	.ftp-modern #header_menu > .ftp-theme-toggle {
		display: inline-flex;
		grid-area: theme;
		justify-self: end;
		align-self: center;
		border-radius: 16px;
	}

	.ftp-modern .profile-trigger {
		grid-template-columns: 34px minmax(0, 1fr);
		align-items: center;
		align-self: center;
		min-width: 88px;
		max-width: 104px;
		height: 44px;
		gap: 5px;
		padding: 4px 6px 4px 4px;
		box-sizing: border-box;
	}

	.ftp-modern .profile-trigger__avatar {
		width: 34px;
		height: 34px;
		border-width: 2px;
	}

	.ftp-modern .profile-trigger__stat {
		min-width: 38px;
		min-height: 22px;
		padding: 0 6px;
		background: var(--ftp-green-soft);
		font-size: 12px;
	}

	.ftp-modern .profile-trigger__stat img {
		width: 14px;
		height: 14px;
	}

	.ftp-modern .ui-dialog.ftp-profile-dialog {
		width: calc(100vw - 20px) !important;
	}

	.ftp-modern .ftp-profile-popup__hero {
		grid-template-columns: 86px minmax(0, 1fr);
		gap: 12px;
		padding: 14px;
	}

	.ftp-modern .ftp-profile-popup .avatar,
	.ftp-modern .ftp-profile-popup .avatar .cover {
		width: 86px;
		height: 86px;
		border-radius: 22px;
	}

	.ftp-modern .ftp-profile-popup__meta {
		grid-template-columns: 1fr;
		padding: 12px 14px 14px;
	}

	.ftp-modern .ui-dialog.ftp-profile-dialog .ui-dialog-buttonpane {
		padding: 0 14px 14px;
	}

	.ftp-modern .ui-dialog.ftp-profile-dialog .ui-dialog-buttonset {
		grid-template-columns: 1fr;
	}

	.ftp-modern #login_pane .dropdown-form {
		position: fixed;
		top: 12px;
		left: 12px;
		right: 12px;
		bottom: auto;
		width: auto;
		min-width: 0;
		height: auto;
		max-height: calc(100dvh - 24px);
		padding: 64px 20px 22px;
		border: 1px solid var(--ftp-line);
		border-radius: 20px;
		overflow-x: hidden;
		overflow-y: auto;
		z-index: 20000;
		box-shadow: 0 20px 60px rgba(20, 34, 18, .24);
	}

	.ftp-modern #login_pane .login_form {
		gap: 14px;
	}

	.ftp-modern #login_pane .login_form > li > input {
		height: 58px;
		padding-left: 52px;
		border-radius: 15px;
		font-size: 16px;
	}

	.ftp-modern .login_form__icon {
		left: 18px;
		width: 20px;
		height: 20px;
	}

	.ftp-modern #login_pane .login_form__submit {
		min-height: 56px;
		margin-top: 16px;
		font-size: 16px;
	}

	.ftp-modern #login_pane .login_form__foot {
		grid-template-columns: 1fr;
		gap: 12px;
		margin-top: 16px;
	}

	.ftp-modern #login_pane .login_form__foot a {
		justify-content: flex-start;
		min-height: 52px;
		padding: 0 16px;
		font-size: 15px;
	}

	.ftp-modern #login_pane .login_form__foot img {
		width: 20px;
		height: 20px;
	}

	.ftp-modern #login_pane .dropdown-form .login_form__close {
		position: absolute;
		top: 18px;
		right: 18px;
		z-index: 20001;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 42px;
		height: 42px;
		padding: 0;
		border: 1px solid var(--ftp-line);
		border-radius: 50%;
		background: #fff;
		box-shadow: var(--ftp-shadow-soft);
		cursor: pointer;
	}

	.ftp-modern .login_form__close:before,
	.ftp-modern .login_form__close:after {
		position: absolute;
		width: 18px;
		height: 2px;
		border-radius: 1px;
		background: var(--ftp-text);
		content: "";
	}

	.ftp-modern .login_form__close:before {
		transform: rotate(45deg);
	}

	.ftp-modern .login_form__close:after {
		transform: rotate(-45deg);
	}

	.ftp-modern #q_search {
		display: block !important;
		position: static;
		grid-area: search;
		width: 100% !important;
		height: auto;
		margin: 0;
		transform: none !important;
		opacity: 1 !important;
		visibility: visible !important;
	}

	.ftp-modern .ftp-hero {
		grid-template-columns: 1fr;
		margin-top: 14px;
		padding: 16px;
	}

	.ftp-modern .ftp-donate-strip {
		align-items: stretch;
		flex-direction: column;
		gap: 12px;
		margin-bottom: 14px;
		padding: 13px;
		border-radius: 16px;
	}

	.ftp-modern .ftp-donate-strip__btn {
		width: 100%;
	}

	.ftp-modern .ftp-hero__media {
		width: 86px;
		height: 70px;
	}

	.ftp-modern .ftp-hero h1 {
		font-size: 22px;
	}

	.ftp-modern .ftp-hero__actions {
		flex-direction: column;
		align-items: stretch;
	}

	.ftp-modern .conteiner {
		margin-top: 14px;
		padding-bottom: 20px;
	}

	.ftp-modern .ftp-footer-scene {
		height: 140px;
		margin-top: 10px;
		background-position: right bottom;
	}

	.ftp-modern .ftp-footer-scene:after {
		height: 46px;
	}

	.ftp-modern #content {
		grid-template-columns: 1fr;
	}

	.ftp-modern .game-card__head {
		min-height: 48px;
		padding: 11px 44px 11px 14px;
	}

	.ftp-modern .game-card__title {
		font-size: 17px;
	}

	.ftp-modern .game-card__summary img {
		float: none;
		width: 100%;
		margin: 0 0 12px;
	}

	.ftp-modern .game-card__tools,
	.ftp-modern .game-card__meta,
	.ftp-modern .game-page__tools,
	.ftp-modern .game-page__meta {
		align-items: flex-start;
		flex-direction: column;
	}

	.ftp-modern .game-card__more {
		width: 100%;
		text-align: center;
	}

	.ftp-modern .game-page__title {
		font-size: 22px;
	}

	.ftp-modern .game-page__title-row {
		grid-template-columns: minmax(0, 1fr);
	}

	.ftp-modern .game-page__actions {
		grid-column: 1;
		margin-top: 8px;
	}

	.ftp-modern .game-page__subline {
		gap: 6px;
	}

	.ftp-modern .game-page__subline > span:not(.fixed_label),
	.ftp-modern .game-page__update {
		padding-inline: 10px;
	}

	.ftp-modern .game-page__head,
.ftp-modern .game-page__tools,
.ftp-modern .game-page__meta {
		padding-left: 16px;
		padding-right: 16px;
	}

	.ftp-modern .ftp-download a {
		justify-content: center;
		width: 100%;
		text-align: center;
	}

	.ftp-modern .ftp-xfields,
	.ftp-modern .ftp-xfields tbody,
	.ftp-modern .ftp-xfields tr,
	.ftp-modern .ftp-xfields td {
		display: block;
		width: 100%;
	}

	.ftp-modern .ftp-xfields tr {
		overflow: hidden;
		border: 1px solid #dfeada;
		border-radius: 12px;
	}

	.ftp-modern .ftp-xfields td,
	.ftp-modern .ftp-xfields td:first-child,
	.ftp-modern .ftp-xfields td:last-child {
		border: 0;
		border-radius: 0;
	}

	.ftp-modern .ftp-xfields td:first-child {
		padding-bottom: 4px;
		background: #f4f9f1;
	}

	.ftp-modern .ftp-template-tools {
		align-items: stretch;
		flex-direction: column;
	}

	.ftp-modern .comments .com_list {
		padding: 10px;
	}

	.ftp-modern .ftp-comment {
		grid-template-columns: 58px minmax(0, 1fr);
		gap: 10px;
		padding: 12px;
		border-radius: 14px;
	}

	.ftp-modern .ftp-comment__avatar .cover {
		width: 58px;
		height: 58px;
		border-radius: 18px;
	}

	.ftp-modern .ftp-comment__head,
	.ftp-modern .ftp-comment__foot {
		align-items: flex-start;
		flex-direction: column;
	}

	.ftp-modern .ftp-comment__actions {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		width: 100%;
		gap: 8px;
		justify-content: stretch;
	}

	.ftp-modern .ftp-comment__action,
	.ftp-modern .ftp-comment__action a {
		width: 100%;
		min-height: 36px;
		box-sizing: border-box;
		border: 1px solid var(--ftp-line);
		background: #fbfdf9;
		font-size: 12px;
	}

	.ftp-modern .ftp-comment__action a {
		border: 0;
		background: transparent;
	}

	.ftp-modern .ftp-comment__action--complaint {
		grid-column: 1 / -1;
	}

	.ftp-modern .ftp-comment__tools {
		width: 100%;
	}

	.ftp-modern .ftp-comment__rate {
		width: 100%;
	}

	.ftp-modern .ftp-comment__action span {
		display: inline;
	}

	.ftp-modern .page_form__body {
		width: min(100% - 28px, 760px);
		padding: 72px 0 20px;
	}

	.ftp-modern .page_form__back {
		left: 14px;
		top: 14px;
		width: 44px;
		height: 44px;
	}

	.ftp-modern .page_form__theme {
		display: inline-flex;
		left: 68px;
		top: 14px;
		width: 44px;
		height: 44px;
	}

	.ftp-modern .page_form__logo {
		width: min(96px, 32vw);
		margin-bottom: 16px;
	}

	.ftp-modern .page_form__inner,
	.ftp-modern .page_form__body > .box:not(.berrors),
	.ftp-modern .page_form__body > .story,
	.ftp-modern .page_form__body > .baseform,
	.ftp-modern .page_form__body > .static,
	.ftp-modern .page_form__body > .berrors {
		padding: 20px;
		border-radius: 18px;
	}

	.ftp-modern .page_form__inner > .title {
		margin-bottom: 16px;
		font-size: 25px;
	}

	.ftp-modern .page_form__form {
		font-size: 16px;
	}

	.ftp-modern .page_form__form .regtext {
		font-size: 14px;
	}

	.ftp-modern .page_form__form .form-group > label {
		font-size: 14px;
	}

	.ftp-modern .page_form__form .form-group input,
	.ftp-modern .page_form__form .form-group textarea,
	.ftp-modern .page_form__form .form-group select,
	.ftp-modern .page_form__form .c-captcha input {
		min-height: 58px;
		border-radius: 15px;
		font-size: 16px;
	}

	.ftp-modern .page_form__form .login_check {
		grid-template-columns: 1fr;
	}

	.ftp-modern .page_form__form .login_check > .btn,
	.ftp-modern .page_form__form .form_submit > .btn {
		min-height: 58px;
		font-size: 16px;
	}

	.ftp-modern .page_form__form .c-captcha {
		display: grid;
		grid-template-columns: 1fr;
	}

	.ftp-modern .page_form__form .c-captcha img {
		width: auto;
		max-width: 100%;
		height: auto;
		min-height: 0;
		justify-self: start;
		object-fit: contain;
	}

	.ftp-modern .page_form__form .c-captcha input {
		width: 100%;
	}

	.ftp-modern aside.rightside {
		display: block;
	}

	.ftp-modern aside.rightside > * {
		margin-bottom: 12px;
	}

	.ftp-modern .footer_menu {
		min-height: 0;
		padding: 24px 18px 32px;
	}

	.ftp-modern .footer_menu .midside {
		display: block;
		padding: 0;
	}

	.ftp-modern .footer_menu .foot_menu {
		display: block;
		margin: 0;
	}

	.ftp-modern .footer_menu .foot_menu > li {
		float: none;
		width: auto;
		padding: 0;
	}

	.ftp-modern .footer_menu .foot_menu > li > b {
		margin: 0;
		padding: 14px 0;
		border-top: 1px solid rgba(255,255,255,.18);
		color: #dce9d8;
	}

	.ftp-modern .footer_menu .foot_menu > li:first-child > b {
		border-top: 0;
	}

	.ftp-modern .footer_menu .foot_menu > li > b i {
		background-color: #8fa18c;
	}

	.ftp-modern .footer_menu .foot_menu > li > b.collapsed i,
	.ftp-modern .footer_menu .foot_menu > li > b.collapsed i:after {
		background-color: var(--ftp-blue);
	}

	.ftp-modern .footer_menu .foot_menu nav {
		padding: 0 0 14px;
	}

	.ftp-modern .footer_menu .foot_menu a {
		font-size: 14px;
	}
}

@media (min-width: 761px) {
	.ftp-modern #header_menu,
	.ftp-modern .ftp-hero,
	.ftp-modern .conteiner {
		width: min(1480px, calc(100% - var(--ftp-left-gutter-min) - var(--ftp-right-gutter)));
		margin-right: var(--ftp-right-gutter);
	}
}

@media (max-width: 760px) {
	.ftp-modern .ftp-scroll-top {
		display: none !important;
	}
}

@media (min-width: 641px) and (max-width: 760px) {
	.ftp-modern #content {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

html:not(.ftp-theme-dark) .ftp-modern #content > .box:not(.game-card):not(.berrors),
html:not(.ftp-theme-dark) .ftp-modern #content > .story:not(.game-card):not(.game-page),
html:not(.ftp-theme-dark) .ftp-modern .game-card,
html:not(.ftp-theme-dark) .ftp-modern .game-card__content,
html:not(.ftp-theme-dark) .ftp-modern .game-page,
html:not(.ftp-theme-dark) .ftp-modern .game-page__head,
html:not(.ftp-theme-dark) .ftp-modern .addform,
html:not(.ftp-theme-dark) .ftp-modern .addcomment,
html:not(.ftp-theme-dark) .ftp-modern .addpm,
html:not(.ftp-theme-dark) .ftp-modern .ftp-comment,
html:not(.ftp-theme-dark) .ftp-modern aside.rightside .block,
html:not(.ftp-theme-dark) .ftp-modern aside.rightside .block_bg,
html:not(.ftp-theme-dark) .ftp-modern aside.rightside .banner,
html:not(.ftp-theme-dark) .ftp-modern .page_form__inner,
html:not(.ftp-theme-dark) .ftp-modern .page_form__body > .box:not(.berrors),
html:not(.ftp-theme-dark) .ftp-modern .page_form__body > .story,
html:not(.ftp-theme-dark) .ftp-modern .page_form__body > .baseform,
html:not(.ftp-theme-dark) .ftp-modern .page_form__body > .static,
html:not(.ftp-theme-dark) .ftp-modern .box_in,
html:not(.ftp-theme-dark) .ftp-modern .baseform,
html:not(.ftp-theme-dark) .ftp-modern .static,
html:not(.ftp-theme-dark) .ftp-modern .userinfo,
html:not(.ftp-theme-dark) .ftp-modern .userinfo_top,
html:not(.ftp-theme-dark) .ftp-modern .tab-content,
html:not(.ftp-theme-dark) .ftp-modern .tab-pane,
html:not(.ftp-theme-dark) .ftp-modern .pmlist,
html:not(.ftp-theme-dark) .ftp-modern .pm-box,
html:not(.ftp-theme-dark) .ftp-modern .pm_status,
html:not(.ftp-theme-dark) .ftp-modern .searchtable,
html:not(.ftp-theme-dark) .ftp-modern .table_top_users,
html:not(.ftp-theme-dark) .ftp-modern .vote_more,
html:not(.ftp-theme-dark) .ftp-modern .poll,
html:not(.ftp-theme-dark) .ftp-modern .mass_comments_action,
html:not(.ftp-theme-dark) .ftp-modern .form-sep,
html:not(.ftp-theme-dark) .ftp-modern .com_list,
html:not(.ftp-theme-dark) .ftp-modern .comments .comment:not(.ftp-comment),
html:not(.ftp-theme-dark) .ftp-modern .com_info,
html:not(.ftp-theme-dark) .ftp-modern .com_content,
html:not(.ftp-theme-dark) .ftp-modern .ui-dialog:not(.ftp-profile-dialog),
html:not(.ftp-theme-dark) .ftp-modern .ui-dialog:not(.ftp-profile-dialog) .ui-dialog-content,
html:not(.ftp-theme-dark) .ftp-modern .ui-dialog:not(.ftp-profile-dialog) .ui-dialog-buttonpane,
html:not(.ftp-theme-dark) .ftp-modern .ui-widget-content,
html:not(.ftp-theme-dark) .ftp-modern .ui-autocomplete,
html:not(.ftp-theme-dark) .ftp-modern .ui-menu {
	border-color: var(--ftp-line) !important;
	background: var(--ftp-surface) !important;
	color: var(--ftp-text) !important;
}

html:not(.ftp-theme-dark) .ftp-modern .ftp-game-info,
html:not(.ftp-theme-dark) .ftp-modern .ftp-downloads,
html:not(.ftp-theme-dark) .ftp-modern .ftp-launch,
html:not(.ftp-theme-dark) .ftp-modern .ftp-faq,
html:not(.ftp-theme-dark) .ftp-modern .ftp-primary-xfields,
html:not(.ftp-theme-dark) .ftp-modern .ftp-xfields tr,
html:not(.ftp-theme-dark) .ftp-modern .ftp-profile-popup__meta,
html:not(.ftp-theme-dark) .ftp-modern .ftp-profile-popup__meta > div,
html:not(.ftp-theme-dark) .ftp-modern aside.rightside .topnews a,
html:not(.ftp-theme-dark) .ftp-modern aside.rightside .relnews a,
html:not(.ftp-theme-dark) .ftp-modern .lastcomm a,
html:not(.ftp-theme-dark) .ftp-modern .page_form__form .regtext,
html:not(.ftp-theme-dark) .ftp-modern .profile-trigger__stat,
html:not(.ftp-theme-dark) .ftp-modern .login_pane__admin a,
html:not(.ftp-theme-dark) .ftp-modern .game-card__badge,
html:not(.ftp-theme-dark) .ftp-modern .ftp-comment__admin,
html:not(.ftp-theme-dark) .ftp-modern .ftp-comment__mass {
	border-color: var(--ftp-line) !important;
	background: var(--ftp-surface-2) !important;
}

html:not(.ftp-theme-dark) .ftp-modern .page_form__form .form-group input,
html:not(.ftp-theme-dark) .ftp-modern .page_form__form .form-group textarea,
html:not(.ftp-theme-dark) .ftp-modern .page_form__form .form-group select,
html:not(.ftp-theme-dark) .ftp-modern .page_form__form .c-captcha input,
html:not(.ftp-theme-dark) .ftp-modern .ftp-addnews #category,
html:not(.ftp-theme-dark) .ftp-modern .ftp-addnews select[name="category[]"],
html:not(.ftp-theme-dark) .ftp-modern .ftp-addnews select[name="catlist[]"],
html:not(.ftp-theme-dark) .ftp-modern .ftp-addnews select[name="catlist"],
html:not(.ftp-theme-dark) .ftp-modern .ftp-addnews .chosen-container-multi .chosen-choices,
html:not(.ftp-theme-dark) .ftp-modern .ftp-addnews .chosen-container-single .chosen-single {
	border-color: var(--ftp-line) !important;
	background: var(--ftp-surface) !important;
	color: var(--ftp-text) !important;
}

html:not(.ftp-theme-dark) .ftp-modern #comment-editor,
html:not(.ftp-theme-dark) .ftp-modern .wseditor,
html:not(.ftp-theme-dark) .ftp-modern .bb-editor,
html:not(.ftp-theme-dark) .ftp-modern .dlecomments-editor,
html:not(.ftp-theme-dark) .ftp-modern .dleaddcomments-editor,
html:not(.ftp-theme-dark) .ftp-modern .dlefastedit-editor,
html:not(.ftp-theme-dark) .ftp-modern .bb-editor iframe,
html:not(.ftp-theme-dark) .ftp-modern .bb-editor textarea,
html:not(.ftp-theme-dark) .ftp-modern #comment-editor textarea {
	border-color: var(--ftp-line) !important;
	background: var(--ftp-surface) !important;
	color: var(--ftp-text) !important;
}

html:not(.ftp-theme-dark) .ftp-modern .tox .tox-editor-header,
html:not(.ftp-theme-dark) .ftp-modern .tox .tox-statusbar {
	border-color: var(--ftp-line) !important;
	color: var(--ftp-text) !important;
}

html:not(.ftp-theme-dark) .ftp-modern .tox .tox-toolbar,
html:not(.ftp-theme-dark) .ftp-modern .tox .tox-toolbar__primary,
html:not(.ftp-theme-dark) .ftp-modern .tox .tox-toolbar-overlord,
html:not(.ftp-theme-dark) .ftp-modern .bb-editor .bb-pane,
html:not(.ftp-theme-dark) .ftp-modern .wseditor .bb-pane,
html:not(.ftp-theme-dark) .ftp-modern aside.rightside .block > .title,
html:not(.ftp-theme-dark) .ftp-modern aside.rightside .block_bg > .title,
html:not(.ftp-theme-dark) .ftp-modern .game-card__footer,
html:not(.ftp-theme-dark) .ftp-modern .game-comments .heading,
html:not(.ftp-theme-dark) .ftp-modern .ftp-comment__foot,
html:not(.ftp-theme-dark) .ftp-modern .page_form__form .form_submit {
	border-color: var(--ftp-line) !important;
	background: linear-gradient(90deg, rgba(67,165,31,.08), var(--ftp-surface-2)) !important;
}

html:not(.ftp-theme-dark) .ftp-modern .mod-chat-container,
html:not(.ftp-theme-dark) .ftp-modern .mod-chat-list,
html:not(.ftp-theme-dark) .ftp-modern .mod-chat-editor,
html:not(.ftp-theme-dark) .ftp-modern .mod-chat-input,
html:not(.ftp-theme-dark) .ftp-modern .mod-chat-settings-panel,
html:not(.ftp-theme-dark) .ftp-modern .mod-chat-archive-container {
	border-color: var(--ftp-line) !important;
	background: var(--ftp-surface) !important;
	color: var(--ftp-text) !important;
}

html:not(.ftp-theme-dark) .ftp-modern .mod-chat-row:hover,
html:not(.ftp-theme-dark) .ftp-modern .mod-chat-message blockquote {
	background: var(--ftp-surface-2) !important;
}

html:not(.ftp-theme-dark) .ftp-modern .dropdown-menu li a:hover,
html:not(.ftp-theme-dark) .ftp-modern #searchsuggestions a:hover {
	background: var(--ftp-surface-2) !important;
	color: var(--ftp-green-dark) !important;
}

html.ftp-theme-dark {
	color-scheme: dark;
}

html.ftp-theme-dark .ftp-modern,
.ftp-modern.ftp-theme-dark {
	--ftp-notice-bg: rgba(255,154,52,.12);
	--ftp-notice-border: rgba(255,154,52,.34);
	--ftp-notice-text: #ffd6b0;
	--ftp-notice-title: #ffe1c2;
	--ftp-push-success: #a8df94;
	--ftp-push-success-soft: rgba(77,175,50,.16);
	--ftp-push-warning: #ffd6b0;
	--ftp-push-warning-soft: rgba(255,154,52,.14);
	--ftp-push-error: #ff9a8e;
	--ftp-push-error-soft: rgba(255,102,112,.14);
	--ftp-push-info: #9fc9f2;
	--ftp-push-info-soft: rgba(101,168,255,.14);
	--ftp-bg: #111813;
	--ftp-surface: #17211b;
	--ftp-surface-2: #1d2a22;
	--ftp-surface-3: #24352a;
	--ftp-text: #e8f0e6;
	--ftp-muted: #aebbad;
	--ftp-line: rgba(210, 225, 205, .14);
	--ftp-line-strong: rgba(210, 225, 205, .24);
	--ftp-green: #4daf32;
	--ftp-green-dark: #a8df94;
	--ftp-green-soft: rgba(77, 175, 50, .13);
	--ftp-orange: #ff9a34;
	--ftp-red: #ff6670;
	--ftp-blue: #65a8ff;
	--ftp-shadow: 0 22px 56px rgba(0, 0, 0, .26);
	--ftp-shadow-soft: 0 12px 30px rgba(0, 0, 0, .18);
	background: #101712 linear-gradient(180deg, #151f18 0, var(--ftp-bg) 360px, #101712 100%) no-repeat;
	background-attachment: scroll;
	background-repeat: no-repeat;
	background-size: auto;
	color: var(--ftp-text);
}

html.ftp-theme-dark .ftp-modern #header {
	padding: 10px 0 12px;
	border-top-color: transparent;
	background:
		linear-gradient(180deg, rgba(17,24,19,.34), rgba(17,24,19,0));
	box-shadow: none;
}

html.ftp-theme-dark .ftp-modern.ftp-header-scrolled #header {
	border-top-color: transparent;
	background:
		linear-gradient(180deg, rgba(17,24,19,.34), rgba(17,24,19,0));
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
	box-shadow: none;
}

html.ftp-theme-dark .ftp-modern #header:before {
	display: none;
}

html.ftp-theme-dark .ftp-modern #header_menu {
	overflow: visible;
	isolation: isolate;
	box-sizing: border-box;
	min-height: 70px;
	border: 1px solid rgba(150,220,128,.2);
	border-radius: 26px;
	background:
		radial-gradient(ellipse at 18% -18%, rgba(77,175,50,.2), rgba(77,175,50,.07) 36%, rgba(77,175,50,0) 70%),
		linear-gradient(110deg, rgba(77,175,50,.1), rgba(255,255,255,.025) 34%, rgba(77,175,50,.035) 100%),
		rgba(17,28,21,.66);
	backdrop-filter: blur(20px) saturate(1.08);
	-webkit-backdrop-filter: blur(20px) saturate(1.08);
	background-clip: padding-box;
	box-shadow: 0 14px 34px rgba(0,0,0,.22);
}

html.ftp-theme-dark .ftp-modern #header_menu:before {
	/* FIX-006: remove the second rounded glass surface. */
	display: none;
	position: absolute;
	inset: 1px;
	z-index: -1;
	border-radius: 25px;
	background:
		linear-gradient(110deg, rgba(255,255,255,.11), rgba(255,255,255,.025) 32%, rgba(255,255,255,0) 58%),
		linear-gradient(270deg, rgba(77,175,50,.12), rgba(77,175,50,.035) 44%, rgba(77,175,50,0) 68%);
	content: "";
	pointer-events: none;
}

html.ftp-theme-dark .ftp-modern .title,
html.ftp-theme-dark .ftp-modern .heading,
html.ftp-theme-dark .ftp-modern h1,
html.ftp-theme-dark .ftp-modern h2,
html.ftp-theme-dark .ftp-modern h3,
html.ftp-theme-dark .ftp-modern h4,
html.ftp-theme-dark .ftp-modern h5,
html.ftp-theme-dark .ftp-modern h6 {
	color: var(--ftp-text);
}

html.ftp-theme-dark .ftp-modern a {
	color: var(--ftp-green-dark);
}

html.ftp-theme-dark .ftp-modern a:hover {
	color: #b5f39e;
}

/* FIX-002: white news titles in Latest Updates, including hover. */
html.ftp-theme-dark .ftp-modern .home-new-card__title a,
html.ftp-theme-dark .ftp-modern .home-new-card__title a:hover {
	color: #fff;
}

html.ftp-theme-dark .ftp-modern #top_menu > a,
html.ftp-theme-dark .ftp-modern #top_menu > .top-menu-dd > .top-menu-dd__summary {
	color: #dcebdd;
}

html.ftp-theme-dark .ftp-modern #top_menu > a:hover,
html.ftp-theme-dark .ftp-modern #top_menu > a.active,
html.ftp-theme-dark .ftp-modern #top_menu > .top-menu-dd[open] > .top-menu-dd__summary,
html.ftp-theme-dark .ftp-modern #top_menu > .top-menu-dd > .top-menu-dd__summary:hover {
	background: rgba(104,213,72,.15);
	color: #b5f39e;
	box-shadow: none;
}

html.ftp-theme-dark .ftp-modern .top-menu-dd__menu {
	border-color: var(--ftp-line);
	background: rgba(23,33,27,.96);
	color: var(--ftp-text);
	box-shadow: 0 22px 56px rgba(0,0,0,.34);
}

html.ftp-theme-dark .ftp-modern .top-menu-dd__menu a {
	color: var(--ftp-text);
}

html.ftp-theme-dark .ftp-modern .top-menu-dd__menu a:hover {
	background: rgba(77,175,50,.12);
	color: var(--ftp-green-dark);
}

html.ftp-theme-dark .ftp-modern #searchsuggestions {
	border-color: var(--ftp-line);
	background: rgba(23,33,27,.96);
	color: var(--ftp-text);
	box-shadow: 0 22px 56px rgba(0,0,0,.34);
}

html.ftp-theme-dark .ftp-modern #searchsuggestions a,
html.ftp-theme-dark .ftp-modern #searchsuggestions span.notfound {
	color: var(--ftp-text);
}

html.ftp-theme-dark .ftp-modern #searchsuggestions a:hover {
	background: rgba(77,175,50,.12);
	color: var(--ftp-green-dark);
}

html.ftp-theme-dark .ftp-modern #dropmenudiv {
	border-color: var(--ftp-line) !important;
	background: rgba(23,33,27,.96) !important;
	color: var(--ftp-text) !important;
	box-shadow: 0 22px 56px rgba(0,0,0,.34);
}

html.ftp-theme-dark .ftp-modern #dropmenudiv a {
	color: var(--ftp-text) !important;
}

html.ftp-theme-dark .ftp-modern #dropmenudiv a:hover {
	background: rgba(77,175,50,.12) !important;
	color: var(--ftp-green-dark) !important;
}

html.ftp-theme-dark .ftp-modern .home-releases-view {
	border-color: var(--ftp-line);
	background: rgba(23,33,27,.72);
	box-shadow: 0 12px 26px rgba(0,0,0,.2);
}

html.ftp-theme-dark .ftp-modern .home-releases-view__btn img {
	filter: brightness(0) saturate(100%) invert(82%) sepia(10%) saturate(300%) hue-rotate(67deg) brightness(93%) contrast(89%);
}

html.ftp-theme-dark .ftp-modern .home-releases-view__btn:hover,
html.ftp-theme-dark .ftp-modern .home-releases-view__btn.is-active {
	background: var(--ftp-green);
	color: #fff;
}

html.ftp-theme-dark .ftp-modern .home-releases-view__btn:hover img,
html.ftp-theme-dark .ftp-modern .home-releases-view__btn.is-active img {
	filter: brightness(0) invert(1);
}

html.ftp-theme-dark .ftp-modern .game-card__edit {
	border-color: var(--ftp-line);
	background: rgba(23,33,27,.86);
	color: var(--ftp-green-dark);
	box-shadow: 0 12px 28px rgba(0,0,0,.25);
}

html.ftp-theme-dark .ftp-modern .game-card__edit:hover {
	background: rgba(34,49,39,.96);
	color: #b5f39e;
}

html.ftp-theme-dark .ftp-modern .header-discord,
html.ftp-theme-dark .ftp-modern .ftp-theme-toggle,
html.ftp-theme-dark .ftp-modern .ftp-menu-toggle,
html.ftp-theme-dark .ftp-modern #login_pane > li > .btn-border,
html.ftp-theme-dark .ftp-modern .profile-trigger,
html.ftp-theme-dark .ftp-modern .q_search,
html.ftp-theme-dark .ftp-modern .q_search > input,
html.ftp-theme-dark .ftp-modern .dropdown-form,
html.ftp-theme-dark .ftp-modern .login_form__foot a,
html.ftp-theme-dark .ftp-modern .login_pane__menu-icon,
html.ftp-theme-dark .ftp-modern .login_form__close,
html.ftp-theme-dark .ftp-modern .game-page__icon-action,
html.ftp-theme-dark .ftp-modern .game-page__icon-action a,
html.ftp-theme-dark .ftp-modern .page_form__back {
	border-color: var(--ftp-line);
	background: var(--ftp-surface);
	color: var(--ftp-text);
}

html.ftp-theme-dark .ftp-modern .navigation .pages > *,
html.ftp-theme-dark .ftp-modern .page_prev > *,
html.ftp-theme-dark .ftp-modern .page_next > * {
	border-color: var(--ftp-line);
	background: var(--ftp-surface);
	color: var(--ftp-text);
	box-shadow: 0 8px 18px rgba(0,0,0,.2);
}

html.ftp-theme-dark .ftp-modern .navigation .pages > span:not(.nav_ext),
html.ftp-theme-dark .ftp-modern .navigation .pages > a:hover,
html.ftp-theme-dark .ftp-modern .page_prev > a:hover,
html.ftp-theme-dark .ftp-modern .page_next > a:hover,
html.ftp-theme-dark .ftp-modern .navigation .pages > .nav_ext {
	border-color: var(--ftp-green);
	background: var(--ftp-green);
	color: #fff;
}

html.ftp-theme-dark .ftp-modern #header .header-discord,
html.ftp-theme-dark .ftp-modern #header .ftp-theme-toggle,
html.ftp-theme-dark .ftp-modern #header .ftp-menu-toggle,
html.ftp-theme-dark .ftp-modern #header #login_pane > li > .btn-border,
html.ftp-theme-dark .ftp-modern #header .profile-trigger,
html.ftp-theme-dark .ftp-modern #header .q_search,
html.ftp-theme-dark .ftp-modern #header .q_search > input {
	border-color: rgba(205,245,192,.2);
	background: rgba(22,36,28,.54);
	box-shadow: none;
	background-clip: padding-box;
}

html.ftp-theme-dark .ftp-modern #header .q_search {
	overflow: hidden;
	border-radius: 999px;
	background:
		linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,0)),
		rgba(22,36,28,.54);
}

html.ftp-theme-dark .ftp-modern #header .q_search > input {
	border-color: transparent;
	background: transparent;
	box-shadow: none;
}

html.ftp-theme-dark .ftp-modern .ftp-theme-toggle {
	color: #f2d87a;
}

html.ftp-theme-dark .ftp-modern .ftp-menu-toggle {
	color: var(--ftp-green-dark);
}

html.ftp-theme-dark .ftp-modern .ftp-theme-toggle__icon {
	box-shadow: none;
}

html.ftp-theme-dark .ftp-modern .header-discord:hover,
html.ftp-theme-dark .ftp-modern .ftp-theme-toggle:hover,
html.ftp-theme-dark .ftp-modern .ftp-menu-toggle:hover,
html.ftp-theme-dark .ftp-modern .ftp-menu-toggle[aria-expanded="true"],
html.ftp-theme-dark .ftp-modern #header .ftp-menu-toggle:hover,
html.ftp-theme-dark .ftp-modern #header .ftp-menu-toggle[aria-expanded="true"],
html.ftp-theme-dark .ftp-modern #login_pane > li > .btn-border:hover,
html.ftp-theme-dark .ftp-modern .login_form__foot a:hover,
html.ftp-theme-dark .ftp-modern .game-page__icon-action:hover,
html.ftp-theme-dark .ftp-modern .game-page__icon-action a:hover {
	border-color: rgba(143,223,112,.46);
	background: var(--ftp-surface-2);
	color: var(--ftp-green-dark);
	box-shadow: 0 0 0 4px rgba(77,175,50,.08);
}

html.ftp-theme-dark .ftp-modern .q_search > input::placeholder,
html.ftp-theme-dark .ftp-modern input::placeholder,
html.ftp-theme-dark .ftp-modern textarea::placeholder {
	color: rgba(232,240,230,.52);
}

html.ftp-theme-dark .ftp-modern .side-actions__btn {
	position: relative;
	border: 1px solid transparent;
	background-clip: padding-box;
	color: #fff !important;
	text-shadow: none;
	box-shadow: 0 12px 24px rgba(0,0,0,.18);
	transition: transform .16s ease, filter .16s ease, box-shadow .16s ease;
}

html.ftp-theme-dark .ftp-modern .side-actions__btn--green {
	background-color: #43a51f;
	background-image: none;
}

html.ftp-theme-dark .ftp-modern .side-actions__btn--orange {
	background-color: #ff7a16;
	background-image: none;
}

html.ftp-theme-dark .ftp-modern .side-actions__btn:hover {
	filter: brightness(1.05);
	transform: translateY(-1px);
	box-shadow: 0 16px 28px rgba(0,0,0,.24);
}

html.ftp-theme-dark .ftp-modern .profile-trigger__stat,
html.ftp-theme-dark .ftp-modern .ftp-comment__admin,
html.ftp-theme-dark .ftp-modern .ftp-comment__mass {
	border-color: var(--ftp-line);
	background: rgba(77,175,50,.1);
	color: var(--ftp-green-dark);
}

html.ftp-theme-dark .ftp-modern .profile-trigger__name,
html.ftp-theme-dark .ftp-modern #login_pane > li > .btn-border .over,
html.ftp-theme-dark .ftp-modern .ftp-comment__text {
	color: var(--ftp-text);
}

html.ftp-theme-dark .ftp-modern .game-card,
html.ftp-theme-dark .ftp-modern .game-card__content,
html.ftp-theme-dark .ftp-modern .game-page,
html.ftp-theme-dark .ftp-modern #content .box:not(.game-card):not(.berrors),
html.ftp-theme-dark .ftp-modern #content .story:not(.game-card):not(.game-page),
html.ftp-theme-dark .ftp-modern .addform,
html.ftp-theme-dark .ftp-modern .addcomment,
html.ftp-theme-dark .ftp-modern .addpm,
html.ftp-theme-dark .ftp-modern .ftp-comment,
html.ftp-theme-dark .ftp-modern aside.rightside .block,
html.ftp-theme-dark .ftp-modern aside.rightside .block_bg,
html.ftp-theme-dark .ftp-modern aside.rightside .banner,
html.ftp-theme-dark .ftp-modern .page_form__inner,
html.ftp-theme-dark .ftp-modern .page_form__body > .box:not(.berrors),
html.ftp-theme-dark .ftp-modern .page_form__body > .story,
html.ftp-theme-dark .ftp-modern .page_form__body > .baseform,
html.ftp-theme-dark .ftp-modern .page_form__body > .static {
	border-color: var(--ftp-line);
	background: var(--ftp-surface);
	color: var(--ftp-text);
}

html.ftp-theme-dark .ftp-modern .game-page__head {
	color: var(--ftp-text);
}

html.ftp-theme-dark .ftp-modern .game-card,
html.ftp-theme-dark .ftp-modern .game-page,
html.ftp-theme-dark .ftp-modern #content .box:not(.game-card):not(.berrors),
html.ftp-theme-dark .ftp-modern #content .story:not(.game-card):not(.game-page),
html.ftp-theme-dark .ftp-modern aside.rightside .block,
html.ftp-theme-dark .ftp-modern .page_form__inner,
html.ftp-theme-dark .ftp-modern .page_form__body > .box:not(.berrors),
html.ftp-theme-dark .ftp-modern .page_form__body > .story,
html.ftp-theme-dark .ftp-modern .page_form__body > .baseform,
html.ftp-theme-dark .ftp-modern .page_form__body > .static,
html.ftp-theme-dark .ftp-modern .ui-dialog.ftp-profile-dialog {
	box-shadow: var(--ftp-shadow);
}

html.ftp-theme-dark .ftp-modern .game-page__head,
html.ftp-theme-dark .ftp-modern .ui-dialog.ftp-profile-dialog.is-user .ftp-profile-popup__hero {
	background:
		radial-gradient(circle at 12% 0%, rgba(143,223,112,.18), transparent 36%),
		linear-gradient(135deg, rgba(77,175,50,.1), rgba(101,168,255,.06)),
		var(--ftp-surface);
}

html.ftp-theme-dark .ftp-modern .game-card__title a,
html.ftp-theme-dark .ftp-modern .game-page__title,
html.ftp-theme-dark .ftp-modern .ftp-download b,
html.ftp-theme-dark .ftp-modern .ftp-downloads h3,
html.ftp-theme-dark .ftp-modern .ftp-launch h3,
html.ftp-theme-dark .ftp-modern .ftp-faq h3,
html.ftp-theme-dark .ftp-modern .addform .title,
html.ftp-theme-dark .ftp-modern .addcomment .title,
html.ftp-theme-dark .ftp-modern .addpm .title,
html.ftp-theme-dark .ftp-modern #content .story:not(.game-card):not(.game-page) .title,
html.ftp-theme-dark .ftp-modern .page_form__inner > .title,
html.ftp-theme-dark .ftp-modern .page_form__body > .box:not(.berrors) h1,
html.ftp-theme-dark .ftp-modern .page_form__body > .box:not(.berrors) h2,
html.ftp-theme-dark .ftp-modern .page_form__body > .box:not(.berrors) h3,
html.ftp-theme-dark .ftp-modern .ftp-profile-popup__group,
html.ftp-theme-dark .ftp-modern .ftp-profile-popup__last b,
html.ftp-theme-dark .ftp-modern .ftp-profile-popup__meta b {
	color: var(--ftp-text);
}

html.ftp-theme-dark .ftp-modern .game-card__excerpt,
html.ftp-theme-dark .ftp-modern .game-card__author,
html.ftp-theme-dark .ftp-modern .ftp-comment__date,
html.ftp-theme-dark .ftp-modern .ftp-comment__signature,
html.ftp-theme-dark .ftp-modern .side-discord__body p,
html.ftp-theme-dark .ftp-modern aside.rightside .topnews span,
html.ftp-theme-dark .ftp-modern aside.rightside .relnews span,
html.ftp-theme-dark .ftp-modern .lastcomm b,
html.ftp-theme-dark .ftp-modern .page_form__foot,
html.ftp-theme-dark .ftp-modern .ftp-profile-popup__last,
html.ftp-theme-dark .ftp-modern .ftp-profile-popup__meta span,
html.ftp-theme-dark .ftp-modern .ftp-profile-popup__meta small {
	color: var(--ftp-muted);
}

html.ftp-theme-dark .ftp-modern .game-card__badge,
html.ftp-theme-dark .ftp-modern .game-card__badge--category,
html.ftp-theme-dark .ftp-modern .game-page__icon-action--active,
html.ftp-theme-dark .ftp-modern .game-page__icon-action--active a,
html.ftp-theme-dark .ftp-modern .ftp-download,
html.ftp-theme-dark .ftp-modern .ftp-primary-xfields {
	border-color: rgba(143,223,112,.28);
	background: rgba(77,175,50,.1);
	color: var(--ftp-green-dark);
}

html.ftp-theme-dark .ftp-modern .game-card__badge a,
html.ftp-theme-dark .ftp-modern .game-card__badge--category a,
html.ftp-theme-dark .ftp-modern .game-card__author a,
html.ftp-theme-dark .ftp-modern .ftp-comment__user .name {
	color: var(--ftp-green-dark);
}

html.ftp-theme-dark .ftp-modern .game-card__footer,
html.ftp-theme-dark .ftp-modern .game-page__head,
html.ftp-theme-dark .ftp-modern .game-comments .heading,
html.ftp-theme-dark .ftp-modern .ftp-comment__foot,
html.ftp-theme-dark .ftp-modern .login_pane__menu li:last-child a,
html.ftp-theme-dark .ftp-modern aside.rightside .block > .title,
html.ftp-theme-dark .ftp-modern aside.rightside .block_bg > .title,
html.ftp-theme-dark .ftp-modern .page_form__form .form_submit {
	border-color: var(--ftp-line);
}

html.ftp-theme-dark .ftp-modern .ftp-game-info,
html.ftp-theme-dark .ftp-modern .ftp-downloads,
html.ftp-theme-dark .ftp-modern .ftp-launch,
html.ftp-theme-dark .ftp-modern .ftp-faq,
html.ftp-theme-dark .ftp-modern .ftp-profile-popup__meta > div,
html.ftp-theme-dark .ftp-modern aside.rightside .topnews a,
html.ftp-theme-dark .ftp-modern aside.rightside .relnews a,
html.ftp-theme-dark .ftp-modern .lastcomm a,
html.ftp-theme-dark .ftp-modern .page_form__form .regtext {
	border-color: var(--ftp-line);
	background: var(--ftp-surface-2);
	color: var(--ftp-text);
}

html.ftp-theme-dark .ftp-modern input[type="text"],
html.ftp-theme-dark .ftp-modern input[type="password"],
html.ftp-theme-dark .ftp-modern input[type="email"],
html.ftp-theme-dark .ftp-modern input[type="search"],
html.ftp-theme-dark .ftp-modern textarea,
html.ftp-theme-dark .ftp-modern select,
html.ftp-theme-dark .ftp-modern #login_pane .login_form > li > input,
html.ftp-theme-dark .ftp-modern .page_form__form .form-group input,
html.ftp-theme-dark .ftp-modern .page_form__form .form-group textarea,
html.ftp-theme-dark .ftp-modern .page_form__form .form-group select,
html.ftp-theme-dark .ftp-modern .page_form__form .c-captcha input,
html.ftp-theme-dark .ftp-modern .ftp-addnews #category,
html.ftp-theme-dark .ftp-modern .ftp-addnews select[name="category[]"],
html.ftp-theme-dark .ftp-modern .ftp-addnews select[name="catlist[]"],
html.ftp-theme-dark .ftp-modern .ftp-addnews select[name="catlist"],
html.ftp-theme-dark .ftp-modern .ftp-addnews .chosen-container-multi .chosen-choices,
html.ftp-theme-dark .ftp-modern .ftp-addnews .chosen-container-single .chosen-single {
	border-color: var(--ftp-line-strong) !important;
	background: #151f18 !important;
	color: var(--ftp-text) !important;
}

html.ftp-theme-dark .ftp-modern .ftp-addnews #category option,
html.ftp-theme-dark .ftp-modern .ftp-addnews select[name="category[]"] option,
html.ftp-theme-dark .ftp-modern .ftp-addnews select[name="catlist[]"] option,
html.ftp-theme-dark .ftp-modern .ftp-addnews select[name="catlist"] option,
html.ftp-theme-dark .ftp-modern .ftp-xfields tr,
html.ftp-theme-dark .ftp-modern .ftp-primary-xfields .ftp-xfields tr {
	border-color: var(--ftp-line);
	background: var(--ftp-surface-2);
	color: var(--ftp-text);
}

html.ftp-theme-dark .ftp-modern .ftp-addnews #category option:checked,
html.ftp-theme-dark .ftp-modern .ftp-addnews select[name="category[]"] option:checked,
html.ftp-theme-dark .ftp-modern .ftp-addnews select[name="catlist[]"] option:checked,
html.ftp-theme-dark .ftp-modern .ftp-addnews select[name="catlist"] option:checked {
	background: linear-gradient(90deg, var(--ftp-green), #78d755);
	color: #07110a;
}

html.ftp-theme-dark .ftp-modern .ftp-addnews .form-group > label,
html.ftp-theme-dark .ftp-modern .page_form__form .form-group > label,
html.ftp-theme-dark .ftp-modern .ftp-xfields td:first-child {
	color: var(--ftp-text);
}

html.ftp-theme-dark .ftp-modern .ftp-xfields td {
	border-color: var(--ftp-line);
}

html.ftp-theme-dark .ftp-modern #comment-editor,
html.ftp-theme-dark .ftp-modern .wseditor,
html.ftp-theme-dark .ftp-modern .bb-editor,
html.ftp-theme-dark .ftp-modern .dlecomments-editor,
html.ftp-theme-dark .ftp-modern .dleaddcomments-editor,
html.ftp-theme-dark .ftp-modern .dlefastedit-editor,
html.ftp-theme-dark .ftp-modern .tox-tinymce,
html.ftp-theme-dark .ftp-modern .tox .tox-editor-header,
html.ftp-theme-dark .ftp-modern .tox .tox-toolbar,
html.ftp-theme-dark .ftp-modern .tox .tox-toolbar__primary,
html.ftp-theme-dark .ftp-modern .tox .tox-toolbar-overlord,
html.ftp-theme-dark .ftp-modern .tox .tox-edit-area,
html.ftp-theme-dark .ftp-modern .tox .tox-statusbar,
html.ftp-theme-dark .ftp-modern .wseditor table,
html.ftp-theme-dark .ftp-modern .bb-editor table,
html.ftp-theme-dark .ftp-modern .tox .tox-edit-area__iframe,
html.ftp-theme-dark .ftp-modern #comment-editor iframe,
html.ftp-theme-dark .ftp-modern .wseditor iframe,
html.ftp-theme-dark .ftp-modern .bb-editor iframe,
html.ftp-theme-dark .ftp-modern .dlecomments-editor iframe,
html.ftp-theme-dark .ftp-modern .dleaddcomments-editor iframe,
html.ftp-theme-dark .ftp-modern .dlefastedit-editor iframe,
html.ftp-theme-dark .ftp-modern .bb-editor textarea,
html.ftp-theme-dark .ftp-modern #comment-editor textarea {
	border-color: var(--ftp-line) !important;
	background: #151f18 !important;
	color: var(--ftp-text) !important;
}

html.ftp-theme-dark .ftp-modern .tox .tox-toolbar,
html.ftp-theme-dark .ftp-modern .tox .tox-toolbar__primary,
html.ftp-theme-dark .ftp-modern .bb-editor .bb-pane,
html.ftp-theme-dark .ftp-modern .wseditor .bb-pane {
	border-color: var(--ftp-line) !important;
	background: var(--ftp-surface-2) !important;
}

html.ftp-theme-dark .ftp-modern .tox .tox-tbtn,
html.ftp-theme-dark .ftp-modern .tox .tox-tbtn--select,
html.ftp-theme-dark .ftp-modern .bb-editor .bb-btn,
html.ftp-theme-dark .ftp-modern .wseditor .bb-btn {
	color: var(--ftp-text) !important;
}

html.ftp-theme-dark .ftp-modern .tox .tox-tbtn svg,
html.ftp-theme-dark .ftp-modern .tox .tox-tbtn svg path,
html.ftp-theme-dark .ftp-modern .bb-editor .bb-btn svg,
html.ftp-theme-dark .ftp-modern .wseditor .bb-btn svg,
html.ftp-theme-dark .ftp-modern .bb-editor .bb-btn .icon,
html.ftp-theme-dark .ftp-modern .wseditor .bb-btn .icon {
	fill: var(--ftp-text) !important;
	color: var(--ftp-text) !important;
}

html.ftp-theme-dark .ftp-modern .bb-editor button,
html.ftp-theme-dark .ftp-modern .wseditor button,
html.ftp-theme-dark .ftp-modern #comment-editor button,
html.ftp-theme-dark .ftp-modern .bb-editor a,
html.ftp-theme-dark .ftp-modern .wseditor a {
	color: var(--ftp-text) !important;
}

html.ftp-theme-dark .ftp-modern .comments-image-uploader-area,
html.ftp-theme-dark .ftp-modern .comments-image-uploader-area a {
	color: var(--ftp-green-dark);
}

html.ftp-theme-dark .ftp-modern .ftp-donate-strip {
	border-color: rgba(255,154,52,.42);
	/* FIX-007: one opaque layer, matching the former composited colours. */
	background: linear-gradient(90deg, #4a3c21, #352a26 42%, #1d2b2b 76%, #1c2c3d);
	background-clip: padding-box;
	box-shadow: 0 14px 34px rgba(0,0,0,.24);
}

html.ftp-theme-dark .ftp-modern .ftp-donate-strip__main b {
	color: var(--ftp-text);
}

html.ftp-theme-dark .ftp-modern .ftp-donate-strip__main span {
	color: #e2cfb0;
}

html.ftp-theme-dark .ftp-modern .ftp-donate-strip__icon {
	color: #ffd083;
	filter: none;
}

html.ftp-theme-dark .ftp-modern .ftp-donate-strip__btn {
	background: linear-gradient(180deg, #5fca40, #3f9d29);
	color: #fff !important;
	text-shadow: none;
	opacity: 1;
	box-shadow: none;
}

html.ftp-theme-dark .ftp-modern .ftp-donate-strip__btn:hover {
	background: linear-gradient(180deg, #6bd64b, #46a930);
	color: #fff !important;
}

html.ftp-theme-dark .ftp-modern .ftp-download a {
	border-color: var(--ftp-green);
	background: var(--ftp-green);
	color: #fff;
	box-shadow: 0 10px 20px rgba(67,165,31,.2);
}

html.ftp-theme-dark .ftp-modern .ftp-download a:hover {
	border-color: #63ca45;
	background: #63ca45;
	color: #fff;
}

html.ftp-theme-dark .ftp-modern .page_form {
	background:
		radial-gradient(circle at 24% 16%, rgba(77,175,50,.09) 0 18%, rgba(77,175,50,0) 46%),
		radial-gradient(circle at 86% 12%, rgba(255,154,52,.065) 0 16%, rgba(255,154,52,0) 42%),
		linear-gradient(180deg, #151f18 0, #111813 48%, #101712 100%);
	color: var(--ftp-text);
}

html.ftp-theme-dark .ftp-modern .page_form__logo img,
html.ftp-theme-dark .ftp-modern .logo_icon img {
	filter: drop-shadow(0 10px 22px rgba(0,0,0,.22));
}

html.ftp-theme-dark .ftp-modern .page_form__form .c-captcha img {
	border-color: var(--ftp-line);
	background: #fff;
}

/* FIX-006: native file controls also follow the active dark theme. */
html.ftp-theme-dark .ftp-modern input[type="file"] {
	color: var(--ftp-text);
	color-scheme: dark;
}

html.ftp-theme-dark .ftp-modern aside.rightside .block > .title,
html.ftp-theme-dark .ftp-modern aside.rightside .block_bg > .title {
	background: var(--ftp-surface);
	color: var(--ftp-text);
}

html.ftp-theme-dark .ftp-modern aside.rightside .block > .title:after,
html.ftp-theme-dark .ftp-modern aside.rightside .block_bg > .title:after {
	border: 0;
	outline: 0;
	background: var(--ftp-green);
	box-shadow: none;
}

html.ftp-theme-dark .ftp-modern aside.rightside .topnews a:hover,
html.ftp-theme-dark .ftp-modern aside.rightside .relnews a:hover,
html.ftp-theme-dark .ftp-modern .lastcomm a:hover {
	border-color: rgba(143,223,112,.4);
	background: rgba(77,175,50,.1);
}

html.ftp-theme-dark .ftp-modern .footer_menu {
	background: #07100b;
	box-shadow: none;
	color: #b8c9b8;
}

html.ftp-theme-dark .ftp-modern .footer_menu .foot_menu > li > b {
	color: #edf7ee;
}

html.ftp-theme-dark .ftp-modern .footer_menu .foot_menu a {
	color: #97a997;
}

html.ftp-theme-dark .ftp-modern .footer_menu .foot_menu a:hover {
	color: #dff7d8;
}

html.ftp-theme-dark .ftp-modern .game-page__icon-action img,
html.ftp-theme-dark .ftp-modern .ftp-comment__action img,
html.ftp-theme-dark .ftp-modern .login_form__foot img,
html.ftp-theme-dark .ftp-modern img[src*="/images/new/icons/"],
html.ftp-theme-dark .ftp-modern img[src*="images/new/icons/"] {
	filter: invert(91%) sepia(11%) saturate(309%) hue-rotate(68deg) brightness(103%) contrast(93%);
}

html.ftp-theme-dark .ftp-modern .game-page__subline img {
	filter: invert(1);
}

html.ftp-theme-dark .ftp-modern .game-page__icon-action--complaint img,
html.ftp-theme-dark .ftp-modern .ftp-comment__action--complaint img,
html.ftp-theme-dark .ftp-modern img[src*="seal-warning"] {
	filter: invert(62%) sepia(55%) saturate(2254%) hue-rotate(316deg) brightness(108%) contrast(101%);
}

html.ftp-theme-dark .ftp-modern .ftp-comment__avatar .cover,
html.ftp-theme-dark .ftp-modern .login_pane__info .avatar .cover,
html.ftp-theme-dark .ftp-modern .profile-trigger__avatar,
html.ftp-theme-dark .ftp-modern .ftp-profile-popup .avatar .cover {
	border-color: var(--ftp-line);
	background-color: var(--ftp-surface-2);
	box-shadow: var(--ftp-shadow-soft);
}

html.ftp-theme-dark .ftp-modern .ui-dialog.ftp-profile-dialog .ui-dialog-titlebar {
	background:
		linear-gradient(115deg, rgba(77,175,50,.58), rgba(101,168,255,.34)),
		#17331f !important;
}

html.ftp-theme-dark .ftp-modern .ui-dialog.ftp-profile-dialog,
html.ftp-theme-dark .ftp-modern .ui-dialog.ftp-profile-dialog .ui-dialog-content,
html.ftp-theme-dark .ftp-modern .ui-dialog.ftp-profile-dialog .ui-dialog-buttonpane,
html.ftp-theme-dark .ftp-modern .ftp-profile-popup,
html.ftp-theme-dark .ftp-modern .ftp-profile-popup__meta {
	border-color: var(--ftp-line) !important;
	background: var(--ftp-surface) !important;
	color: var(--ftp-text) !important;
}

html.ftp-theme-dark .ftp-modern .ui-dialog.ftp-profile-dialog .ftp-profile-popup__hero {
	background:
		radial-gradient(circle at 16% 16%, rgba(143,223,112,.16), transparent 34%),
		linear-gradient(135deg, rgba(77,175,50,.09), rgba(101,168,255,.055)),
		var(--ftp-surface) !important;
}

html.ftp-theme-dark .ftp-modern .ui-dialog.ftp-profile-dialog.is-admin .ui-dialog-titlebar {
	background: linear-gradient(115deg, #963a40, #b96b25) !important;
}

html.ftp-theme-dark .ftp-modern .ui-dialog.ftp-profile-dialog.is-admin .ftp-profile-popup__hero {
	background:
		radial-gradient(circle at 16% 18%, rgba(255,154,52,.2), transparent 34%),
		linear-gradient(135deg, rgba(150,58,64,.22), rgba(185,107,37,.13)),
		var(--ftp-surface) !important;
}

html.ftp-theme-dark .ftp-modern .ui-dialog.ftp-profile-dialog.is-uploader .ui-dialog-titlebar {
	background: linear-gradient(115deg, #563da7, #943fab) !important;
}

html.ftp-theme-dark .ftp-modern .ui-dialog.ftp-profile-dialog.is-uploader .ftp-profile-popup__hero {
	background:
		radial-gradient(circle at 16% 18%, rgba(192,80,214,.18), transparent 34%),
		linear-gradient(135deg, rgba(86,61,167,.22), rgba(148,63,171,.12)),
		var(--ftp-surface) !important;
}

html.ftp-theme-dark .ftp-modern .ui-dialog.ftp-profile-dialog .ftp-profile-popup__meta > div {
	border-color: var(--ftp-line) !important;
	background: var(--ftp-surface-2) !important;
}

html.ftp-theme-dark .ftp-modern .ui-dialog.ftp-profile-dialog .ftp-profile-popup__group,
html.ftp-theme-dark .ftp-modern .ui-dialog.ftp-profile-dialog .ftp-profile-popup__last b,
html.ftp-theme-dark .ftp-modern .ui-dialog.ftp-profile-dialog .ftp-profile-popup__meta b {
	color: var(--ftp-text) !important;
}

html.ftp-theme-dark .ftp-modern .ui-dialog.ftp-profile-dialog .ui-dialog-buttonpane .ui-button {
	border-color: var(--ftp-line);
	background: rgba(77,175,50,.1);
	color: var(--ftp-green-dark);
}

html.ftp-theme-dark .ftp-modern .ui-dialog.ftp-profile-dialog .ftp-profile-action--complaint {
	border-color: rgba(255,102,112,.32);
	background: rgba(255,102,112,.12);
	color: #ff9aa1;
}

html.ftp-theme-dark .ftp-modern .side-game-card__media img,
html.ftp-theme-dark .ftp-modern .side-game__body > img,
html.ftp-theme-dark .ftp-modern .game-card__media img {
	background: var(--ftp-surface-2);
}

html.ftp-theme-dark .ftp-modern .icon,
html.ftp-theme-dark .ftp-modern svg.icon,
html.ftp-theme-dark .ftp-modern .icon use,
html.ftp-theme-dark .ftp-modern .icon path {
	color: currentColor;
	fill: currentColor;
	stroke: currentColor;
}

html.ftp-theme-dark .ftp-modern .box_in,
html.ftp-theme-dark .ftp-modern .baseform,
html.ftp-theme-dark .ftp-modern .static,
html.ftp-theme-dark .ftp-modern .userinfo,
html.ftp-theme-dark .ftp-modern .userinfo_top,
html.ftp-theme-dark .ftp-modern .tab-content,
html.ftp-theme-dark .ftp-modern .tab-pane,
html.ftp-theme-dark .ftp-modern .pmlist,
html.ftp-theme-dark .ftp-modern .pm-box,
html.ftp-theme-dark .ftp-modern .pm_status,
html.ftp-theme-dark .ftp-modern .searchtable,
html.ftp-theme-dark .ftp-modern .table_top_users,
html.ftp-theme-dark .ftp-modern .vote_more,
html.ftp-theme-dark .ftp-modern .poll,
html.ftp-theme-dark .ftp-modern .mass_comments_action,
html.ftp-theme-dark .ftp-modern .form-sep,
html.ftp-theme-dark .ftp-modern .com_list,
html.ftp-theme-dark .ftp-modern .comments .comment:not(.ftp-comment),
html.ftp-theme-dark .ftp-modern .com_info,
html.ftp-theme-dark .ftp-modern .com_content {
	border-color: var(--ftp-line) !important;
	background: var(--ftp-surface) !important;
	color: var(--ftp-text) !important;
	box-shadow: none;
}

html.ftp-theme-dark .ftp-modern .dark_top,
html.ftp-theme-dark .ftp-modern .userinfo_top {
	background:
		radial-gradient(circle at 16% 0%, rgba(77,175,50,.09), transparent 38%),
		linear-gradient(135deg, rgba(77,175,50,.075), rgba(101,168,255,.055)),
		var(--ftp-surface) !important;
}

html.ftp-theme-dark .ftp-modern .userinfo_top {
	margin-bottom: 0 !important;
	padding-bottom: 72px !important;
}

html.ftp-theme-dark .ftp-modern .userinfo_top + .box_in {
	padding-top: 28px;
}

html.ftp-theme-dark .ftp-modern .userinfo_top .avatar .cover {
	border-color: var(--ftp-line) !important;
	background-color: var(--ftp-surface-2) !important;
}

html.ftp-theme-dark .ftp-modern #login_pane .dropdown-form,
html.ftp-theme-dark .ftp-modern #login_pane .dropdown-form.dot,
html.ftp-theme-dark .ftp-modern #login_pane .dropdown-form.logged {
	border-color: var(--ftp-line-strong) !important;
	background:
		radial-gradient(circle at 58% 0%, rgba(77,175,50,.075), transparent 34%),
		var(--ftp-surface) !important;
	color: var(--ftp-text) !important;
	box-shadow: 0 26px 70px rgba(0,0,0,.44) !important;
}

html.ftp-theme-dark .ftp-modern #login_pane .login_form__foot a,
html.ftp-theme-dark .ftp-modern .login_pane__admin a {
	border-color: var(--ftp-line) !important;
	background: var(--ftp-surface-2) !important;
	color: var(--ftp-green-dark) !important;
}

html.ftp-theme-dark .ftp-modern .login_pane__menu li a {
	border-color: var(--ftp-line) !important;
	color: var(--ftp-text) !important;
}

html.ftp-theme-dark .ftp-modern .login_pane__name,
html.ftp-theme-dark .ftp-modern .login_pane__menu li a b,
html.ftp-theme-dark .ftp-modern .login_pane__foot {
	color: var(--ftp-text) !important;
}

html.ftp-theme-dark .ftp-modern .login_pane__foot a {
	color: var(--ftp-green-dark) !important;
}

html.ftp-theme-dark .ftp-modern .login_pane__menu-icon {
	background: rgba(143,223,112,.12) !important;
	color: var(--ftp-text) !important;
}

html.ftp-theme-dark .ftp-modern .grey,
html.ftp-theme-dark .ftp-modern .signature,
html.ftp-theme-dark .ftp-modern .usinf .ui-c1,
html.ftp-theme-dark .ftp-modern .pm_list .pm_last_message,
html.ftp-theme-dark .ftp-modern .pm_list .pm_last_date,
html.ftp-theme-dark .ftp-modern .pm_list .pm_with_user,
html.ftp-theme-dark .ftp-modern .search_result_num {
	color: var(--ftp-muted) !important;
}

html.ftp-theme-dark .ftp-modern .usinf,
html.ftp-theme-dark .ftp-modern .usinf li,
html.ftp-theme-dark .ftp-modern table.pm,
html.ftp-theme-dark .ftp-modern table.userstop,
html.ftp-theme-dark .ftp-modern .pm td,
html.ftp-theme-dark .ftp-modern .pm th,
html.ftp-theme-dark .ftp-modern .userstop td,
html.ftp-theme-dark .ftp-modern .pm td.pm_list,
html.ftp-theme-dark .ftp-modern .pm th.pm_head,
html.ftp-theme-dark .ftp-modern .xfields,
html.ftp-theme-dark .ftp-modern .xfields td,
html.ftp-theme-dark .ftp-modern .searchtable table,
html.ftp-theme-dark .ftp-modern .searchtable td,
html.ftp-theme-dark .ftp-modern .searchtable fieldset {
	border-color: var(--ftp-line) !important;
	background: transparent !important;
	color: var(--ftp-text) !important;
}

html.ftp-theme-dark .ftp-modern .file-preview-card,
html.ftp-theme-dark .ftp-modern .mediaupload-box,
html.ftp-theme-dark .ftp-modern .dle-popup-mediaupload,
html.ftp-theme-dark .ftp-modern .dle-popup-mediaupload .mediaupload-insert-params,
html.ftp-theme-dark .ftp-modern .qq-uploader,
html.ftp-theme-dark .ftp-modern .qq-upload-list,
html.ftp-theme-dark .ftp-modern .uploadedfile {
	border-color: var(--ftp-line) !important;
	background: var(--ftp-surface-2) !important;
	color: var(--ftp-text) !important;
}

html.ftp-theme-dark .ftp-modern .file-preview-card *,
html.ftp-theme-dark .ftp-modern .mediaupload-box *,
html.ftp-theme-dark .ftp-modern .dle-popup-mediaupload * {
	color: inherit;
}

html.ftp-theme-dark .ftp-modern .file-preview-card .info,
html.ftp-theme-dark .ftp-modern .mediaupload-box .info,
html.ftp-theme-dark .ftp-modern .qq-upload-file,
html.ftp-theme-dark .ftp-modern .qq-upload-size {
	color: var(--ftp-muted) !important;
}

html.ftp-theme-dark .ftp-modern .file-preview-card img,
html.ftp-theme-dark .ftp-modern .mediaupload-box img {
	background: #0f1712;
}

html.ftp-theme-dark .ftp-modern .qq-upload-button {
	color: var(--ftp-green-dark) !important;
}

html.ftp-theme-dark .ftp-modern .pm tbody > tr:hover,
html.ftp-theme-dark .ftp-modern .userstop tbody > tr:hover,
html.ftp-theme-dark .ftp-modern .searchtable fieldset {
	background: var(--ftp-surface-2) !important;
}

html.ftp-theme-dark .ftp-modern .user_tab a,
html.ftp-theme-dark .ftp-modern .user_tab li,
html.ftp-theme-dark .ftp-modern .meta a,
html.ftp-theme-dark .ftp-modern .meta li,
html.ftp-theme-dark .ftp-modern .reply,
html.ftp-theme-dark .ftp-modern .complaint,
html.ftp-theme-dark .ftp-modern .del {
	color: var(--ftp-green-dark) !important;
}

html.ftp-theme-dark .ftp-modern #pm-menu span,
html.ftp-theme-dark .ftp-modern #pm-menu a,
html.ftp-theme-dark .ftp-modern .bbcodes,
html.ftp-theme-dark .ftp-modern input[type="button"],
html.ftp-theme-dark .ftp-modern input[type="submit"],
html.ftp-theme-dark .ftp-modern input[type="reset"] {
	border-color: var(--ftp-line-strong) !important;
	background: var(--ftp-surface-2) !important;
	color: var(--ftp-text) !important;
}

html.ftp-theme-dark .ftp-modern .bbcodes:hover,
html.ftp-theme-dark .ftp-modern input[type="button"]:hover,
html.ftp-theme-dark .ftp-modern input[type="submit"]:hover,
html.ftp-theme-dark .ftp-modern input[type="reset"]:hover {
	border-color: rgba(143,223,112,.42) !important;
	background: rgba(77,175,50,.12) !important;
	color: var(--ftp-green-dark) !important;
}

html.ftp-theme-dark .ftp-modern .ui-dialog:not(.ftp-profile-dialog),
html.ftp-theme-dark .ftp-modern .ui-dialog:not(.ftp-profile-dialog) .ui-dialog-content,
html.ftp-theme-dark .ftp-modern .ui-dialog:not(.ftp-profile-dialog) .ui-dialog-buttonpane,
html.ftp-theme-dark .ftp-modern .ui-widget-content,
html.ftp-theme-dark .ftp-modern .ui-autocomplete,
html.ftp-theme-dark .ftp-modern .ui-menu {
	border-color: var(--ftp-line) !important;
	background: var(--ftp-surface) !important;
	color: var(--ftp-text) !important;
}

html.ftp-theme-dark .ftp-modern .ui-dialog:not(.ftp-profile-dialog) .ui-dialog-titlebar,
html.ftp-theme-dark .ftp-modern .ui-widget-header {
	border-color: var(--ftp-line) !important;
	background:
		linear-gradient(115deg, rgba(77,175,50,.52), rgba(101,168,255,.3)),
		var(--ftp-surface-2) !important;
	color: var(--ftp-text) !important;
}

html.ftp-theme-dark .ftp-modern .ui-dialog label,
html.ftp-theme-dark .ftp-modern .ui-dialog input,
html.ftp-theme-dark .ftp-modern .ui-dialog textarea,
html.ftp-theme-dark .ftp-modern .ui-dialog select {
	color: var(--ftp-text) !important;
}

html.ftp-theme-dark .ftp-modern .title_quote:where(:not(.game-page__content *)),
html.ftp-theme-dark .ftp-modern .quote:where(:not(.game-page__content *)),
html.ftp-theme-dark .ftp-modern blockquote:where(:not(.game-page__content *)),
html.ftp-theme-dark .ftp-modern .title_spoiler:where(:not(.game-page__content *)),
html.ftp-theme-dark .ftp-modern .text_spoiler:where(:not(.game-page__content *)),
html.ftp-theme-dark .ftp-modern .scriptcode:where(:not(.game-page__content *)) {
	border-color: var(--ftp-line) !important;
	background: var(--ftp-surface-2) !important;
	color: var(--ftp-text) !important;
}

html.ftp-theme-dark .ftp-modern .title_quote:where(:not(.game-page__content *)),
html.ftp-theme-dark .ftp-modern .quote:where(:not(.game-page__content *)),
html.ftp-theme-dark .ftp-modern blockquote:where(:not(.game-page__content *)) {
	border-left-color: var(--ftp-orange) !important;
}

html.ftp-theme-dark .ftp-modern .bb-editor iframe,
html.ftp-theme-dark .ftp-modern .wseditor iframe,
html.ftp-theme-dark .ftp-modern #comment-editor iframe,
html.ftp-theme-dark .ftp-modern [contenteditable="true"] {
	background: #151f18 !important;
	color: var(--ftp-text) !important;
	color-scheme: dark;
}

@media (max-width: 640px) {
	html.ftp-theme-dark .ftp-modern #header {
		padding: 6px 0 8px;
	}

	html.ftp-theme-dark .ftp-modern #header_menu {
		padding: 10px;
		border-radius: 20px;
	}

	html.ftp-theme-dark .ftp-modern #header_menu:before {
		border-radius: 19px;
	}

	html.ftp-theme-dark .ftp-modern .ftp-xfields td:first-child,
	html.ftp-theme-dark .ftp-modern .ftp-comment__action {
		background: var(--ftp-surface-2);
	}
}

@media (max-width: 640px) {
	.ftp-modern .ftp-pm-read__head {
		padding: 15px 16px;
	}

	.ftp-modern .ftp-pm-read__head h4 {
		font-size: 17px;
	}

	.ftp-modern .ftp-pm-read__thread {
		padding: 10px;
	}

	.ftp-modern .ftp-pm-read__message {
		padding: 14px;
	}

	.ftp-modern .ftp-pm-read__message .com_info {
		flex-wrap: wrap;
	}

	.ftp-modern .ftp-pm-read__message .meta {
		width: 100%;
		margin-left: 48px;
	}

	.ftp-modern .ftp-pm-read__message .meta .left {
		flex-wrap: wrap;
	}

	.ftp-modern .ftp-pm-read__message .com_content {
		margin-left: 0;
	}

	.ftp-modern .ftp-pm-read__reply {
		padding: 16px;
	}
}

html.ftp-theme-dark .ftp-modern .ftp-pm-read__box {
	border-color: var(--ftp-line) !important;
	background: var(--ftp-surface) !important;
}

html.ftp-theme-dark .ftp-modern .ftp-pm-read__head {
	border-color: var(--ftp-line) !important;
	background:
		linear-gradient(90deg, rgba(77,175,50,.12), rgba(22,37,29,0) 62%),
		var(--ftp-surface) !important;
}

html.ftp-theme-dark .ftp-modern .ftp-pm-read__message {
	border-color: var(--ftp-line) !important;
	background: var(--ftp-surface-2) !important;
	color: var(--ftp-text) !important;
}

html.ftp-theme-dark .ftp-modern .ftp-pm-read__message .com_info,
html.ftp-theme-dark .ftp-modern .ftp-pm-read__message .com_content {
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

html.ftp-theme-dark .ftp-modern .ftp-pm-read__message .meta .left a:hover {
	background: rgba(77,175,50,.14);
}

html.ftp-theme-dark .ftp-modern .ftp-pm-read__reply {
	border-color: var(--ftp-line) !important;
	background: rgba(77,175,50,.055) !important;
}

@media (max-width: 640px) {
	.ftp-mobile-menu-open,
	.ftp-mobile-menu-open body {
		overflow: hidden !important;
	}

	.ftp-modern .tox-dialog-wrap {
		align-items: flex-start !important;
		box-sizing: border-box;
		padding-top: var(--ftp-editor-popup-top, 120px) !important;
	}

	.ftp-modern .tox-tinymce-aux .tox-menu,
	.ftp-modern .tox-tinymce-aux .tox-collection,
	.ftp-modern .tox-tinymce-aux .tox-pop,
	.ftp-modern .tox-tinymce-aux .tox-pop__dialog,
	.ftp-modern .emoji_box {
		max-width: calc(100vw - 24px) !important;
		max-height: calc(100dvh - var(--ftp-editor-popup-top, 120px) - 12px) !important;
		overflow-y: auto !important;
	}

	.ftp-modern .ui-dialog {
		left: 50% !important;
		right: auto !important;
		width: min(560px, calc(100vw - 24px)) !important;
		max-width: calc(100vw - 24px) !important;
		transform: translateX(-50%) !important;
	}

	.ftp-modern .ui-dialog .ui-dialog-content {
		max-height: calc(100dvh - 156px);
	}

	.ftp-modern #header_menu {
		grid-template-columns: minmax(0, 1fr) 42px 42px auto;
		gap: 9px 9px;
	}

	.ftp-modern .logotype {
		width: clamp(112px, 34vw, 140px);
	}

	.ftp-modern #mobile_menu_btn,
	.ftp-modern #header_menu > .ftp-theme-toggle {
		width: 42px;
		height: 42px;
	}

	.ftp-modern #login_pane > li > .btn-border {
		min-height: 42px;
		padding: 0 12px;
	}
}

@media (max-width: 420px) {
	.ftp-modern #header_menu {
		grid-template-columns: minmax(0, 1fr) 40px 40px auto;
		gap: 8px;
	}

	.ftp-modern .logotype {
		width: clamp(118px, 31vw, 124px);
		gap: 5px;
	}

	.ftp-modern #mobile_menu_btn,
	.ftp-modern #header_menu > .ftp-theme-toggle {
		width: 40px;
		height: 40px;
		border-radius: 15px;
	}

	.ftp-modern #login_pane > li > .btn-border {
		min-height: 40px;
		padding: 0 10px;
	}
}

.ui-dialog-titlebar-close {
    font-size: 0 !important;
    overflow: hidden;
}

.ui-dialog-titlebar-close .ui-icon {
    font-size: initial;
    color: initial;
}
/* FIX-014: the archive link is the section heading. */
.ftp-modern .home-new__head h2 > a {
	color: inherit;
	text-decoration: none;
}
.ftp-modern .home-new__head h2 > a:hover {
	color: var(--ftp-green-dark);
}
.ftp-modern .home-new__head h1 {
	margin: 0;
	color: var(--ftp-text);
	font-size: 20px;
	font-weight: 900;
	line-height: 1.2;
	text-transform: uppercase;
}

/* FIX-015: stable spacing and native scrollbars in the sidebar chat only. */
.ftp-modern aside.rightside .side-chat--mod {
	--ftp-chat-scrollbar: #a3b297;
	--ftp-chat-scrollbar-hover: #7a9270;
	--ftp-chat-inset: 12px;
	/* FIX-017: centre the scrollbar inside the existing symmetric inset. */
	--ftp-chat-scrollbar-gap: 2px;
	--ftp-chat-end-inset: var(--ftp-chat-inset);
	--ftp-chat-overlay-scrollbar: 0px;
}

html.ftp-theme-dark .ftp-modern aside.rightside .side-chat--mod {
	--ftp-chat-scrollbar: #3b5143;
	--ftp-chat-scrollbar-hover: #58715c;
	color-scheme: dark;
}

.ftp-modern aside.rightside .side-chat--mod .mod-chat-container {
	padding: 0;
	min-width: 0;
}

.ftp-modern aside.rightside .side-chat--mod .mod-chat-list {
	width: calc(100% - var(--ftp-chat-scrollbar-gap));
	padding: 10px calc(var(--ftp-chat-scrollbar-gap) + var(--ftp-chat-overlay-scrollbar)) 10px var(--ftp-chat-inset);
	overscroll-behavior: contain;
	scrollbar-gutter: stable;
}

.ftp-modern aside.rightside .side-chat--mod .mod-chat-list,
.ftp-modern aside.rightside .side-chat--mod .mod-chat-input {
	scrollbar-width: thin;
	scrollbar-color: var(--ftp-chat-scrollbar) transparent;
}

.ftp-modern aside.rightside .side-chat--mod .mod-chat-input::-webkit-scrollbar {
	width: 6px;
}

.ftp-modern aside.rightside .side-chat--mod .mod-chat-list::-webkit-scrollbar {
	width: 8px;
}

/* Chromium's standard thin scrollbar otherwise overrides the 8px width. */
@supports selector(::-webkit-scrollbar) {
	.ftp-modern aside.rightside .side-chat--mod .mod-chat-list {
		scrollbar-width: auto;
		scrollbar-color: auto;
	}
}

.ftp-modern aside.rightside .side-chat--mod .mod-chat-list::-webkit-scrollbar-track,
.ftp-modern aside.rightside .side-chat--mod .mod-chat-input::-webkit-scrollbar-track {
	background: transparent;
}

.ftp-modern aside.rightside .side-chat--mod .mod-chat-list::-webkit-scrollbar-thumb,
.ftp-modern aside.rightside .side-chat--mod .mod-chat-input::-webkit-scrollbar-thumb {
	border-radius: 999px;
	background: var(--ftp-chat-scrollbar);
}

.ftp-modern aside.rightside .side-chat--mod .mod-chat-list::-webkit-scrollbar-thumb:hover,
.ftp-modern aside.rightside .side-chat--mod .mod-chat-input::-webkit-scrollbar-thumb:hover {
	background: var(--ftp-chat-scrollbar-hover);
}

.ftp-modern aside.rightside .side-chat--mod .mod-chat-row,
.ftp-modern aside.rightside .side-chat--mod .mod-chat-row:nth-child(even) {
	grid-template-columns: 36px minmax(0, 1fr);
	align-items: start;
	gap: 10px;
	margin: 0;
	padding: 12px 10px;
	border: 0;
	border-radius: 8px;
}

.ftp-modern aside.rightside .side-chat--mod .mod-chat-avatar {
	width: 36px;
	height: 36px;
	margin: 0;
}

.ftp-modern aside.rightside .side-chat--mod .mod-chat-body {
	align-self: start;
}

.ftp-modern aside.rightside .side-chat--mod .mod-chat-meta {
	flex-wrap: wrap;
	gap: 4px 8px;
	margin-bottom: 5px;
}

.ftp-modern aside.rightside .side-chat--mod .mod-chat-user {
	max-width: 100%;
}

.ftp-modern aside.rightside .side-chat--mod .mod-chat-date {
	font-size: 10px;
	color: var(--ftp-muted);
}

.ftp-modern aside.rightside .side-chat--mod .mod-chat-message {
	line-height: 1.5;
	word-break: normal;
	overflow-wrap: anywhere;
}

.ftp-modern aside.rightside .side-chat--mod .mod-chat-actions-inline {
	gap: 8px;
	min-height: 18px;
	margin-top: 8px;
	transform: none;
	transition: opacity .15s ease;
}

.ftp-modern aside.rightside .side-chat--mod .mod-chat-refresh-progress {
	margin: 0 var(--ftp-chat-end-inset) 0 var(--ftp-chat-inset);
}

.ftp-modern aside.rightside .side-chat--mod .mod-chat-form {
	padding: 12px var(--ftp-chat-end-inset) 12px var(--ftp-chat-inset);
}

.ftp-modern aside.rightside .side-chat--mod .mod-chat-toolbar {
	gap: 3px;
	padding: 5px;
}

.ftp-modern aside.rightside .side-chat--mod .mod-chat-tool-btn {
	width: 28px;
	height: 28px;
}

.ftp-modern aside.rightside .side-chat--mod .mod-chat-input {
	min-height: 88px;
	max-height: 180px;
	padding: 10px 12px;
	word-break: normal;
	overflow-wrap: anywhere;
}

.ftp-modern aside.rightside .side-chat--mod .mod-chat-send {
	flex-direction: row;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	margin-top: 10px;
}

.ftp-modern aside.rightside .side-chat--mod .mod-chat-controls {
	flex: 1 1 102px;
	gap: 6px;
}

.ftp-modern aside.rightside .side-chat--mod .mod-chat-send > .mod-chat-btn-primary {
	flex: 0 1 auto;
	width: auto;
	min-height: 34px;
}

.ftp-modern aside.rightside .side-chat--mod .mod-chat-guest {
	margin: 0 var(--ftp-chat-end-inset) var(--ftp-chat-inset) var(--ftp-chat-inset);
}

/* FIX-018: compact tiles; row view keeps the complete short-story layout. */
html.ftp-view-grid .ftp-modern #content > .game-card {
	position: relative;
	display: flex;
	flex-direction: column;
	align-self: stretch;
	height: auto;
	min-height: 0;
	margin: 0;
}

html.ftp-view-grid .ftp-modern #content > .game-card :is(.game-card__author, .game-card__excerpt, .game-card__badges, .game-card__more, .game-card__edit),
html.ftp-view-grid .ftp-modern:not(.ftp-page-home) #content > .game-card .game-card__update,
html.ftp-view-grid .ftp-modern #content > .game-card > a:has(> .game-card__edit) {
	display: none;
}

html.ftp-view-grid .ftp-modern #content > .game-card .game-card__content {
	display: flex;
	flex-direction: column;
	gap: 0;
	min-height: 0;
	padding: 12px;
}

html.ftp-view-grid .ftp-modern #content > .game-card .game-card__title {
	display: -webkit-box;
	overflow: hidden;
	margin: 0;
	font-size: 16px;
	line-height: 1.3;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

html.ftp-view-grid .ftp-modern #content > .game-card .game-card__footer {
	justify-content: flex-start;
	min-height: 0;
	height: 0;
	margin: 0;
	padding: 0;
	border: 0;
	/* FIX-019: override the light theme's important footer gradient. */
	background: transparent !important;
}

/* Release updates appear over the cover on mouse hover or keyboard focus. */
.ftp-modern.ftp-page-home #content > .game-card .game-card__update {
	inset: 10px 10px auto auto;
	max-width: calc(100% - 20px);
	visibility: var(--ftp-release-update-visibility, hidden);
	pointer-events: none;
}

html:not(.ftp-view-grid) .ftp-modern.ftp-page-home #content > .game-card:has(.game-card__edit) .game-card__update {
	max-width: calc(100% - 66px);
}

.ftp-modern.ftp-page-home #content > .game-card:has(.game-card__update):has(:focus-visible) {
	--ftp-release-update-visibility: visible;
	--ftp-release-comments-visibility: hidden;
}

@media (hover: hover) {
	.ftp-modern.ftp-page-home #content > .game-card:has(.game-card__update):hover {
		--ftp-release-update-visibility: visible;
		--ftp-release-comments-visibility: hidden;
	}
}

/* FIX-019: comments overlay the image; icon, number and gap are 20% larger. */
html.ftp-view-grid .ftp-modern #content > .game-card .game-card__comments {
	position: absolute;
	top: 10px;
	right: 10px;
	z-index: 3;
	gap: 6px;
	padding: 6px 9px;
	border-radius: 999px;
	background: rgba(16, 23, 18, .9);
	color: #e8f0e6;
	font-size: 14.4px;
	line-height: 1;
	font-variant-numeric: tabular-nums;
	visibility: var(--ftp-release-comments-visibility, visible);
	pointer-events: none;
}

html.ftp-view-grid .ftp-modern #content > .game-card .game-card__comments img {
	width: 20.4px;
	height: 20.4px;
	filter: brightness(0) invert(1);
}

html.ftp-view-grid .ftp-modern #content > .game-card .game-card__comments b {
	color: inherit;
}

/* FIX-020: comments only. Replace legacy tree geometry, not the article/card system. */
.ftp-modern #dle-comments-list {
	overflow: visible;
}
.ftp-modern #dle-comments-list .comments-tree-list {
	margin: 0;
	padding: 0;
	border: 0;
	list-style: none;
}
.ftp-modern #dle-comments-list .comments-tree-list > li.comments-tree-item {
	margin: 0;
	padding: 0;
}
.ftp-modern #dle-comments-list .comments-tree-list > li.comments-tree-item + li.comments-tree-item {
	margin-top: 14px;
}
.ftp-modern #dle-comments-list .comments-tree-item > .comments-tree-list {
	margin: 12px 0 0 20px;
	padding: 0 0 0 12px;
	border: 0;
	border-left: 2px solid var(--ftp-line);
}
.ftp-modern #dle-comments-list .ftp-comment::before,
.ftp-modern #dle-comments-list .ftp-comment::after {
	content: none;
	display: none;
}
.ftp-modern .ftp-comment,
.ftp-modern #dle-comments-list .ftp-comment {
	display: grid;
	grid-template-columns: 67.2px minmax(0, 1fr);
	gap: 12px;
	margin: 0;
	padding: 16px;
	box-sizing: border-box;
	border: 1px solid var(--ftp-line);
	border-radius: 14px;
	background: var(--ftp-surface);
	box-shadow: none;
	overflow-wrap: anywhere;
}
.ftp-modern .ftp-comment__avatar .cover {
	width: 67.2px;
	height: 67.2px;
	box-sizing: border-box;
	border-radius: 19.2px;
	box-shadow: none;
}
.ftp-modern .ftp-comment__main {
	display: flex;
	flex-direction: column;
	min-width: 0;
}
.ftp-modern .ftp-comment__head {
	flex-direction: row;
}
.ftp-modern .ftp-comment__reply-context {
	display: block;
	margin-bottom: 8px;
	font-size: 12px;
	font-weight: 500;
	line-height: 1.4;
	color: var(--ftp-muted);
}
.ftp-modern .ftp-comment__anchor,
.ftp-modern [id^="comment-id-"] {
	scroll-margin-top: 100px;
}
.ftp-modern .ftp-comment__text,
.ftp-modern .ftp-comment__attachments,
.ftp-modern .ftp-comment__signature,
.ftp-modern .ftp-comment .quote,
.ftp-modern .ftp-comment blockquote,
.ftp-modern .ftp-comment .text_spoiler {
	display: flow-root;
	min-width: 0;
	box-sizing: border-box;
	overflow-wrap: anywhere;
}
.ftp-modern .ftp-comment .text_spoiler::after {
	content: "";
	display: block;
	clear: both;
}
.ftp-modern .ftp-comment__text img,
.ftp-modern .ftp-comment__signature img {
	max-width: 100% !important;
	height: auto !important;
	box-sizing: border-box;
}
.ftp-modern .ftp-comment iframe,
.ftp-modern .ftp-comment video {
	max-width: 100%;
}
.ftp-modern .ftp-comment table {
	display: block;
	max-width: 100%;
	overflow-x: auto;
}
.ftp-modern .ftp-comment pre,
.ftp-modern .ftp-comment .scriptcode {
	max-width: 100%;
	box-sizing: border-box;
	white-space: pre-wrap;
	overflow-wrap: anywhere;
}
.ftp-modern .ftp-comment__attachments {
	margin-top: 12px;
}
.ftp-modern .ftp-comment .comments-image-gallery {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0;
	padding: 0;
}
.ftp-modern .ftp-comment .comments-image-gallery li {
	flex: 0 1 140px;
	min-width: 0;
	max-width: 100%;
	margin: 0;
	padding: 0;
}
.ftp-modern .ftp-comment .comments-image-gallery a {
	display: block;
}
.ftp-modern .ftp-comment .comments-image-gallery img {
	display: block;
	float: none !important;
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 180px;
	margin: 0;
	border: 0;
	border-radius: 6px;
	object-fit: contain;
	box-shadow: none;
}
.ftp-modern .ftp-comment__signature {
	margin-top: 12px;
	padding-top: 10px;
	border-top: 1px solid var(--ftp-line);
	color: var(--ftp-muted);
	font-size: 12px;
	line-height: 1.5;
	opacity: 1;
}
.ftp-modern .ftp-comment__foot {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 8px 12px;
	clear: both;
	width: 100%;
	box-sizing: border-box;
	margin-top: 12px;
	padding: 10px 0 0;
	border-top: 1px solid var(--ftp-line);
}
html.ftp-theme-dark .ftp-modern .ftp-comment__foot {
	background: transparent !important;
}
.ftp-modern .ftp-comment__actions,
.ftp-modern .ftp-comment__tools {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-start;
	gap: 6px;
	width: auto;
	min-width: 0;
}
.ftp-modern .ftp-comment__tools {
	margin-left: auto;
}
.ftp-modern .ftp-comment__action,
.ftp-modern .ftp-comment__action a {
	width: auto;
	min-height: 32px;
	box-sizing: border-box;
	border: 0;
	background: transparent !important;
	font-size: 12px;
	line-height: 1.25;
}
.ftp-modern .ftp-comment__action {
	padding: 0;
}
.ftp-modern .ftp-comment__action a {
	padding: 0 8px;
}
.ftp-modern .ftp-comment__action img {
	flex: 0 0 17px;
}
.ftp-modern .ftp-comment__rate {
	width: auto;
	min-height: 32px;
}
.ftp-modern .ftp-comment__rate .rate_like > a,
.ftp-modern .ftp-comment__rate .rate_like-dislike {
	display: inline-flex;
	float: none;
	align-items: center;
	justify-content: center;
	gap: 6px;
	min-height: 32px;
	padding: 0 10px;
	box-sizing: border-box;
	border: 1px solid var(--ftp-line);
	border-radius: 999px;
	font-size: 12px;
	line-height: 1;
}
.ftp-modern .ftp-comment__rate .icon {
	margin: 0;
}
.ftp-modern .ftp-comment__admin,
.ftp-modern .ftp-comment__mass {
	min-height: 32px;
	padding: 0;
	box-sizing: border-box;
}
.ftp-modern .ftp-comment__admin a {
	min-height: 30px;
	padding: 0 10px;
}
html.ftp-theme-dark .ftp-modern .ftp-comment__admin--danger {
	color: #f0aaaa;
}
html:not(.ftp-theme-dark) .ftp-modern .ftp-comment__admin--danger {
	color: #a03b3b;
}
.ftp-modern .ftp-comment__admin--danger a {
	color: inherit !important;
}
.ftp-modern .ftp-comment__mass {
	width: 32px;
	padding: 0;
}
.ftp-modern .ftp-comment__mass label {
	display: grid;
	place-items: center;
	width: 30px;
	min-height: 30px;
	margin: 0;
	padding: 0;
	cursor: pointer;
}
.ftp-modern .ftp-comment__mass input[type="checkbox"] {
	width: 16px;
	height: 16px;
	margin: 0;
	border-color: var(--ftp-green-dark);
	accent-color: var(--ftp-green);
	cursor: pointer;
}
.ftp-modern .ftp-comment [hidden],
.ftp-modern .ftp-comment__action:empty,
.ftp-modern .ftp-comment__admin:empty,
.ftp-modern .ftp-comment__mass:empty {
	display: none !important;
}
.ftp-modern .game-comments .heading {
	display: flex;
	align-items: baseline;
	gap: 8px;
}
.ftp-modern .game-comments .heading .hnum {
	display: inline;
	margin: 0;
	font-size: 14px;
	font-weight: 700;
	line-height: inherit;
	vertical-align: baseline;
	color: var(--ftp-muted);
}
.ftp-modern .com_list .mass_comments_action {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-end;
	gap: 10px;
	padding: 16px 0 0;
	border-color: var(--ftp-line);
}
.ftp-modern .com_list .mass_comments_action select {
	min-width: 0;
	max-width: 100%;
	margin: 0;
}
/* Keep the TinyMCE outline; don't frame its parent wrappers a second time. */
.ftp-modern .game-comments #comment-editor,
.ftp-modern .game-comments .wseditor,
.ftp-modern #dlefastreplycomments #comment-editor,
.ftp-modern #dlefastreplycomments .wseditor {
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	overflow: visible;
}
.ftp-modern .game-comments .tox-tinymce,
.ftp-modern #dlefastreplycomments .tox-tinymce {
	border: 1px solid var(--ftp-line) !important;
}
.ftp-modern .game-comments .comments-image-uploader-area {
	padding-top: 10px;
}
.ftp-modern .game-comments .plupload_wrapper {
	border-color: var(--ftp-line);
}
@media (max-width: 600px) {
	.ftp-modern .ftp-comment,
	.ftp-modern #dle-comments-list .ftp-comment {
		grid-template-columns: 48px minmax(0, 1fr);
		gap: 10px;
		padding: 12px;
	}
	.ftp-modern .ftp-comment__avatar .cover {
		width: 48px;
		height: 48px;
		border-radius: 14.4px;
	}
	.ftp-modern #dle-comments-list .comments-tree-item > .comments-tree-list {
		margin-left: 6px;
		padding-left: 8px;
	}
	/* Only one visual indent on mobile, regardless of reply depth. */
	.ftp-modern #dle-comments-list .comments-tree-list .comments-tree-list .comments-tree-list {
		margin-left: 0;
		padding-left: 0;
		border-left: 0;
	}
	.ftp-modern .ftp-comment__tools {
		margin-left: 0;
	}
	.ftp-modern .ftp-comment__action a {
		padding: 0 6px;
	}
	.ftp-modern .ftp-comment__text img[style*="float"],
	.ftp-modern .ftp-comment__signature img[style*="float"] {
		display: block;
		float: none !important;
		margin: 8px 0 !important;
	}
	.ftp-modern [id^="comment-id-"] {
		scroll-margin-top: 140px;
	}
}
.ftp-modern .ftp-comment__text img[src*="/public/emoticons/"],
.ftp-modern .ftp-comment__signature img[src*="/public/emoticons/"] {
	display: inline-block;
	float: none !important;
	width: 1.25em !important;
	height: 1.25em !important;
	max-width: 100% !important;
	margin: 0 .1em !important;
	border: 0;
	vertical-align: -.2em;
	object-fit: contain;
}

/* FIX-043: selected light-stone palette; dark colours and shared geometry stay separate. */
html:not(.ftp-theme-dark) {
	--ftp-bg: #d6d9d0;
	--ftp-surface: #e9ece5;
	--ftp-surface-2: #dfe3d9;
	--ftp-surface-3: #d3d9cc;
	--ftp-text: #252e2d;
	--ftp-muted: #5b6459;
	--ftp-line: #c1c8b9;
	--ftp-line-strong: #a5b09b;
	--ftp-green: #3f8626;
	--ftp-green-dark: #2c6723;
	--ftp-green-soft: #dce7d5;
	--ftp-shadow: 0 12px 30px rgba(35,48,30,.14);
	--ftp-shadow-soft: 0 8px 20px rgba(35,48,30,.12);
	--ftp-sidebar: #e4e7df;
	--ftp-field: #dce1d6;
	color-scheme: light;
}
html:not(.ftp-theme-dark) .ftp-modern {
	background: #d6d9d0 linear-gradient(145deg, #d7dbd2 0, #d2d7cc 52%, #d9dcd3 100%) no-repeat;
}
html:not(.ftp-theme-dark) .ftp-modern #header,
html:not(.ftp-theme-dark) .ftp-modern.ftp-header-scrolled #header {
	background: linear-gradient(180deg, rgba(214,217,208,.34), rgba(214,217,208,0));
	box-shadow: none;
}
html:not(.ftp-theme-dark) .ftp-modern #header_menu {
	/* FIX-031: same glass layers and blur as the dark-theme reference. */
	border-color: rgba(150,220,128,.2);
	background:
		radial-gradient(ellipse at 18% -18%, rgba(77,175,50,.2), rgba(77,175,50,.07) 36%, rgba(77,175,50,0) 70%),
		linear-gradient(110deg, rgba(77,175,50,.1), rgba(255,255,255,.025) 34%, rgba(77,175,50,.035) 100%),
		rgba(18,52,19,.91);
	backdrop-filter: blur(20px) saturate(1.08);
	-webkit-backdrop-filter: blur(20px) saturate(1.08);
	background-clip: padding-box;
	box-shadow: 0 12px 30px rgba(27,47,22,.2);
}
/* FIX-024: strong green header, with light navigation and readable menus. */
html:not(.ftp-theme-dark) .ftp-modern #header_menu #top_menu > a,
html:not(.ftp-theme-dark) .ftp-modern #header_menu #top_menu > .top-menu-dd > .top-menu-dd__summary {color: #f4f8ef;}
html:not(.ftp-theme-dark) .ftp-modern #top_menu > a:hover,
html:not(.ftp-theme-dark) .ftp-modern #top_menu > a.active,
html:not(.ftp-theme-dark) .ftp-modern #top_menu > .top-menu-dd[open] > .top-menu-dd__summary,
html:not(.ftp-theme-dark) .ftp-modern #top_menu > .top-menu-dd > .top-menu-dd__summary:hover {background: #285821;box-shadow: none;}

html:not(.ftp-theme-dark) .ftp-modern #header_menu::before {
	display: none;
}
html:not(.ftp-theme-dark) .ftp-modern .ftp-donate-strip::before {
	display: none;
}
html:not(.ftp-theme-dark) .ftp-modern .ftp-donate-strip__icon {
	background: transparent;
	box-shadow: none;
	filter: none;
}
html:not(.ftp-theme-dark) .ftp-modern .ftp-donate-strip__btn,
html:not(.ftp-theme-dark) .ftp-modern .side-actions__btn {
	color: #fff;
}

/* Content wrappers don't need their own painted rectangle inside the card. */
html:not(.ftp-theme-dark) .ftp-modern .box > .box_in,
html:not(.ftp-theme-dark) .ftp-modern .game-page__inner,
html:not(.ftp-theme-dark) .ftp-modern .game-page__head,
html:not(.ftp-theme-dark) .ftp-modern .game-card__content,
html:not(.ftp-theme-dark) .ftp-modern .game-card__footer,
html:not(.ftp-theme-dark) .ftp-modern .com_list,
html:not(.ftp-theme-dark) .ftp-modern .game-comments .heading,
html:not(.ftp-theme-dark) .ftp-modern aside.rightside .block > .title,
html:not(.ftp-theme-dark) .ftp-modern aside.rightside .block_bg > .title,
html:not(.ftp-theme-dark) .ftp-modern .page_form__form .form_submit {
	background: transparent !important;
	box-shadow: none;
}
html:not(.ftp-theme-dark) .ftp-modern input[type="text"],
html:not(.ftp-theme-dark) .ftp-modern input[type="password"],
html:not(.ftp-theme-dark) .ftp-modern input[type="email"],
html:not(.ftp-theme-dark) .ftp-modern input[type="search"],
html:not(.ftp-theme-dark) .ftp-modern textarea,
html:not(.ftp-theme-dark) .ftp-modern select,
html:not(.ftp-theme-dark) .ftp-modern .q_search > input,
html:not(.ftp-theme-dark) .ftp-modern #login_pane .login_form > li > input,
html:not(.ftp-theme-dark) .ftp-modern .tox-tinymce,
html:not(.ftp-theme-dark) .ftp-modern .tox .tox-edit-area,
html:not(.ftp-theme-dark) .ftp-modern .tox .tox-edit-area__iframe,
html:not(.ftp-theme-dark) .ftp-modern #comment-editor iframe,
html:not(.ftp-theme-dark) .ftp-modern .wseditor iframe {
	background: var(--ftp-field) !important;
	border-color: var(--ftp-line) !important;
	color: var(--ftp-text) !important;
}
html:not(.ftp-theme-dark) .ftp-modern .tox .tox-toolbar,
html:not(.ftp-theme-dark) .ftp-modern .tox .tox-toolbar__primary,
html:not(.ftp-theme-dark) .ftp-modern .tox .tox-toolbar-overlord,
html:not(.ftp-theme-dark) .ftp-modern .tox .tox-editor-header,
html:not(.ftp-theme-dark) .ftp-modern .tox .tox-statusbar,
html:not(.ftp-theme-dark) .ftp-modern .bb-editor .bb-pane {
	background: var(--ftp-surface-2) !important;
}
html:not(.ftp-theme-dark) .ftp-modern .ftp-theme-toggle,
html:not(.ftp-theme-dark) .ftp-modern .ftp-menu-toggle,
html:not(.ftp-theme-dark) .ftp-modern .header-discord,
html:not(.ftp-theme-dark) .ftp-modern .profile-trigger,
html:not(.ftp-theme-dark) .ftp-modern .home-releases-view {
	background: var(--ftp-surface-2);
	border-color: var(--ftp-line);
	box-shadow: none;
}
html:not(.ftp-theme-dark) .ftp-modern .mod-chat-overlay-card {
	background: transparent;
	box-shadow: none;
}
html:not(.ftp-theme-dark) .ftp-modern .mod-chat-overlay-card,
html:not(.ftp-theme-dark) .ftp-modern .mod-chat-overlay-card strong {
	color: var(--ftp-text);
}
html:not(.ftp-theme-dark) .ftp-modern .mod-chat-overlay-card p,
html:not(.ftp-theme-dark) .ftp-modern .mod-chat-overlay-card > span {
	color: var(--ftp-muted);
}
html:not(.ftp-theme-dark) .ftp-modern .dropdown-menu,
html:not(.ftp-theme-dark) .ftp-modern #dropmenudiv,
html:not(.ftp-theme-dark) .ftp-modern #searchsuggestions,
html:not(.ftp-theme-dark) .ftp-modern .top-menu-dd__menu,
html:not(.ftp-theme-dark) .ftp-modern #login_pane .dropdown-form,
html:not(.ftp-theme-dark) .ftp-modern #login_pane .dropdown-form.dot,
html:not(.ftp-theme-dark) .ftp-modern #login_pane .dropdown-form.logged {
	background: var(--ftp-surface) !important;
	border-color: var(--ftp-line) !important;
	box-shadow: 0 10px 28px rgba(24,43,30,.1) !important;
}

html:not(.ftp-theme-dark) .ftp-modern input:focus,
html:not(.ftp-theme-dark) .ftp-modern textarea:focus,
html:not(.ftp-theme-dark) .ftp-modern select:focus {
	border-color: var(--ftp-green) !important;
}

/* FIX-022: try the new page background on the light homepage only. */
html:not(.ftp-theme-dark) body.ftp-modern.ftp-page-home {
	background-color: var(--ftp-bg);
}

/* FIX-025: restore material depth using the existing dark theme's hierarchy.
   Outer surfaces receive shadows; inner content wrappers stay transparent. */
html:not(.ftp-theme-dark) .ftp-modern .home-new-card,
html:not(.ftp-theme-dark) .ftp-modern .game-card,
html:not(.ftp-theme-dark) .ftp-modern .game-page,
html:not(.ftp-theme-dark) .ftp-modern #content > .box:not(.game-card):not(.berrors),
html:not(.ftp-theme-dark) .ftp-modern #content > .story:not(.game-card):not(.game-page),
html:not(.ftp-theme-dark) .ftp-modern aside.rightside .block,
html:not(.ftp-theme-dark) .ftp-modern aside.rightside .block_bg,
html:not(.ftp-theme-dark) .ftp-modern .page_form__inner {
	box-shadow: var(--ftp-shadow-soft);
}
html:not(.ftp-theme-dark) .ftp-modern .home-new-card__title {
	background: linear-gradient(180deg, #edf0e9, #e9ece5);
}
html:not(.ftp-theme-dark) .ftp-modern .game-page__head {
	background:
		radial-gradient(ellipse at 8% 0%, rgba(139,158,122,.14), transparent 55%),
		linear-gradient(120deg, #dfe5d8, #edf0e8 60%, #dfe5d9) !important;
}
/* FIX-038: light donation material with a warm accent and dark readable ink. */
html:not(.ftp-theme-dark) .ftp-modern .ftp-donate-strip {
	border-color: rgba(134,126,89,.34);
	background: linear-gradient(105deg, #f0deba, #e7e2ce 54%, #e0e4da 78%, #dce1db);
	background-clip: padding-box;
	box-shadow: 0 8px 20px rgba(75,73,45,.12);
}
html:not(.ftp-theme-dark) .ftp-modern .ftp-donate-strip__main .ftp-donate-strip__icon {
	color: var(--ftp-text);
}
html:not(.ftp-theme-dark) .ftp-modern .ftp-donate-strip__main b {
	color: var(--ftp-text);
}
html:not(.ftp-theme-dark) .ftp-modern .ftp-donate-strip__main span {
	color: #655b45;
}
html:not(.ftp-theme-dark) .ftp-modern .side-actions__btn {
	box-shadow: 0 7px 17px rgba(43,91,26,.22);
}

html:not(.ftp-theme-dark) .ftp-modern #header_menu .ftp-theme-toggle,
html:not(.ftp-theme-dark) .ftp-modern #header_menu .ftp-menu-toggle,
html:not(.ftp-theme-dark) .ftp-modern #header_menu .header-discord,
html:not(.ftp-theme-dark) .ftp-modern #header_menu .profile-trigger {
	border-color: rgba(223,242,203,.28);
	background: rgba(229,243,212,.12);
	color: #eef5de;
	box-shadow: 0 5px 12px rgba(12,35,20,.12);
	background-clip: padding-box;
}

html:not(.ftp-theme-dark) .ftp-modern #header_menu .profile-trigger__stat {
	background: rgba(14,42,22,.16) !important;
	color: #eef5de;
}
html:not(.ftp-theme-dark) .ftp-modern #header_menu .header-discord img,
html:not(.ftp-theme-dark) .ftp-modern #header_menu .profile-trigger__stat img {
	filter: brightness(0) invert(1);
}
html:not(.ftp-theme-dark) .ftp-modern .home-releases-view {
	background: var(--ftp-surface-2);
	box-shadow: 0 4px 12px rgba(40,53,32,.1);
}
html:not(.ftp-theme-dark) .ftp-modern .mod-chat-editor,
html:not(.ftp-theme-dark) .ftp-modern .mod-chat-input {
	background: var(--ftp-field) !important;
}
html:not(.ftp-theme-dark) .ftp-modern .mod-chat-toolbar {
	background: var(--ftp-surface-2) !important;
}
html:not(.ftp-theme-dark) .ftp-modern .mod-chat-overlay {
	background: rgba(228,231,223,.97);
}
html:not(.ftp-theme-dark) .ftp-modern .ftp-discord__summary {
	background: transparent;
	color: #374a6b;
}
html:not(.ftp-theme-dark) .ftp-modern .ftp-discord__join {
	background: linear-gradient(135deg, #5368b4, #415596);
	box-shadow: 0 6px 14px rgba(52,71,126,.16);
	color: #fff;
}
html:not(.ftp-theme-dark) .ftp-modern #dle-comments-list .ftp-comment {
	box-shadow: 0 4px 12px rgba(39,52,32,.07);
}

html:not(.ftp-theme-dark) .ftp-modern .side-discord > .title:after {
	background: #6177ad;
}

/* FIX-043/046: neutral sidebar surfaces; headings retain the green brand accent. */
html:not(.ftp-theme-dark) .ftp-modern aside.rightside .block > .title,
html:not(.ftp-theme-dark) .ftp-modern aside.rightside .block_bg > .title {
	background: linear-gradient(180deg, #e5e8e0, #dfe3d9) !important;
	color: var(--ftp-text);
}
html:not(.ftp-theme-dark) .ftp-modern aside.rightside .block > .title::after,
html:not(.ftp-theme-dark) .ftp-modern aside.rightside .block_bg > .title::after {
	background: var(--ftp-green);
}
html:not(.ftp-theme-dark) .ftp-modern aside.rightside .side-chat--mod {
	--ftp-chat-scrollbar: #a0ac98;
	--ftp-chat-scrollbar-hover: #7d9073;
}
html:not(.ftp-theme-dark) .ftp-modern aside.rightside .side-chat--mod .mod-chat-row {
	background: transparent !important;
}
html:not(.ftp-theme-dark) .ftp-modern aside.rightside .side-chat--mod .mod-chat-row:nth-child(even) {
	background: var(--ftp-field) !important;
}
html:not(.ftp-theme-dark) .ftp-modern aside.rightside .side-game .side-game-card > a > b {
	background: linear-gradient(180deg, #e9ece5, #e3e7dd);
	color: var(--ftp-text);
}
html:not(.ftp-theme-dark) .ftp-modern .game-card {
	background: linear-gradient(180deg, #edf0e9, #e9ece5) !important;
}
html:not(.ftp-theme-dark) .ftp-modern .ftp-comment__foot {
	background: transparent !important;
}
@media (min-width: 960px) {
	html:not(.ftp-theme-dark) .ftp-modern .home-new__head h2::after,
	html:not(.ftp-theme-dark) .ftp-modern .home-releases-title > h2::after {
		display: inline-block;
		width: 64px;
		height: 3px;
		margin: 0 0 4px 12px;
		border-radius: 2px;
		background: #356343;
		content: "";
	}
}

/* FIX-043: source assets and neutral surfaces, with the existing structure. */
html:not(.ftp-theme-dark) .ftp-modern aside.rightside :is(.block, .block_bg, .banner) {
	background: var(--ftp-sidebar);
}
html:not(.ftp-theme-dark) .ftp-modern #header_menu #q_search input {
	background: var(--ftp-field) !important;
}
html:not(.ftp-theme-dark) .ftp-modern .home-new-card__all-media {
	filter: brightness(1.5) saturate(.9);
}

/* FIX-033: shared geometry; theme rules change paint rather than dimensions. */
.ftp-modern .profile-trigger__avatar,
.ftp-modern .avatar .cover,
.ftp-modern .ftp-comment__avatar .cover {
	background-repeat: no-repeat;
	background-clip: padding-box;
}
.ftp-modern #header_menu .profile-trigger__avatar {box-shadow: none;}
.ftp-modern #content .userinfo_top {
	margin-bottom: 0 !important;
	padding-bottom: 72px !important;
}
.ftp-modern #content .userinfo_top + .box_in {padding-top: 28px;}
/* Standalone comments (lastcomments/search) have no tree-list wrapper. */
.ftp-modern #dle-comments-list > [id^="comment-id-"] ~ [id^="comment-id-"] > .ftp-comment {
	margin-top: 14px;
}
/* Nested legacy DLE panels must receive the same surface as direct children. */
html:not(.ftp-theme-dark) .ftp-modern #content .box:not(.game-card):not(.berrors),
html:not(.ftp-theme-dark) .ftp-modern .ui-dialog.ftp-profile-dialog,
html:not(.ftp-theme-dark) .ftp-modern .ui-dialog.ftp-profile-dialog .ui-dialog-content {
	background: var(--ftp-surface) !important;
	border-color: var(--ftp-line);
	color: var(--ftp-text);
}
html:not(.ftp-theme-dark) .ftp-modern #content .dark_top,
html:not(.ftp-theme-dark) .ftp-modern #content .userinfo_top {
	background: linear-gradient(120deg, #d7dcd1, #e7eae2 65%, #dce1d6) !important;
	color: var(--ftp-text) !important;
}
html:not(.ftp-theme-dark) .ftp-modern .user_tab > li > a {
	color: var(--ftp-green-dark) !important;
	opacity: 1;
}
html:not(.ftp-theme-dark) .ftp-modern .user_tab > li.active > a {color: var(--ftp-text) !important;}
html:not(.ftp-theme-dark) .ftp-modern .userinfo_top .avatar .cover,
html:not(.ftp-theme-dark) .ftp-modern .ftp-profile-popup .avatar .cover {
	border-color: var(--ftp-line);
	background-color: var(--ftp-surface-2);
}
html:not(.ftp-theme-dark) .ftp-modern #header_menu .profile-trigger__avatar {
	border-color: rgba(223,242,203,.28);
	background-color: rgba(17,28,21,.3);
}
html:not(.ftp-theme-dark) .ftp-modern #login_pane .dropdown-form,
html:not(.ftp-theme-dark) .ftp-modern #login_pane .dropdown-form.dot,
html:not(.ftp-theme-dark) .ftp-modern #login_pane .dropdown-form.logged {
	background: linear-gradient(145deg, #e6eae0, #dce2d5) !important;
	border-color: var(--ftp-line-strong) !important;
}
html:not(.ftp-theme-dark) .ftp-modern .ui-dialog.ftp-profile-dialog .ftp-profile-popup__hero {
	background: var(--ftp-surface-2);
}

.ftp-modern #content .userinfo_top {border-radius: var(--ftp-radius) var(--ftp-radius) 0 0;}
html:not(.ftp-theme-dark) .ftp-modern .usinf .ui-c1 {color: var(--ftp-muted);}
html:not(.ftp-theme-dark) .ftp-modern .usinf .ui-c2 [style*="#70bb39"] {color: var(--ftp-green-dark) !important;}

/* Comment BBCode surfaces were still inheriting hardcoded white from DLE. */
html:not(.ftp-theme-dark) .ftp-modern .ftp-comment :is(.title_quote, .quote, blockquote, .title_spoiler, .text_spoiler, .scriptcode) {
	background: var(--ftp-surface-2);
	border-color: var(--ftp-line);
	color: var(--ftp-text);
}
/* Preserve the administrator colour family with readable light-theme ink. */
html:not(.ftp-theme-dark) .ftp-modern :is(.usinf, .ftp-profile-popup__group) :is([style*="color:red"], [style*="color: red"], [style*="#ff0000"]) {color: #a52d2d !important;}

/* FIX-034: light interactions follow the effective dark-theme states. */
/* These header controls stay on one glass surface when hovered, as in dark. */
html:not(.ftp-theme-dark) .ftp-modern #header_menu :is(.profile-trigger, .header-discord, .ftp-theme-toggle) {box-shadow: none;}
html:not(.ftp-theme-dark) .ftp-modern #header_menu :is(.profile-trigger, .header-discord, .ftp-theme-toggle):hover {
	background: rgba(229,243,212,.12);
	border-color: rgba(223,242,203,.28);
	box-shadow: none;
	color: #b5f39e;
}
html:not(.ftp-theme-dark) .ftp-modern #header_menu .ftp-menu-toggle:hover,
html:not(.ftp-theme-dark) .ftp-modern #header_menu .ftp-menu-toggle[aria-expanded="true"] {
	background: #1d2a22;
	border-color: rgba(143,223,112,.46);
	color: #a8df94;
	box-shadow: 0 0 0 4px rgba(77,175,50,.08);
}
html:not(.ftp-theme-dark) .ftp-modern #header_menu #top_menu > a:hover,
html:not(.ftp-theme-dark) .ftp-modern #header_menu #top_menu > a.active,
html:not(.ftp-theme-dark) .ftp-modern #header_menu #top_menu > .top-menu-dd[open] > .top-menu-dd__summary,
html:not(.ftp-theme-dark) .ftp-modern #header_menu #top_menu > .top-menu-dd > .top-menu-dd__summary:hover {
	background: rgba(104,213,72,.15);
	color: #b5f39e;
	box-shadow: none;
}
/* Content controls retain light inks; response types and timing match dark. */
html:not(.ftp-theme-dark) .ftp-modern .top-menu-dd__menu a:hover,
html:not(.ftp-theme-dark) .ftp-modern #searchsuggestions a:hover {
	background: rgba(77,175,50,.12);
	color: var(--ftp-green-dark);
}
html:not(.ftp-theme-dark) .ftp-modern #dropmenudiv a:hover {
	background: rgba(77,175,50,.12) !important;
	color: var(--ftp-green-dark) !important;
}
html:not(.ftp-theme-dark) .ftp-modern .login_pane__foot a:hover {color: var(--ftp-green-dark);}
html:not(.ftp-theme-dark) .ftp-modern .home-new-card__title a:hover {color: var(--ftp-text);}
html:not(.ftp-theme-dark) .ftp-modern .ftp-donate-strip__btn,
html:not(.ftp-theme-dark) .ftp-modern .ftp-donate-strip__btn:hover {box-shadow: none;}
html:not(.ftp-theme-dark) .ftp-modern .ftp-donate-strip__btn:hover {
	background: linear-gradient(160deg, #3f8626, #347420);
	color: #fff !important;
}
html:not(.ftp-theme-dark) .ftp-modern .side-actions__btn {
	position: relative;
	background: linear-gradient(160deg, #3f8626, #347420);
	background-clip: padding-box;
	transition: transform .16s ease, filter .16s ease, box-shadow .16s ease;
}
html:not(.ftp-theme-dark) .ftp-modern .side-actions__btn:hover {
	background: linear-gradient(160deg, #3f8626, #347420);
	filter: brightness(1.05);
	transform: translateY(-1px);
	box-shadow: 0 16px 28px rgba(34,58,40,.24);
}
html:not(.ftp-theme-dark) .ftp-modern aside.rightside .topnews a:hover,
html:not(.ftp-theme-dark) .ftp-modern aside.rightside .relnews a:hover,
html:not(.ftp-theme-dark) .ftp-modern .lastcomm a:hover {
	border-color: rgba(75,130,52,.4);
	background: rgba(77,175,50,.1);
}
html:not(.ftp-theme-dark) .ftp-modern :is(.ftp-comment__action, .ftp-comment__admin) a:hover {color: #23551d;}
html:not(.ftp-theme-dark) .ftp-modern .ftp-comment__admin--danger a:hover {color: #8f2929;}
html:not(.ftp-theme-dark) .ftp-modern .game-page__icon-action:hover,
html:not(.ftp-theme-dark) .ftp-modern .game-page__icon-action a:hover {
	border-color: rgba(75,130,52,.46);
	box-shadow: 0 0 0 4px rgba(77,175,50,.08);
}
html:not(.ftp-theme-dark) .ftp-modern .ftp-download a {
	border-color: var(--ftp-green);
	background: var(--ftp-green);
	color: #fff;
	box-shadow: 0 10px 20px rgba(67,165,31,.2);
}
html:not(.ftp-theme-dark) .ftp-modern .ftp-download a:hover {
	border-color: #347323;
	background: #347323;
	color: #fff;
}
html:not(.ftp-theme-dark) .ftp-modern :is(.navigation .pages > a, .page_prev > a, .page_next > a):hover {
	border-color: var(--ftp-green);background: var(--ftp-green);color: #fff;
}
html:not(.ftp-theme-dark) .ftp-modern :is(.pm, .userstop) tbody > tr:hover {background: var(--ftp-surface-2) !important;}
html:not(.ftp-theme-dark) .ftp-modern .ftp-pm-read__message .meta .left a:hover {background: rgba(77,175,50,.14);}
html:not(.ftp-theme-dark) .ftp-modern :is(.bbcodes, input[type="button"], input[type="submit"], input[type="reset"]):hover {
	border-color: rgba(75,130,52,.42) !important;
	background: rgba(77,175,50,.12) !important;
	color: var(--ftp-green-dark) !important;
}
/* Search uses the same focus treatment as the dark reference. */
html:not(.ftp-theme-dark) .ftp-modern #header_menu #q_search input:focus {
	background: var(--ftp-surface) !important;
	border-color: var(--ftp-line) !important;
	box-shadow: none;
}

html:not(.ftp-theme-dark) .ftp-modern #header_menu .ftp-menu-toggle {color: #a8df94;box-shadow: none;}
html:not(.ftp-theme-dark) .ftp-modern aside.rightside :is(.topnews, .relnews) a:hover,
html:not(.ftp-theme-dark) .ftp-modern .lastcomm a:hover {background: rgba(77,175,50,.1) !important;}
html:not(.ftp-theme-dark) .ftp-modern .game-page__icon-action,
html:not(.ftp-theme-dark) .ftp-modern .game-page__icon-action a {background: var(--ftp-surface);color: var(--ftp-text);}
html:not(.ftp-theme-dark) .ftp-modern .game-page__icon-action:hover,
html:not(.ftp-theme-dark) .ftp-modern .game-page__icon-action a:hover {background: var(--ftp-surface-2);color: var(--ftp-green-dark);}

/* The dark popup changes borders, not button fills, on hover. */
html:not(.ftp-theme-dark) .ftp-modern .ui-dialog.ftp-profile-dialog .ui-dialog-buttonpane .ui-button,
html:not(.ftp-theme-dark) .ftp-modern .ui-dialog.ftp-profile-dialog .ui-dialog-buttonpane .ui-button:hover {background: rgba(77,175,50,.1);color: var(--ftp-green-dark);}
html:not(.ftp-theme-dark) .ftp-modern .ui-dialog.ftp-profile-dialog .ui-dialog-buttonpane .ftp-profile-action--complaint,
html:not(.ftp-theme-dark) .ftp-modern .ui-dialog.ftp-profile-dialog .ui-dialog-buttonpane .ftp-profile-action--complaint:hover {background: rgba(255,102,112,.12);color: #9a3333;}

html:not(.ftp-theme-dark) .ftp-modern .ftp-donate-strip__btn {background: linear-gradient(160deg, #3f8626, #347420);}

/* FIX-035: comment avatars +20%; match the subdued dark-theme frame. */
html:not(.ftp-theme-dark) .ftp-modern .ftp-comment__avatar .cover {
	border-color: var(--ftp-line);
	background-color: var(--ftp-surface-2);
	box-shadow: none;
}

/* FIX-036: trim paragraph edge margins, including DLE comm-id wrappers. */
.ftp-modern .ftp-comment__text > :first-child,
.ftp-modern .ftp-comment__text > [id^="comm-id-"] > :first-child {margin-top: 0;}
.ftp-modern .ftp-comment__text > :last-child,
.ftp-modern .ftp-comment__text > [id^="comm-id-"] > :last-child {margin-bottom: 0;}

/* FIX-040: a simple mail envelope, without crossed bottom-flap diagonals. */
.ftp-modern .login_pane__menu-icon--messages::before {
	content: "";
	display: block;
	width: 20px;
	height: 20px;
	background: currentColor;
	-webkit-mask: url("../images/new/icons/envelope-simple.svg") center / contain no-repeat;
	mask: url("../images/new/icons/envelope-simple.svg") center / contain no-repeat;
}
.ftp-modern #login_pane .profile-trigger__stat img {width: 18px;height: 18px;}

/* FIX-041: fixed counter track keeps 0..+99 inside the profile capsule. */
.ftp-modern .profile-trigger {
	--ftp-profile-avatar-size: 44px;
	grid-template-columns: var(--ftp-profile-avatar-size) 32px;
	width: max-content;
	min-width: 0;
	max-width: none;
}
.ftp-modern .profile-trigger__stat {
	width: 100%;
	min-width: 0;
	padding: 0;
	gap: 0;
}
.ftp-modern .profile-trigger__stat b {
	min-width: 0;
	font-variant-numeric: tabular-nums;
	text-align: center;
}
@media (min-width: 981px) and (max-width: 1260px) {
	.ftp-modern .profile-trigger {--ftp-profile-avatar-size: 42px;}
}
@media (min-width: 641px) and (max-width: 980px) {
	.ftp-modern .profile-trigger {--ftp-profile-avatar-size: 38px;}
}
@media (max-width: 640px) {
	.ftp-modern .profile-trigger {--ftp-profile-avatar-size: 34px;}
}

/* FIX-042: white unread count and donation icon in the heading ink. */
html.ftp-theme-dark .ftp-modern .profile-trigger__stat b {color: #fff;}
html.ftp-theme-dark .ftp-modern .ftp-donate-strip__main .ftp-donate-strip__icon {color: var(--ftp-text);}

/* FIX-044: private messages use the site's surfaces and controls.
   All rules are scoped to the PM template; DLE wrappers may add a form. */
.ftp-modern #content .ftp-pm {min-width:0;}
.ftp-modern #content .ftp-pm > .box_in {padding:24px;background:transparent!important;}
.ftp-modern #content .ftp-pm h1.title {margin:0 0 18px;font-size:22px;line-height:1.25;color:var(--ftp-text);}
.ftp-modern #content .ftp-pm .ftp-pm__toolbar {display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 20px;margin:0 0 24px;}
.ftp-modern #content .ftp-pm #pm-menu {display:flex;flex-wrap:wrap;gap:8px;margin:0;}
.ftp-modern #content .ftp-pm #pm-menu::after {display:none;}
.ftp-modern #content .ftp-pm #pm-menu a {
 display:inline-flex;align-items:center;justify-content:center;float:none;
 min-height:42px;box-sizing:border-box;padding:9px 16px;
 border:1px solid transparent;border-radius:999px;
 background:transparent!important;color:var(--ftp-muted)!important;
 font-size:13px;font-weight:800;line-height:1.3;box-shadow:none!important;
}
.ftp-modern #content .ftp-pm #pm-menu a span {padding:0;border:0!important;background:transparent!important;color:inherit!important;box-shadow:none!important;}
.ftp-modern #content .ftp-pm #pm-menu a.is-active {border-color:var(--ftp-line-strong)!important;background:var(--ftp-surface-2)!important;color:var(--ftp-text)!important;}
.ftp-modern #content .ftp-pm #pm-menu a.ftp-pm__tab--new {border-color:var(--ftp-green)!important;background:var(--ftp-green)!important;color:#fff!important;}
.ftp-modern #content .ftp-pm #pm-menu a:hover {border-color:var(--ftp-green)!important;color:var(--ftp-green-dark)!important;}
.ftp-modern #content .ftp-pm #pm-menu a.ftp-pm__tab--new:hover {color:#fff!important;filter:brightness(1.04);}
.ftp-modern #content .ftp-pm .ftp-pm__usage {flex:0 1 220px;max-width:100%;margin:0;padding:0;border:0!important;background:transparent!important;box-shadow:none;}
.ftp-modern #content .ftp-pm .ftp-pm__usage-text {display:flex;justify-content:space-between;gap:12px;color:var(--ftp-muted);font-size:12px;line-height:1.4;}
.ftp-modern #content .ftp-pm .pm_progress_bar {height:6px;margin:6px 0 0;overflow:hidden;border:0;border-radius:3px;background:var(--ftp-surface-3);}
.ftp-modern #content .ftp-pm .pm_progress_bar span {height:6px;border-radius:inherit;background:var(--ftp-green);}
.ftp-modern #content .ftp-pm .pm-no-messages {display:block;padding:26px 0;color:var(--ftp-muted);text-align:center;line-height:1.65;}
.ftp-modern #content .ftp-pm .addpm {min-width:0;padding:0;border:0!important;border-radius:0;background:transparent!important;box-shadow:none!important;}
.ftp-modern #content .ftp-pm .addpm .combo {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
.ftp-modern #content .ftp-pm .addpm .combo_field {float:none;width:auto;min-width:0;margin:0;padding:0;}
.ftp-modern #content .ftp-pm .addpm label {display:block;margin:0 0 6px;color:var(--ftp-text);font-size:13px;font-weight:800;line-height:1.4;}
.ftp-modern #content .ftp-pm .addpm input.wide {width:100%;min-width:0;min-height:42px;}
.ftp-modern #content .ftp-pm #comment-editor {min-width:0;padding:0!important;border:0!important;border-radius:0;background:transparent!important;box-shadow:none!important;}
.ftp-modern #content .ftp-pm .tox-tinymce {max-width:100%;box-sizing:border-box;border:1px solid var(--ftp-line-strong)!important;border-radius:12px;box-shadow:none!important;}
.ftp-modern #content .ftp-pm .tox .tox-editor-header {background:var(--ftp-surface-2)!important;box-shadow:none!important;}
.ftp-modern #content .ftp-pm .form_submit {display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:16px 0 0;padding:0;}
.ftp-modern #content .ftp-pm .form_submit > button {min-height:42px;margin:0;padding:10px 18px;border-radius:999px;font-size:13px;font-weight:800;line-height:1.35;}
.ftp-modern #content .ftp-pm .form_submit .btn-border {border:1px solid var(--ftp-line-strong)!important;background:var(--ftp-surface-2)!important;color:var(--ftp-text)!important;box-shadow:none!important;}
.ftp-modern #content .ftp-pm .form_submit .btn-border:hover {border-color:var(--ftp-green)!important;color:var(--ftp-green-dark)!important;}
.ftp-modern #content .ftp-pm :is(#pm-menu a,.form_submit button):focus-visible {outline:2px solid var(--ftp-green);outline-offset:3px;}

/* The engine owns table markup, selection, pagination and message actions. */
.ftp-modern #content .ftp-pm .pmlist {min-width:0;margin:0;}
.ftp-modern #content .ftp-pm table.pm {width:100%!important;min-width:0;table-layout:fixed;border-collapse:collapse;}
.ftp-modern #content .ftp-pm .pm :is(th,td) {padding:12px 8px;border-color:var(--ftp-line)!important;white-space:normal;overflow-wrap:anywhere;vertical-align:top;}
.ftp-modern #content .ftp-pm .pm th {color:var(--ftp-muted)!important;font-size:12px;font-weight:800;text-align:left;}
.ftp-modern #content .ftp-pm .pm .pm_icon {width:28px;color:var(--ftp-muted)!important;}
.ftp-modern #content .ftp-pm .pm .pm-unread-image {color:var(--ftp-green-dark)!important;}
.ftp-modern #content .ftp-pm .pm .pm_checkbox {width:32px;text-align:center;}
.ftp-modern #content .ftp-pm .pm .pm_last_user {width:130px;}
.ftp-modern #content .ftp-pm .pm div.pm_subj {font-size:15px;line-height:1.35;}
.ftp-modern #content .ftp-pm .pm div.pm_subj a {font-weight:700;color:var(--ftp-text);}
.ftp-modern #content .ftp-pm .pm div.pm_subj b {font-weight:900;}
.ftp-modern #content .ftp-pm .pm :is(.pm_last_message,.pm_with_user,.pm_last_date) {margin-top:4px;color:var(--ftp-muted)!important;font-size:12px;line-height:1.5;}
.ftp-modern #content .ftp-pm .pm div.pm_last_user {width:auto;font-size:13px;line-height:1.5;}
.ftp-modern #content .ftp-pm .pm tbody > tr:hover {background:var(--ftp-surface-2)!important;}
.ftp-modern #content .ftp-pm .pm_navigation {margin-top:16px;}
.ftp-modern #content .ftp-pm .pm_navigation :is(tbody,tr) {display:block;width:100%;}
.ftp-modern #content .ftp-pm .pm_navigation tr {display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;}
.ftp-modern #content .ftp-pm .pm_navigation td {display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-width:0;padding:0;}
.ftp-modern #content .ftp-pm .pm_navigation td:last-child {margin-left:auto;}
.ftp-modern #content .ftp-pm .pm_navigation select {width:auto;max-width:100%;min-width:0;}
.ftp-modern #content .ftp-pm .pm_navigation .bbcodes {min-height:40px;margin:0;padding:8px 14px;border-radius:999px;font-weight:800;}

/* A conversation has one outer page and a clear author / body / actions order. */
.ftp-modern #content .ftp-pm .ftp-pm-read {margin:0;}
.ftp-modern #content .ftp-pm .ftp-pm-read__box {padding:0;border:0!important;border-radius:0;background:transparent!important;box-shadow:none!important;}
.ftp-modern #content .ftp-pm .ftp-pm-read__head {padding:0 0 16px;border-bottom:1px solid var(--ftp-line);background:transparent!important;}
.ftp-modern #content .ftp-pm .ftp-pm-read__head h4 {overflow-wrap:anywhere;}
.ftp-modern #content .ftp-pm .ftp-pm-read__thread {display:block;min-width:0;padding:0!important;background:transparent!important;}
.ftp-modern #content .ftp-pm .ftp-pm-read__message {
 display:grid;grid-template-columns:56px minmax(0,1fr);gap:6px 12px;
 margin:0;padding:18px 0;border:0!important;border-bottom:1px solid var(--ftp-line)!important;
 border-radius:0;background:transparent!important;box-shadow:none!important;
}
.ftp-modern #content .ftp-pm .ftp-pm-read__message .com_info {display:contents;background:transparent!important;}
.ftp-modern #content .ftp-pm .ftp-pm-read__message .avatar {grid-column:1;grid-row:1 / span 3;align-self:start;margin:0;}
.ftp-modern #content .ftp-pm .ftp-pm-read__message .avatar .cover {width:56px;height:56px;border:1px solid var(--ftp-line);background-color:var(--ftp-surface-2);box-shadow:none!important;}
.ftp-modern #content .ftp-pm .ftp-pm-read__message .avatar.is-online .cover {border-color:var(--ftp-green);}
.ftp-modern #content .ftp-pm .ftp-pm-read__message .com_user {grid-column:2;grid-row:1;gap:4px 10px;margin:0;}
.ftp-modern #content .ftp-pm .ftp-pm-read__message .com_user .grey {color:var(--ftp-muted)!important;font-size:12px;}
.ftp-modern #content .ftp-pm .ftp-pm-read__message .com_content {grid-column:2;grid-row:2;min-width:0;margin:0;padding:0;border:0!important;background:transparent!important;}
.ftp-modern #content .ftp-pm .ftp-pm-read__message .meta {grid-column:2;grid-row:3;min-width:0;margin:6px 0 0;}
.ftp-modern #content .ftp-pm .ftp-pm-read__message .meta .left {display:flex;flex-wrap:wrap;gap:6px;margin:0;}
.ftp-modern #content .ftp-pm .ftp-pm-read__message .meta .left a {min-height:32px;color:var(--ftp-green-dark)!important;}
.ftp-modern #content .ftp-pm .ftp-pm-read__message .meta .del a {color:var(--ftp-red)!important;}
html:not(.ftp-theme-dark) .ftp-modern #content .ftp-pm .ftp-pm-read__message .meta .del a {color:#a52d2d!important;}
.ftp-modern #content .ftp-pm .ftp-pm-read__message .text {display:flow-root;min-width:0;max-width:100%;overflow-wrap:anywhere;}
.ftp-modern #content .ftp-pm .ftp-pm-read__message .text img {display:block;float:none!important;max-width:100%!important;height:auto!important;margin:10px 0;}
.ftp-modern #content .ftp-pm .ftp-pm-read__message .text :is(iframe,video) {max-width:100%;}
.ftp-modern #content .ftp-pm .ftp-pm-read__message .text :is(blockquote,.quote,.title_quote,.title_spoiler,.text_spoiler,.scriptcode) {box-sizing:border-box;min-width:0;max-width:100%;border-color:var(--ftp-line)!important;background:var(--ftp-surface-2)!important;color:var(--ftp-text)!important;overflow-wrap:anywhere;box-shadow:none;}
.ftp-modern #content .ftp-pm .ftp-pm-read__message .text :is(blockquote,.quote) {padding:10px 14px;border-left:3px solid var(--ftp-green)!important;}
.ftp-modern #content .ftp-pm .ftp-pm-read__message .text :is(pre,.scriptcode) {white-space:pre-wrap;overflow-wrap:anywhere;}
.ftp-modern #content .ftp-pm .ftp-pm-read__message .text table {display:block;max-width:100%;overflow-x:auto;}
.ftp-modern #content .ftp-pm .ftp-pm-read__message .text > :first-child,
.ftp-modern #content .ftp-pm .ftp-pm-read__message .text > [id^="pm-id-"] > :first-child {margin-top:0;}
.ftp-modern #content .ftp-pm .ftp-pm-read__message .text > :last-child,
.ftp-modern #content .ftp-pm .ftp-pm-read__message .text > [id^="pm-id-"] > :last-child {margin-bottom:0;}
.ftp-modern #content .ftp-pm .ftp-pm-read__message .signature {padding-top:10px;border-top:1px solid var(--ftp-line);overflow-wrap:anywhere;}
.ftp-modern #content .ftp-pm .ftp-pm-read__reply {margin-top:18px;padding:0;border:0;background:transparent!important;}
.ftp-modern #content .ftp-pm .ftp-pm-read__reply h3 {margin-bottom:10px;font-size:17px;}
.ftp-modern #content .ftp-pm .ftp-pm-read__reply > .btn {min-height:42px;border-radius:999px;}

@media(max-width:640px) {
 .ftp-modern #content .ftp-pm > .box_in {padding:18px 16px;}
 .ftp-modern #content .ftp-pm h1.title {font-size:20px;margin-bottom:16px;}
 .ftp-modern #content .ftp-pm .ftp-pm__toolbar {gap:14px;margin-bottom:20px;}
 .ftp-modern #content .ftp-pm #pm-menu {width:100%;gap:6px;}
 .ftp-modern #content .ftp-pm #pm-menu a {padding:9px 12px;}
 .ftp-modern #content .ftp-pm .ftp-pm__usage {flex-basis:100%;}
 .ftp-modern #content .ftp-pm .addpm .combo {grid-template-columns:minmax(0,1fr);gap:12px;}
 .ftp-modern #content .ftp-pm .form_submit > button {flex:1 1 130px;width:auto;}
 .ftp-modern #content .ftp-pm .pm :is(th,td) {padding:10px 5px;}
 .ftp-modern #content .ftp-pm .pm .pm_icon {width:22px;}
 .ftp-modern #content .ftp-pm .pm .pm_checkbox {width:28px;}
 .ftp-modern #content .ftp-pm .pm .pm_last_user {width:82px;}
 .ftp-modern #content .ftp-pm .pm div.pm_last_user {width:auto;font-size:12px;}
 .ftp-modern #content .ftp-pm .pm div.pm_subj {font-size:14px;}
 .ftp-modern #content .ftp-pm .pm_navigation td:last-child {flex:1 1 100%;margin-left:0;}
 .ftp-modern #content .ftp-pm .pm_navigation select {flex:1;}
 .ftp-modern #content .ftp-pm .ftp-pm-read__message {grid-template-columns:44px minmax(0,1fr);column-gap:10px;padding:16px 0;}
 .ftp-modern #content .ftp-pm .ftp-pm-read__message .avatar .cover {width:44px;height:44px;}
 .ftp-modern #content .ftp-pm .ftp-pm-read__message .com_user {gap:2px 8px;}
 .ftp-modern #content .ftp-pm .ftp-pm-read__message .com_content {grid-column:1 / -1;margin-top:4px;}
 .ftp-modern #content .ftp-pm .ftp-pm-read__message .meta {grid-column:1 / -1;}
}

.ftp-modern #content .ftp-pm .tox .tox-tbtn {border-color:transparent!important;background:transparent!important;color:var(--ftp-text)!important;box-shadow:none!important;}
.ftp-modern #content .ftp-pm .tox .tox-tbtn svg {fill:currentColor!important;}
.ftp-modern #content .ftp-pm .tox .tox-tbtn:hover,
.ftp-modern #content .ftp-pm .tox .tox-tbtn--enabled,
.ftp-modern #content .ftp-pm .tox .tox-tbtn[aria-pressed="true"] {background:var(--ftp-green-soft)!important;color:var(--ftp-green-dark)!important;}
.ftp-modern #content .ftp-pm .ftp-pm-read__message .meta li[hidden] {display:none!important;}

/* FIX-044 QA: lists can be direct children while compose has a form wrapper. */
.ftp-modern #content .ftp-pm {padding:0!important;}
.ftp-modern #content .ftp-pm .pm div.pm_subj a,
.ftp-modern #content .ftp-pm .pm .pm_last_message {display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;}
.ftp-modern #content .ftp-pm .pm_navigation .bbcodes {box-shadow:none!important;}
.ftp-modern #content .ftp-pm .ftp-pm-read__message .signature {opacity:1;color:var(--ftp-muted)!important;}
@media(max-width:640px) {
 .ftp-modern #content .ftp-pm .ftp-pm-read__message .avatar {grid-row:1;}
}

/* Bulk actions are secondary controls in both themes. */
.ftp-modern #content .ftp-pm .pm_navigation .bbcodes {border:1px solid var(--ftp-line-strong)!important;background:var(--ftp-surface-2)!important;color:var(--ftp-text)!important;}

/* Reset legacy absolute-positioned mobile comment tools inside PM only. */
.ftp-modern #content .ftp-pm .ftp-pm-read__message .meta {position:static!important;inset:auto!important;float:none!important;width:auto!important;transform:none;}
.ftp-modern #content .ftp-pm .ftp-pm-read__message .meta .left {position:static;width:auto;float:none!important;}
.ftp-modern #content .ftp-pm .ftp-pm-read__message .meta .left > li {position:static;float:none;max-width:100%;margin:0;}
.ftp-modern #content .ftp-pm .ftp-pm-read__message .meta .left a {width:auto!important;max-width:100%;white-space:normal;}
.ftp-modern #content .ftp-pm .ftp-pm-read__message .meta .reply a span {display:inline!important;}
.ftp-modern #content .ftp-pm .ftp-pm-read__message .meta .edit_btn > a {width:32px!important;}
