/* ==UserStyle==
@name           Kiwi Farms - Cyberpunk 2077 Edition
@namespace      github.com/openstyles/stylus
@version        1.0.0
@description    What if Kiwifarms existed in cyberpunk 2077
@author         General Zoider
==/UserStyle== */
@-moz-document url-prefix("https://kiwifarms.st/") {

    @import url('https://fonts.googleapis.com/css2?family=Rajdhani:wght@400;500;600;700&display=swap');
	/* ---- ROOT VARIABLES ---- */
	:root {
		--cp-yellow: #FCEE0A;
		--cp-yellow-dim: #B8A808;
		--cp-cyan: #00F0FF;
		--cp-cyan-dim: #00A8B3;
		--cp-magenta: #FF003C;
		--cp-magenta-dim: #B3002A;
		--cp-dark: #0D0D0D;
		--cp-panel: #1A1A1A;
		--cp-grid: #2A2A2A;
		--cp-grid-light: #3A3A3A;
		--cp-text: #E0E0E0;
		--cp-text-dim: #888888;
		--cp-glow-yellow: 0 0 10px rgba(252, 238, 10, 0.5), 0 0 20px rgba(252, 238, 10, 0.3);
		--cp-glow-cyan: 0 0 10px rgba(0, 240, 255, 0.5), 0 0 20px rgba(0, 240, 255, 0.3);
		--cp-glow-magenta: 0 0 10px rgba(255, 0, 60, 0.5), 0 0 20px rgba(255, 0, 60, 0.3);
		--cp-font-mono: 'Rajdhani', system-ui, sans-serif;
	}

	/* ---- GLOBAL RESET ---- */
	html,
	body {
		background-color: var(--cp-dark) !important;
		color: var(--cp-text) !important;
		font-family: var(--cp-font-mono) !important;
	}

	body::before {
		content: "";
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: linear-gradient(90deg, transparent 98%, rgba(0, 240, 255, 0.03) 98%),
		linear-gradient(0deg, transparent 98%, rgba(0, 240, 255, 0.03) 98%);
		background-size: 50px 50px;
		pointer-events: none;
		z-index: 9999;
	}

	/* ---- SCROLLBAR ---- */
	::-webkit-scrollbar {
		width: 8px;
		background: var(--cp-dark);
	}
	::-webkit-scrollbar-track {
		background: var(--cp-panel);
		border: 1px solid var(--cp-grid);
	}
	::-webkit-scrollbar-thumb {
		background: var(--cp-yellow);
		border: 1px solid var(--cp-yellow-dim);
	}
	::-webkit-scrollbar-thumb:hover {
		background: var(--cp-cyan);
		box-shadow: var(--cp-glow-cyan);
	}

	/* ---- NAVIGATION BAR ---- */
	.p-nav {
		background: linear-gradient(180deg, var(--cp-panel) 0%, var(--cp-dark) 100%) !important;
		border-bottom: 2px solid var(--cp-yellow) !important;
		box-shadow: 0 2px 20px rgba(252, 238, 10, 0.2) !important;
	}

	.p-nav-inner {
		background: transparent !important;
	}

	.p-nav-list .p-navEl-link {
		color: var(--cp-text) !important;
		font-family: var(--cp-font-mono) !important;
		text-transform: uppercase !important;
		letter-spacing: 1px !important;
		font-size: 12px !important;
		position: relative;
	}

	.p-nav-list .p-navEl-link:hover {
		color: var(--cp-yellow) !important;
		text-shadow: var(--cp-glow-yellow);
	}

	.p-navEl.is-selected .p-navEl-link {
		color: var(--cp-cyan) !important;
		text-shadow: var(--cp-glow-cyan);
	}

	/* Logo replacement with cyberpunk text */
	.p-nav-smallLogo img {
		display: none !important;
	}

	.p-nav-smallLogo a::after {
		content: "[KIWIFARMS_NET]";
		color: var(--cp-yellow);
		font-family: var(--cp-font-mono);
		font-size: 18px;
		font-weight: bold;
		text-shadow: var(--cp-glow-yellow);
		letter-spacing: 2px;
	}

	/* ---- SECTION LINKS ---- */
	.p-sectionLinks {
		background: var(--cp-panel) !important;
		border-bottom: 1px solid var(--cp-grid) !important;
	}

	.p-sectionLinks-list .p-navEl-link {
		color: var(--cp-text-dim) !important;
		font-size: 11px !important;
		text-transform: uppercase !important;
	}

	.p-sectionLinks-list .p-navEl-link:hover {
		color: var(--cp-cyan) !important;
		text-shadow: var(--cp-glow-cyan);
	}

	/* ---- USER MENU ---- */
	.p-navgroup-link {
		color: var(--cp-text) !important;
	}

	.p-navgroup-link:hover {
		color: var(--cp-yellow) !important;
	}

	.p-navgroup-link--user .p-navgroup-linkText {
		color: var(--cp-cyan) !important;
		text-shadow: var(--cp-glow-cyan);
	}

	/* ---- MAIN CONTENT AREA ---- */
	.p-body {
		background: var(--cp-dark) !important;
	}

	.p-body-inner {
		background: transparent !important;
	}

	/* ---- BLOCK CONTAINERS (Main Panels) ---- */
	.block-container {
		background: var(--cp-panel) !important;
		border: 1px solid var(--cp-grid) !important;
		border-left: 3px solid var(--cp-yellow) !important;
		border-radius: 0 !important;
		box-shadow: 5px 5px 0px rgba(252, 238, 10, 0.1) !important;
		position: relative;
		overflow: hidden;
	}

	.block-container::before {
		content: "";
		position: absolute;
		top: 0;
		right: 0;
		width: 100px;
		height: 2px;
		background: linear-gradient(90deg, transparent, var(--cp-cyan));
	}

	.block-minorHeader {
		background: linear-gradient(90deg, var(--cp-grid), transparent) !important;
		color: var(--cp-yellow) !important;
		font-family: var(--cp-font-mono) !important;
		text-transform: uppercase !important;
		letter-spacing: 2px !important;
		font-size: 11px !important;
		border-bottom: 1px solid var(--cp-yellow) !important;
		padding: 8px 12px !important;
	}

	/* ---- MESSAGE BLOCKS ---- */
	.block--messages {
		background: var(--cp-panel) !important;
	}

	.block--messages .block-container {
		border-left-color: var(--cp-cyan) !important;
	}

	/* ---- INDIVIDUAL MESSAGES ---- */
	.message {
		background: var(--cp-panel) !important;
		border-bottom: 1px solid var(--cp-grid) !important;
		position: relative;
	}

	.message::after {
		content: "";
		position: absolute;
		bottom: 0;
		left: 0;
		width: 0;
		height: 1px;
		background: var(--cp-cyan);
		transition: width 0.3s ease;
	}

	.message:hover::after {
		width: 100%;
	}

	.message-inner {
		background: transparent !important;
	}

	/* ---- USER SIDEBAR IN MESSAGES ---- */
	.message-cell--user {
		background: linear-gradient(180deg, var(--cp-grid), var(--cp-panel)) !important;
		border-right: 1px solid var(--cp-grid) !important;
		width: 180px !important;
	}

	.message-avatar {
		position: relative;
	}

	.message-avatar .avatar {
		border: 2px solid var(--cp-yellow) !important;
		border-radius: 0 !important;
		box-shadow: var(--cp-glow-yellow);
		filter: contrast(1.1) saturate(1.2);
	}

	.message-name .username {
		color: var(--cp-cyan) !important;
		font-family: var(--cp-font-mono) !important;
		text-transform: uppercase !important;
		font-size: 13px !important;
		text-shadow: var(--cp-glow-cyan);
	}

	.userBanner {
		background: var(--cp-magenta) !important;
		color: #fff !important;
		font-family: var(--cp-font-mono) !important;
		font-size: 9px !important;
		text-transform: uppercase !important;
		letter-spacing: 1px !important;
		border-radius: 0 !important;
		clip-path: polygon(0 0, 100% 0, 95% 100%, 0% 100%);
	}

	.userBanner--green {
		background: var(--cp-yellow) !important;
		color: var(--cp-dark) !important;
	}

	.userTitle {
		color: var(--cp-text-dim) !important;
		font-family: var(--cp-font-mono) !important;
		font-size: 10px !important;
	}

	/* ---- MESSAGE CONTENT ---- */
	.message-cell--main {
		background: var(--cp-panel) !important;
	}

	.message-attribution {
		border-bottom: 1px solid var(--cp-grid) !important;
		padding-bottom: 8px !important;
		margin-bottom: 12px !important;
	}

	.message-attribution-main {
		color: var(--cp-yellow) !important;
		font-family: var(--cp-font-mono) !important;
		font-size: 11px !important;
	}

	.message-attribution-main time {
		color: var(--cp-yellow-dim) !important;
	}

	.message-body {
		color: var(--cp-text) !important;
		font-family: var(--cp-font-mono) !important;
		line-height: 1.6 !important;
	}

	.message-body a {
		color: var(--cp-cyan) !important;
		text-decoration: none !important;
		border-bottom: 1px dotted var(--cp-cyan) !important;
	}

	.message-body a:hover {
		color: var(--cp-yellow) !important;
		border-bottom-color: var(--cp-yellow) !important;
		text-shadow: var(--cp-glow-yellow);
	}

	/* ---- QUOTE BLOCKS ---- */
	.bbCodeBlock {
		background: var(--cp-dark) !important;
		border: 1px solid var(--cp-grid) !important;
		border-left: 3px solid var(--cp-magenta) !important;
		border-radius: 0 !important;
	}

	.bbCodeBlock-title {
		background: linear-gradient(90deg, var(--cp-magenta-dim), transparent) !important;
		color: var(--cp-text) !important;
		font-family: var(--cp-font-mono) !important;
		font-size: 10px !important;
		text-transform: uppercase !important;
		letter-spacing: 1px !important;
	}

	.bbCodeBlock-content {
		color: var(--cp-text-dim) !important;
	}

	/* ---- REACTIONS ---- */
	.reactionsBar {
		background: transparent !important;
	}

	.reaction--small {
		background: var(--cp-dark) !important;
		border: 1px solid var(--cp-grid) !important;
		border-radius: 0 !important;
	}

	.reaction--small:hover {
		border-color: var(--cp-yellow) !important;
		box-shadow: var(--cp-glow-yellow);
	}

	.reactionsBar-link {
		color: var(--cp-text-dim) !important;
		font-family: var(--cp-font-mono) !important;
		font-size: 11px !important;
	}

	/* ---- ACTION BAR (Reply, Quote, etc) ---- */
	.actionBar-action {
		color: var(--cp-text-dim) !important;
		font-family: var(--cp-font-mono) !important;
		font-size: 10px !important;
		text-transform: uppercase !important;
		letter-spacing: 1px !important;
	}

	.actionBar-action:hover {
		color: var(--cp-cyan) !important;
		text-shadow: var(--cp-glow-cyan);
	}

	/* ---- QUICK REPLY ---- */
	.message--quickReply {
		background: var(--cp-panel) !important;
		border: 1px solid var(--cp-yellow) !important;
		border-left: 3px solid var(--cp-yellow) !important;
	}

	.fr-box {
		background: var(--cp-dark) !important;
		border: 1px solid var(--cp-grid) !important;
	}

	.fr-toolbar {
		background: var(--cp-panel) !important;
		border-bottom: 1px solid var(--cp-grid) !important;
	}

	.fr-command {
		color: var(--cp-text) !important;
	}

	.fr-command:hover {
		background: var(--cp-grid) !important;
		color: var(--cp-yellow) !important;
	}

	.fr-element {
		background: var(--cp-dark) !important;
		color: var(--cp-text) !important;
		font-family: var(--cp-font-mono) !important;
	}

	/* ---- BUTTONS ---- */
	.button {
		background: var(--cp-grid) !important;
		color: var(--cp-text) !important;
		border: 1px solid var(--cp-grid-light) !important;
		border-radius: 0 !important;
		font-family: var(--cp-font-mono) !important;
		text-transform: uppercase !important;
		letter-spacing: 1px !important;
		font-size: 11px !important;
		clip-path: polygon(0 0, 100% 0, 100% 70%, 95% 100%, 0 100%);
		transition: all 0.2s ease;
	}

	.button:hover {
		background: var(--cp-yellow) !important;
		color: var(--cp-dark) !important;
		border-color: var(--cp-yellow) !important;
		box-shadow: var(--cp-glow-yellow);
	}

	.button--primary {
		background: var(--cp-cyan) !important;
		color: var(--cp-dark) !important;
		border-color: var(--cp-cyan) !important;
		font-weight: bold !important;
	}

	.button--primary:hover {
		background: var(--cp-yellow) !important;
		border-color: var(--cp-yellow) !important;
		box-shadow: var(--cp-glow-yellow);
	}

	.button--link {
		background: transparent !important;
		border: none !important;
		color: var(--cp-text-dim) !important;
	}

	.button--link:hover {
		background: transparent !important;
		color: var(--cp-cyan) !important;
		box-shadow: none !important;
	}

	/* ---- PAGE NAVIGATION ---- */
	.pageNavWrapper {
		background: var(--cp-panel) !important;
		border: 1px solid var(--cp-grid) !important;
		padding: 10px !important;
	}

	.pageNav-page a {
		background: var(--cp-dark) !important;
		color: var(--cp-text) !important;
		border: 1px solid var(--cp-grid) !important;
		border-radius: 0 !important;
		font-family: var(--cp-font-mono) !important;
	}

	.pageNav-page a:hover {
		background: var(--cp-grid) !important;
		color: var(--cp-yellow) !important;
		border-color: var(--cp-yellow) !important;
		box-shadow: var(--cp-glow-yellow);
	}

	.pageNav-page--current a {
		background: var(--cp-yellow) !important;
		color: var(--cp-dark) !important;
		border-color: var(--cp-yellow) !important;
		font-weight: bold !important;
	}

	.pageNav-jump {
		color: var(--cp-cyan) !important;
		font-family: var(--cp-font-mono) !important;
	}

	/* ---- SIDEBAR ---- */
	.p-body-sidebar {
		background: transparent !important;
	}

	.p-body-sidebar .block-container {
		border-left-color: var(--cp-magenta) !important;
		margin-bottom: 15px !important;
	}

	.p-body-sidebar .block-row {
		background: var(--cp-panel) !important;
		border-bottom: 1px solid var(--cp-grid) !important;
		color: var(--cp-text) !important;
	}

	.p-body-sidebar .contentRow-main a {
		color: var(--cp-cyan) !important;
		font-family: var(--cp-font-mono) !important;
		font-size: 12px !important;
	}

	.p-body-sidebar .contentRow-main a:hover {
		color: var(--cp-yellow) !important;
		text-shadow: var(--cp-glow-yellow);
	}

	.p-body-sidebar .contentRow-minor {
		color: var(--cp-text-dim) !important;
		font-size: 10px !important;
	}

	/* ---- PARTICIPANT LIST ---- */
	.block-body--collapsible .block-row {
		background: var(--cp-panel) !important;
	}

	.block-body--collapsible .avatar {
		border: 1px solid var(--cp-grid) !important;
		border-radius: 0 !important;
	}

	/* ---- OFF CANVAS MENU ---- */
	.offCanvasMenu-content {
		background: var(--cp-panel) !important;
		border-right: 2px solid var(--cp-yellow) !important;
	}

	.offCanvasMenu-header {
		background: var(--cp-dark) !important;
		color: var(--cp-yellow) !important;
		font-family: var(--cp-font-mono) !important;
		text-transform: uppercase !important;
		border-bottom: 1px solid var(--cp-yellow) !important;
	}

	.offCanvasMenu-link {
		color: var(--cp-text) !important;
		font-family: var(--cp-font-mono) !important;
		text-transform: uppercase !important;
		font-size: 12px !important;
		letter-spacing: 1px !important;
	}

	.offCanvasMenu-link:hover {
		background: var(--cp-grid) !important;
		color: var(--cp-cyan) !important;
	}

	/* ---- DROPDOWN MENUS ---- */
	.menu-content {
		background: var(--cp-panel) !important;
		border: 1px solid var(--cp-yellow) !important;
		border-radius: 0 !important;
		box-shadow: var(--cp-glow-yellow) !important;
	}

	.menu-header {
		background: var(--cp-dark) !important;
		color: var(--cp-yellow) !important;
		font-family: var(--cp-font-mono) !important;
		text-transform: uppercase !important;
		font-size: 11px !important;
		letter-spacing: 2px !important;
		border-bottom: 1px solid var(--cp-grid) !important;
	}

	.menu-linkRow {
		color: var(--cp-text) !important;
		font-family: var(--cp-font-mono) !important;
		font-size: 12px !important;
	}

	.menu-linkRow:hover {
		background: var(--cp-grid) !important;
		color: var(--cp-cyan) !important;
	}

	.menu-separator {
		border-color: var(--cp-grid) !important;
	}

	/* ---- NOTICES ---- */
	.notice {
		background: var(--cp-panel) !important;
		border: 1px solid var(--cp-magenta) !important;
		border-left: 3px solid var(--cp-magenta) !important;
		color: var(--cp-text) !important;
		font-family: var(--cp-font-mono) !important;
		font-size: 12px !important;
	}

	.notice--primary {
		background: linear-gradient(90deg, rgba(255, 0, 60, 0.1), transparent) !important;
	}

	/* ---- BREADCRUMBS ---- */
	.p-breadcrumbs {
		background: transparent !important;
	}

	.p-breadcrumbs li a {
		color: var(--cp-text-dim) !important;
		font-family: var(--cp-font-mono) !important;
		font-size: 11px !important;
		text-transform: uppercase !important;
	}

	.p-breadcrumbs li a:hover {
		color: var(--cp-yellow) !important;
	}

	/* ---- TITLE & DESCRIPTION ---- */
	.p-title-value {
		color: var(--cp-yellow) !important;
		font-family: var(--cp-font-mono) !important;
		text-transform: uppercase !important;
		letter-spacing: 3px !important;
		text-shadow: var(--cp-glow-yellow);
		position: relative;
		display: inline-block;
	}

	.p-title-value::after {
		content: "_";
		animation: blink 1s infinite;
		color: var(--cp-cyan);
	}

	@keyframes blink {
		0%,
		50% {
			opacity: 1;
		}
		51%,
		100% {
			opacity: 0;
		}
	}

	.p-description {
		color: var(--cp-text-dim) !important;
		font-family: var(--cp-font-mono) !important;
		font-size: 11px !important;
	}

	.p-description a {
		color: var(--cp-cyan) !important;
	}

	/* ---- INPUT FIELDS ---- */
	.input {
		background: var(--cp-dark) !important;
		color: var(--cp-text) !important;
		border: 1px solid var(--cp-grid) !important;
		border-radius: 0 !important;
		font-family: var(--cp-font-mono) !important;
	}

	.input:focus {
		border-color: var(--cp-cyan) !important;
		box-shadow: var(--cp-glow-cyan);
		outline: none !important;
	}

	/* ---- SEARCH BOX ---- */
	.quick-search .input {
		background: var(--cp-dark) !important;
		color: var(--cp-yellow) !important;
		border: 1px solid var(--cp-yellow) !important;
	}

	.quick-search .input::placeholder {
		color: var(--cp-yellow-dim) !important;
	}

	/* ---- AVATARS GLOBAL ---- */
	.avatar {
		border-radius: 0 !important;
		border: 1px solid var(--cp-grid) !important;
	}

	.avatar--m {
		border: 2px solid var(--cp-grid) !important;
	}

	/* ---- USER BANNERS ---- */
	.userBanner--300-member {
		background: var(--cp-cyan) !important;
		color: var(--cp-dark) !important;
	}

	/* ---- DISRUPTIVE USER ICON ---- */
	.disruptive-user {
		color: var(--cp-magenta) !important;
		text-shadow: var(--cp-glow-magenta);
	}

	/* ---- GLITCH EFFECT FOR IMPORTANT TEXT ---- */
	.message-name .username::before,
	.p-title-value::before {
		content: attr(data-text);
		position: absolute;
		left: 2px;
		text-shadow: -1px 0 var(--cp-magenta);
		top: 0;
		overflow: hidden;
		clip: rect(0, 900px, 0, 0);
		animation: glitch-anim 3s infinite linear alternate-reverse;
	}

	@keyframes glitch-anim {
		0% {
			clip: rect(10px, 9999px, 85px, 0);
		}
		20% {
			clip: rect(63px, 9999px, 12px, 0);
		}
		40% {
			clip: rect(23px, 9999px, 95px, 0);
		}
		60% {
			clip: rect(85px, 9999px, 40px, 0);
		}
		80% {
			clip: rect(5px, 9999px, 70px, 0);
		}
		100% {
			clip: rect(45px, 9999px, 20px, 0);
		}
	}

	/* ---- SCANLINE OVERLAY ---- */
	body::after {
		content: "";
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: linear-gradient( to bottom,
		rgba(255, 255, 255, 0),
		rgba(255, 255, 255, 0) 50%,
		rgba(0, 0, 0, 0.1) 50%,
		rgba(0, 0, 0, 0.1));
		background-size: 100% 4px;
		pointer-events: none;
		z-index: 9998;
		opacity: 0.3;
	}

	/* ---- CORNER DECORATIONS ---- */
	.block-container::after {
		content: "";
		position: absolute;
		bottom: 0;
		right: 0;
		width: 20px;
		height: 20px;
		border-bottom: 2px solid var(--cp-cyan);
		border-right: 2px solid var(--cp-cyan);
		opacity: 0.5;
	}

	/* ---- LOADING ANIMATION REPLACEMENT ---- */
	.is-loading {
		background: linear-gradient(90deg, var(--cp-dark), var(--cp-grid), var(--cp-dark)) !important;
		background-size: 200% 100% !important;
		animation: loading-scan 1.5s infinite !important;
	}

	@keyframes loading-scan {
		0% {
			background-position: 200% 0;
		}
		100% {
			background-position: -200% 0;
		}
	}

	/* ---- REACTION SPRITES OVERRIDE ---- */
	.reaction-sprite {
		filter: hue-rotate(180deg) saturate(2) !important;
	}

	/* ---- ATTACHMENT UPLOADS ---- */
	.attachmentUploads {
		background: var(--cp-dark) !important;
		border: 1px solid var(--cp-grid) !important;
	}

	.attachUploadList {
		background: transparent !important;
	}

	/* ---- FORM BUTTON GROUP ---- */
	.formButtonGroup {
		background: var(--cp-panel) !important;
		border-top: 1px solid var(--cp-grid) !important;
		padding: 15px !important;
	}

	/* ---- EDITOR TOOLBAR ICONS ---- */
	.fa--xf svg {
		fill: var(--cp-text) !important;
	}

	.fr-command:hover .fa--xf svg {
		fill: var(--cp-yellow) !important;
	}

	/* ---- MENU TOGGLES ---- */
	.collapseTrigger {
		color: var(--cp-cyan) !important;
		font-family: var(--cp-font-mono) !important;
		font-size: 11px !important;
		text-transform: uppercase !important;
		cursor: pointer;
	}

	.collapseTrigger:hover {
		color: var(--cp-yellow) !important;
		text-shadow: var(--cp-glow-yellow);
	}

	/* ---- H SCROLLER ---- */
	.hScroller-action {
		background: var(--cp-panel) !important;
		color: var(--cp-yellow) !important;
		border: 1px solid var(--cp-grid) !important;
	}

	/* ---- PAGE WRAPPER ---- */
	.p-pageWrapper {
		background: var(--cp-dark) !important;
	}

	/* ---- XENBASE SPECIFIC OVERRIDES ---- */
	.XenBase {
		--xb-canvas: var(--cp-dark) !important;
		--xb-content: var(--cp-panel) !important;
	}

	/* ---- STYLE VARIATION TOGGLE ---- */
	.js-styleVariationsLink {
		color: var(--cp-text) !important;
	}

	.js-styleVariationsLink:hover {
		color: var(--cp-cyan) !important;
		text-shadow: var(--cp-glow-cyan);
	}

	/* ---- NOTIFICATION BADGES ---- */
	.badgeContainer::after {
		background: var(--cp-magenta) !important;
		color: #fff !important;
		font-family: var(--cp-font-mono) !important;
		border-radius: 0 !important;
		box-shadow: var(--cp-glow-magenta);
	}

	/* ---- TOOLTIPS ---- */
	.tooltip {
		background: var(--cp-panel) !important;
		border: 1px solid var(--cp-yellow) !important;
		border-radius: 0 !important;
		color: var(--cp-text) !important;
		font-family: var(--cp-font-mono) !important;
		font-size: 11px !important;
		box-shadow: var(--cp-glow-yellow) !important;
	}

	/* ---- OVERLAYS ---- */
	.overlay {
		background: rgba(13, 13, 13, 0.95) !important;
	}

	.overlay-content {
		background: var(--cp-panel) !important;
		border: 1px solid var(--cp-yellow) !important;
		border-radius: 0 !important;
		box-shadow: var(--cp-glow-yellow) !important;
	}

	.overlay-title {
		background: var(--cp-dark) !important;
		color: var(--cp-yellow) !important;
		font-family: var(--cp-font-mono) !important;
		text-transform: uppercase !important;
		letter-spacing: 2px !important;
		border-bottom: 1px solid var(--cp-yellow) !important;
	}

	/* ---- MODALS ---- */
	.block-body.block-row {
		background: var(--cp-panel) !important;
		color: var(--cp-text) !important;
	}

	/* ---- SELECT TO QUOTE ---- */
	.js-selectToQuote {
		border-left: 2px solid transparent !important;
		transition: border-color 0.2s ease;
	}

	.js-selectToQuote:hover {
		border-left-color: var(--cp-cyan) !important;
	}

	/* ---- CODE BLOCKS ---- */
	.bbCodeBlock--code {
		background: var(--cp-dark) !important;
		border: 1px solid var(--cp-grid) !important;
		border-left: 3px solid var(--cp-cyan) !important;
	}

	.bbCodeBlock--code .bbCodeBlock-content {
		font-family: var(--cp-font-mono) !important;
		color: var(--cp-cyan) !important;
	}

	/* ---- SPOILERS ---- */
	.spoiler {
		background: var(--cp-dark) !important;
		border: 1px solid var(--cp-magenta) !important;
		color: var(--cp-magenta) !important;
	}

	.spoiler:hover {
		background: var(--cp-magenta-dim) !important;
		color: var(--cp-text) !important;
	}

	/* ---- SMILIES / EMOJI ---- */
	.smilie {
		filter: hue-rotate(180deg) contrast(1.2) !important;
	}

	/* ---- MEDIA EMBEDS ---- */
	.bbMediaWrapper {
		border: 1px solid var(--cp-grid) !important;
		background: var(--cp-dark) !important;
	}

	/* ---- ATTACHMENTS ---- */
	.attachment {
		border: 1px solid var(--cp-grid) !important;
		background: var(--cp-panel) !important;
	}

	.attachment-name {
		color: var(--cp-cyan) !important;
		font-family: var(--cp-font-mono) !important;
	}

	/* ---- PAGINATION JUMP ---- */
	.menu--pageJump {
		background: var(--cp-panel) !important;
	}

	.menu--pageJump .input {
		background: var(--cp-dark) !important;
		color: var(--cp-yellow) !important;
		border: 1px solid var(--cp-yellow) !important;
	}

	/* ---- STRUCTURAL MENU ---- */
	.menu--structural {
		background: var(--cp-panel) !important;
		border: 1px solid var(--cp-cyan) !important;
		box-shadow: var(--cp-glow-cyan) !important;
	}

	/* ---- FOOTER AREA ---- */
	.p-footer {
		background: var(--cp-panel) !important;
		border-top: 2px solid var(--cp-magenta) !important;
		color: var(--cp-text-dim) !important;
		font-family: var(--cp-font-mono) !important;
		font-size: 11px !important;
	}

	/* ---- RESPONSIVE ADJUSTMENTS ---- */
	@media (max-width: 768px) {
		.message-cell--user {
			width: 120px !important;
		}

		.p-title-value {
			font-size: 18px !important;
		}
	}

	/* ---- SELECTION COLORS ---- */
	::selection {
		background: var(--cp-yellow) !important;
		color: var(--cp-dark) !important;
	}

	::-moz-selection {
		background: var(--cp-yellow) !important;
		color: var(--cp-dark) !important;
	}

	/* ---- FOCUS STYLES ---- */
	:focus {
		outline: 1px solid var(--cp-cyan) !important;
		outline-offset: 2px !important;
	}

	/* ---- LINKS GLOBAL ---- */
	a {
		transition: color 0.2s ease, text-shadow 0.2s ease;
	}

	/* ---- BLOCK ROW HOVER ---- */
	.block-row:hover {
		background: var(--cp-grid) !important;
	}

	/* ---- CONTENT ROW FIGURE ---- */
	.contentRow-figure .avatar {
		border: 1px solid var(--cp-cyan) !important;
		box-shadow: var(--cp-glow-cyan);
	}

	/* ---- PAIRS (User Stats) ---- */
	.pairs dt {
		color: var(--cp-text-dim) !important;
		font-family: var(--cp-font-mono) !important;
		font-size: 10px !important;
		text-transform: uppercase !important;
	}

	.pairs dd {
		color: var(--cp-yellow) !important;
		font-family: var(--cp-font-mono) !important;
	}

	/* ---- JOINED DATE ---- */
	.joined-2024,
	.joined-2023,
	.joined-2025 {
		color: var(--cp-cyan) !important;
	}

	/* ---- USER EXTRAS ---- */
	.message-userExtras dl {
		border-bottom: 1px dotted var(--cp-grid) !important;
		padding-bottom: 4px !important;
		margin-bottom: 4px !important;
	}

	/* ---- INLINE SPOILER ---- */
	.bbCodeInlineSpoiler {
		background: var(--cp-dark) !important;
		border: 1px solid var(--cp-magenta) !important;
		color: var(--cp-magenta) !important;
		padding: 0 4px !important;
	}

	.bbCodeInlineSpoiler:hover {
		background: var(--cp-magenta-dim) !important;
		color: var(--cp-text) !important;
	}

	/* ---- HORIZONTAL RULE ---- */
	hr {
		border-color: var(--cp-grid) !important;
		border-style: solid !important;
		border-width: 1px 0 0 0 !important;
	}

	/* ---- TABLE STYLES ---- */
	table {
		border-color: var(--cp-grid) !important;
	}

	th {
		background: var(--cp-grid) !important;
		color: var(--cp-yellow) !important;
		font-family: var(--cp-font-mono) !important;
		text-transform: uppercase !important;
		font-size: 11px !important;
	}

	td {
		border-color: var(--cp-grid) !important;
		color: var(--cp-text) !important;
	}

	/* ---- DEFINITION LISTS ---- */
	dl.pairs.pairs--justified {
		font-size: 11px !important;
	}

	/* ---- MESSAGE FOOTER ---- */
	.message-footer {
		border-top: 1px solid var(--cp-grid) !important;
		margin-top: 10px !important;
		padding-top: 10px !important;
	}

	/* ---- REACTION BAR ACTIVE ---- */
	.reactionsBar.is-active {
		background: transparent !important;
	}

	/* ---- MULTI QUOTE BUTTON ---- */
	.button--multiQuote {
		background: var(--cp-dark) !important;
		border: 1px dashed var(--cp-yellow) !important;
		color: var(--cp-yellow) !important;
	}

	.button--multiQuote:hover {
		background: var(--cp-yellow) !important;
		color: var(--cp-dark) !important;
	}

	/* ---- ATTACH BUTTON ---- */
	.js-attachButton .button {
		background: transparent !important;
		border: 1px solid var(--cp-cyan) !important;
		color: var(--cp-cyan) !important;
	}

	.js-attachButton .button:hover {
		background: var(--cp-cyan) !important;
		color: var(--cp-dark) !important;
	}

	/* ---- PREVIEW BUTTON ---- */
	#xfPreview-1 {
		color: var(--cp-text-dim) !important;
	}

	#xfPreview-1:hover {
		color: var(--cp-cyan) !important;
	}

	/* ---- DRAFT DROPDOWN ---- */
	#fr-dropdown-menu-xfDraft-1 {
		background: var(--cp-panel) !important;
		border: 1px solid var(--cp-yellow) !important;
	}

	/* ---- FONT DROPDOWN ---- */
	#fr-dropdown-menu-fontFamily-1 {
		background: var(--cp-panel) !important;
		border: 1px solid var(--cp-cyan) !important;
	}

	#fr-dropdown-menu-fontFamily-1 a {
		color: var(--cp-text) !important;
	}

	#fr-dropdown-menu-fontFamily-1 a:hover {
		background: var(--cp-grid) !important;
		color: var(--cp-yellow) !important;
	}

	/* ---- SIZE DROPDOWN ---- */
	#fr-dropdown-menu-fontSize-1 {
		background: var(--cp-panel) !important;
		border: 1px solid var(--cp-cyan) !important;
	}

	#fr-dropdown-menu-fontSize-1 a {
		color: var(--cp-text) !important;
	}

	#fr-dropdown-menu-fontSize-1 a:hover {
		background: var(--cp-grid) !important;
		color: var(--cp-yellow) !important;
	}

	/* ---- ALIGN DROPDOWN ---- */
	#fr-dropdown-menu-align-1 {
		background: var(--cp-panel) !important;
		border: 1px solid var(--cp-cyan) !important;
	}

	/* ---- LIST DROPDOWN ---- */
	#fr-dropdown-menu-xfList-1 {
		background: var(--cp-panel) !important;
		border: 1px solid var(--cp-cyan) !important;
	}

	/* ---- PARAGRAPH DROPDOWN ---- */
	#fr-dropdown-menu-paragraphFormat-1 {
		background: var(--cp-panel) !important;
		border: 1px solid var(--cp-cyan) !important;
	}

	/* ---- MORE TOOLBARS ---- */
	.fr-more-toolbar {
		background: var(--cp-panel) !important;
		border: 1px solid var(--cp-grid) !important;
	}

	/* ---- SECOND TOOLBAR ---- */
	.fr-second-toolbar {
		background: var(--cp-panel) !important;
		border-top: 1px solid var(--cp-grid) !important;
	}

	/* ---- PLACEHOLDER TEXT ---- */
	.fr-placeholder {
		color: var(--cp-text-dim) !important;
		font-family: var(--cp-font-mono) !important;
	}

	/* ---- EDITOR SCROLLBAR ---- */
	.fr-element::-webkit-scrollbar {
		width: 6px;
	}

	.fr-element::-webkit-scrollbar-track {
		background: var(--cp-dark);
	}

	.fr-element::-webkit-scrollbar-thumb {
		background: var(--cp-grid-light);
	}

	/* ---- NOSCRIPT TEXTAREA ---- */
	noscript textarea {
		background: var(--cp-dark) !important;
		color: var(--cp-text) !important;
		border: 1px solid var(--cp-grid) !important;
		font-family: var(--cp-font-mono) !important;
	}
}
