/* Legacy PHP markup compatibility — dark premium (no theme CSS dependency) */

body {
	margin: 0;
	font-family: 'Inter', 'Segoe UI', system-ui, sans-serif;
}

/* TSC Icon library (Font Awesome 6) */
.tsc-icon {
	display: inline-block;
	line-height: 1;
	vertical-align: -0.125em;
	text-align: center;
}

.tsc-icon--xs {
	font-size: 0.625rem;
	width: 0.875em;
}

.tsc-icon--sm {
	font-size: 0.75rem;
}

.tsc-section-icon {
	font-size: 0.875rem;
	color: rgb(251 146 60);
	margin-right: 0.375rem;
}

.tsc-section-title--radio .tsc-section-icon,
.tsc-section-title--stats .tsc-section-icon {
	color: rgb(161 161 170);
}

.tsc-section-title--shout .tsc-section-icon,
.tsc-section-title--browse .tsc-section-icon,
.tsc-section-title--user .tsc-section-icon,
.tsc-section-title--upload .tsc-section-icon {
	color: rgb(251 146 60);
}

.tsc-section-title,
.tsc-section-title--radio,
.tsc-section-title--stats,
.tsc-section-title--shout,
.tsc-section-title--browse,
.tsc-section-title--user,
.tsc-section-title--upload {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
}

.tsc-icon-wrap {
	display: inline-flex;
	align-items: center;
	gap: 0.375rem;
}

.tsc-stats-list-label {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
}

.tsc-stats-list-icon {
	width: 1rem;
	font-size: 0.6875rem;
	color: rgb(113 113 122);
	flex-shrink: 0;
}

.tsc-stats-list-row:hover .tsc-stats-list-icon {
	color: rgb(161 161 170);
}

.tsc-stats-list-row--green .tsc-stats-list-icon { color: rgb(74 222 128 / 0.7); }
.tsc-stats-list-row--red .tsc-stats-list-icon { color: rgb(248 113 113 / 0.7); }
.tsc-stats-list-row--orange .tsc-stats-list-icon { color: rgb(251 146 60 / 0.7); }
.tsc-stats-list-row--yellow .tsc-stats-list-icon { color: rgb(250 204 21 / 0.7); }
.tsc-stats-list-row--blue .tsc-stats-list-icon { color: rgb(96 165 250 / 0.7); }

.tsc-online-title-icon {
	color: rgb(74 222 128);
	margin-right: 0.375rem;
}

.tsc-online-sub-icon {
	color: rgb(113 113 122);
	margin-right: 0.25rem;
}

.tsc-stats-header-badge,
.tsc-shout-header-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
}

.tsc-data-table thead tr th {
	display: table-cell;
}

.tsc-data-table thead tr th .tsc-icon {
	margin-right: 0.25rem;
	opacity: 0.75;
}

.tsc-tab-label {
	display: inline-flex;
	align-items: center;
}

.tsc-radio-btn {
	gap: 0.375rem;
}

/* ── Premium site shell & responsive layout ── */
.tsc-main-body {
	width: 100%;
	min-height: 100vh;
	position: relative;
	z-index: 1;
}

.tsc-site-shell {
	width: 100%;
	max-width: 90rem;
	margin-left: auto;
	margin-right: auto;
	padding: 0.75rem 0.875rem 1.5rem;
	box-sizing: border-box;
}

@media (min-width: 640px) {
	.tsc-site-shell {
		padding-left: 1.25rem;
		padding-right: 1.25rem;
	}
}

@media (min-width: 1280px) {
	.tsc-site-shell {
		padding-left: 1.5rem;
		padding-right: 1.5rem;
	}
}

/* Mobile top bar */
.tsc-mobile-bar {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	margin-bottom: 0.75rem;
	padding: 0.5rem 0.75rem;
	border-radius: 0.75rem;
	border: 1px solid rgb(63 63 70 / 0.55);
	background: rgb(24 24 27);
	box-shadow: 0 8px 24px rgb(0 0 0 / 0.35);
}

@media (min-width: 1024px) {
	.tsc-mobile-bar {
		display: none;
	}
}

.tsc-nav-toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.75rem;
	height: 2.75rem;
	padding: 0;
	border: 1px solid rgb(63 63 70);
	border-radius: 0.5rem;
	background: rgb(9 9 11);
	color: rgb(244 244 245);
	cursor: pointer;
	flex-shrink: 0;
}

.tsc-nav-toggle:hover {
	border-color: rgb(251 146 60 / 0.45);
	color: rgb(251 146 60);
}

.tsc-nav-toggle-icon {
	display: block;
	width: 1.125rem;
	height: 2px;
	background: currentcolor;
	box-shadow: 0 -6px 0 currentcolor, 0 6px 0 currentcolor;
}

.tsc-mobile-brand {
	flex: 1;
	min-width: 0;
	font-size: 0.9375rem;
	font-weight: 700;
	color: rgb(244 244 245);
	text-decoration: none;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.tsc-mobile-brand:hover {
	color: rgb(251 146 60);
}

.tsc-mobile-inbox {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2rem;
	height: 2rem;
	padding: 0 0.5rem;
	border-radius: 9999px;
	background: rgb(239 68 68 / 0.15);
	border: 1px solid rgb(239 68 68 / 0.35);
	color: rgb(252 165 165);
	font-size: 0.75rem;
	font-weight: 700;
	text-decoration: none;
	flex-shrink: 0;
}

/* Logo banner */
.tsc-logo-banner {
	display: block;
	width: 100%;
	margin-bottom: 0.75rem;
	border-radius: 0.75rem;
	overflow: hidden;
	border: 1px solid rgb(63 63 70 / 0.55);
	box-shadow: 0 20px 50px -12px rgba(0, 0, 0, 0.65);
	text-decoration: none;
	line-height: 0;
}

.tsc-logo-banner:hover {
	border-color: rgb(251 146 60 / 0.4);
}

.tsc-logo-banner__img {
	display: none;
	width: 100%;
	height: auto;
	max-width: 100%;
}

.tsc-logo-banner__img--dark {
	display: block;
}

html[data-tsc-theme="light"] .tsc-logo-banner__img--dark {
	display: none;
}

html[data-tsc-theme="light"] .tsc-logo-banner__img--light {
	display: block;
}

@media (min-width: 640px) {
	.tsc-logo-banner {
		margin-bottom: 1rem;
	}
}

/* Stats panel */
.tsc-stats-panel {
	margin-bottom: 1rem;
}

.tsc-stats-strip {
	display: flex;
	gap: 0.5rem;
	overflow-x: auto;
	scroll-snap-type: x proximity;
	-webkit-overflow-scrolling: touch;
	padding: 0.5rem;
	border-radius: 0.75rem;
	border: 1px solid rgb(63 63 70 / 0.55);
	background: rgb(24 24 27);
	box-shadow: 0 8px 24px rgb(0 0 0 / 0.3);
	scrollbar-width: thin;
	scrollbar-color: rgb(63 63 70) transparent;
}

.tsc-stats-strip::-webkit-scrollbar {
	height: 4px;
}

.tsc-stat-card {
	flex: 0 0 auto;
	min-width: 6.75rem;
	scroll-snap-align: start;
	padding: 0.625rem 0.75rem;
	border-radius: 0.5rem;
	background: rgb(9 9 11);
	text-align: center;
}

.tsc-stat-label {
	display: block;
	font-size: 0.625rem;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: rgb(113 113 122);
	margin-bottom: 0.2rem;
}

.tsc-stat-value {
	font-size: 0.8125rem;
	font-weight: 600;
	color: rgb(244 244 245);
	line-height: 1.3;
}

.tsc-stat-value a {
	color: inherit;
	text-decoration: none;
}

.tsc-stat-value a:hover {
	color: rgb(251 146 60);
}

@media (min-width: 768px) {
	.tsc-stats-strip {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		overflow: visible;
	}

	.tsc-stat-card {
		min-width: 0;
	}
}

@media (min-width: 1024px) {
	.tsc-stats-strip {
		grid-template-columns: repeat(5, minmax(0, 1fr));
	}

	.tsc-stat-card {
		padding: 0.75rem 0.5rem;
	}

	.tsc-stat-value {
		font-size: 0.875rem;
	}
}

/* Layout frame + grid */
.tsc-layout-frame {
	border: 1px solid rgb(39 39 42 / 0.85);
	border-radius: 1rem;
	background: rgb(24 24 27 / 0.55);
	box-shadow: 0 10px 25px rgb(0 0 0 / 0.35);
	padding: 0.875rem;
}

@media (min-width: 640px) {
	.tsc-layout-frame {
		padding: 1.125rem;
	}
}

@media (min-width: 1024px) {
	.tsc-layout-frame {
		padding: 1.5rem;
	}
}

.tsc-layout-grid {
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
}

@media (min-width: 1024px) {
	.tsc-layout-grid {
		flex-direction: row;
		align-items: flex-start;
		gap: 1.5rem;
	}
}

/* Sidebar / mobile drawer */
.tsc-nav-backdrop {
	display: none;
	position: fixed;
	inset: 0;
	z-index: 45;
	background: rgb(0 0 0 / 0.65);
}

.tsc-nav-backdrop.is-open {
	display: block;
}

.tsc-sidebar {
	width: 100%;
	flex-shrink: 0;
}

@media (max-width: 1023px) {
	.tsc-sidebar {
		position: fixed;
		top: 0;
		left: 0;
		bottom: 0;
		width: min(88vw, 20rem);
		z-index: 50;
		padding: 0.75rem;
		overflow-y: auto;
		background: rgb(9 9 11);
		border-right: 1px solid rgb(39 39 42);
		box-shadow: 8px 0 32px rgb(0 0 0 / 0.5);
		transform: translateX(-105%);
		transition: transform 0.22s ease;
		-webkit-overflow-scrolling: touch;
	}

	.tsc-sidebar.is-open {
		transform: translateX(0);
	}

	body.tsc-nav-open {
		overflow: hidden;
	}
}

@media (min-width: 1024px) {
	.tsc-sidebar {
		width: 13.5rem;
		position: sticky;
		top: 1rem;
		max-height: calc(100vh - 2rem);
		overflow-y: auto;
		scrollbar-width: thin;
		scrollbar-color: rgb(63 63 70) transparent;
	}
}

.tsc-main {
	flex: 1;
	min-width: 0;
	width: 100%;
}

/* Navigation panel */
.tsc-nav-panel {
	width: 100%;
	border-radius: 0.75rem;
	border: 1px solid rgb(39 39 42 / 0.85);
	background: rgb(24 24 27 / 0.55);
	padding: 0;
	box-shadow: 0 10px 25px rgb(0 0 0 / 0.35);
	overflow: hidden;
}

@media (min-width: 1024px) {
	.tsc-nav-panel {
		padding: 0;
	}
}

.tsc-nav-close {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2.5rem;
	height: 2.5rem;
	margin: 0.5rem 0.5rem 0.25rem auto;
	padding: 0;
	border: 1px solid rgb(63 63 70);
	border-radius: 0.5rem;
	background: rgb(9 9 11);
	color: rgb(161 161 170);
	font-size: 1.25rem;
	line-height: 1;
	cursor: pointer;
}

.tsc-nav-close:hover {
	color: rgb(251 146 60);
	border-color: rgb(251 146 60 / 0.4);
}

@media (min-width: 1024px) {
	.tsc-nav-close {
		display: none;
	}
}

.tsc-nav-heading {
	margin: 0 0 0.625rem;
	padding: 0;
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: none;
	color: rgb(244 244 245);
	display: flex;
	align-items: center;
	gap: 0.5rem;
}

.tsc-nav-heading::before {
	content: "";
	width: 0.25rem;
	height: 1rem;
	border-radius: 9999px;
	background: rgb(251 146 60);
	flex-shrink: 0;
}

.tsc-nav-section {
	margin-bottom: 0;
	padding: 0.75rem 0.875rem 1rem;
	border-bottom: 1px solid rgb(39 39 42);
	background: linear-gradient(180deg, rgb(24 24 27 / 0.55), rgb(9 9 11 / 0.25));
}

.tsc-nav-section:last-child {
	margin-bottom: 0;
	border-bottom: none;
	padding-bottom: 0.875rem;
}

.tsc-nav-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
}

.tsc-nav-link {
	display: flex;
	align-items: center;
	gap: 0.625rem;
	min-height: 2.75rem;
	padding: 0.5rem 0.625rem;
	border-radius: 0.5rem;
	border: 1px solid transparent;
	background: rgb(9 9 11 / 0.35);
	font-size: 0.8125rem;
	font-weight: 500;
	color: rgb(212 212 216);
	text-decoration: none;
	transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}

.tsc-nav-link:hover {
	background: rgb(39 39 42);
	border-color: rgb(63 63 70);
	color: rgb(251 146 60);
}

.tsc-nav-link-mark {
	width: 0.25rem;
	height: 1rem;
	border-radius: 9999px;
	background: rgb(63 63 70);
	flex-shrink: 0;
	transition: background 0.15s ease;
}

.tsc-nav-link:hover .tsc-nav-link-mark {
	background: rgb(251 146 60);
}

.tsc-nav-link-label {
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.tsc-nav-link--accent {
	color: rgb(251 146 60);
	font-weight: 600;
	background: rgb(251 146 60 / 0.08);
	border-color: rgb(251 146 60 / 0.2);
}

.tsc-nav-link--accent:hover {
	background: rgb(251 146 60 / 0.14);
	border-color: rgb(251 146 60 / 0.35);
}

.tsc-nav-link--muted {
	color: rgb(161 161 170);
}

.tsc-nav-link--muted:hover {
	color: rgb(248 113 113);
}

.tsc-nav-search {
	margin-bottom: 0.5rem;
	padding: 0;
}

.tsc-nav-search-input {
	width: 100%;
	padding: 0.625rem 2rem 0.625rem 0.75rem;
	font-size: 0.8125rem;
	border-radius: 0.5rem;
	border: 1px solid rgb(63 63 70);
	background: rgb(9 9 11);
	color: rgb(212 212 216);
}

.tsc-nav-search-input:focus {
	outline: none;
	border-color: rgb(251 146 60 / 0.5);
	box-shadow: 0 0 0 2px rgb(251 146 60 / 0.12);
}

.tsc-nav-search-wrap {
	position: relative;
}

.tsc-nav-search-icon {
	position: absolute;
	right: 0.625rem;
	top: 50%;
	transform: translateY(-50%);
	width: 1rem;
	height: 1rem;
	color: rgb(113 113 122);
	pointer-events: none;
}

/* ── Global notice banners (stdhead alerts) ── */
.tsc-notice-banner {
	margin-bottom: 1rem;
	padding: 0.75rem 1rem;
	border-radius: 0.5rem;
	border: 1px solid transparent;
	font-size: 0.875rem;
	line-height: 1.45;
}

.tsc-notice-banner a {
	font-weight: 600;
	text-decoration: none;
}

.tsc-notice-banner a:hover {
	text-decoration: underline;
}

.tsc-notice-banner--danger {
	border-color: rgb(127 29 29 / 0.5);
	background: rgb(69 10 10 / 0.4);
	color: rgb(248 113 113);
}

.tsc-notice-banner--danger a {
	color: rgb(248 113 113);
}

.tsc-notice-banner--danger a:hover {
	color: rgb(252 165 165);
}

.tsc-notice-banner--info {
	border-color: rgb(14 116 144 / 0.45);
	background: rgb(8 47 73 / 0.45);
	color: rgb(125 211 252);
}

.tsc-notice-banner--info a {
	color: rgb(125 211 252);
}

.tsc-notice-banner--info a:hover {
	color: rgb(186 230 253);
}

.tsc-notice-banner--warning {
	border-color: rgb(194 65 12 / 0.45);
	background: rgb(67 20 7 / 0.45);
	color: rgb(253 186 116);
}

.tsc-notice-banner--warning a {
	color: rgb(253 186 116);
}

.tsc-notice-banner--warning a:hover {
	color: rgb(254 215 170);
}

.tsc-notice-banner--neutral {
	border-color: rgb(63 63 70);
	background: rgb(39 39 42 / 0.8);
	color: rgb(244 244 245);
}

.tsc-notice-banner--neutral a {
	color: rgb(244 244 245);
}

.tsc-notice-banner--neutral a:hover {
	color: rgb(255 255 255);
}

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

html {
	background-color: #09090b;
}

html::before {
	content: "";
	position: fixed;
	inset: 0;
	z-index: 0;
	background-color: #000;
	background-image: url('/pic/tsc-premium-bg.jpg');
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
	pointer-events: none;
}

body.tsc-premium-bg {
	background-color: transparent;
	position: relative;
	z-index: 1;
	overflow-x: hidden;
	min-height: 100%;
}

#main-body {
	width: 100%;
}

/* legacy alias */
#main-body.tsc-main-body,
.tsc-main-body {
	width: 100%;
}

.tableinborder {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	border: 1px solid rgb(39 39 42);
	border-radius: 0.75rem;
	overflow: hidden;
	margin-bottom: 1rem;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.45);
	background: rgb(24 24 27);
}

.tabletitle {
	background: rgb(39 39 42);
	color: rgb(228 228 231);
	font-weight: 700;
	padding: 0.75rem 1rem;
	text-align: center;
}

.tablecat {
	background: rgb(39 39 42);
	color: rgb(228 228 231);
	font-weight: 600;
	padding: 0.5rem 0.75rem;
}

.tablea {
	background: rgb(24 24 27);
	color: rgb(161 161 170);
	padding: 0.625rem 0.875rem;
	text-align: left;
}

.tableb {
	background: rgb(39 39 42);
	color: rgb(161 161 170);
	padding: 0.625rem 0.875rem;
	text-align: left;
}

td.inposttable,
.inposttable {
	background: rgb(39 39 42);
	color: rgb(212 212 216);
	padding: 0.625rem 0.875rem;
	text-align: left;
	vertical-align: top;
	line-height: 1.55;
}

.tablea a:link, .tablea a:visited, .tablea a:active,
.tableb a:link, .tableb a:visited, .tableb a:active {
	color: rgb(212 212 216);
	text-decoration: none;
}

.tablea a:hover, .tableb a:hover,
.tablecat a:hover, .tabletitle a:hover {
	color: rgb(251 146 60);
}

.tablebrowse {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	background: rgb(9 9 11);
}

.tablebrowse tr th {
	background: rgb(39 39 42);
	color: rgb(228 228 231);
	padding: 0.5rem 0.75rem;
	font-weight: 600;
}

.tablebrowse tr:nth-child(even) td {
	background: rgb(39 39 42);
	color: rgb(161 161 170);
}

.tablebrowse tr:nth-child(odd) td {
	background: rgb(24 24 27);
	color: rgb(161 161 170);
}

.tablebrowse tr:hover td {
	background: rgb(63 63 70);
	color: rgb(228 228 231);
}

input, select, textarea {
	font-size: 0.75rem;
	font-family: verdana, tahoma, helvetica, sans-serif;
	color: rgb(244 244 245);
	background: rgb(63 63 70);
	border: 1px solid rgb(82 82 91);
	border-radius: 0.375rem;
	padding: 0.375rem 0.5rem;
}

input:focus, select:focus, textarea:focus {
	outline: none;
	border-color: rgb(251 146 60);
	box-shadow: 0 0 0 2px rgba(251, 146, 60, 0.25);
}

.contentstyle, .contentstyle_usercp {
	border: 1px solid rgb(63 63 70);
	border-radius: 0 0.5rem 0.5rem 0.5rem;
	padding: 0.75rem;
	margin-bottom: 1rem;
	background: rgb(24 24 27);
}

#new_nav {
	position: static !important;
	padding-top: 0 !important;
	width: 100% !important;
	left: auto !important;
	top: auto !important;
}

#new_nav #loadts {
	line-height: 1.4;
}

#new_nav #loadts a {
	color: rgb(161 161 170);
	text-decoration: none;
}

#new_nav #loadts a:hover {
	color: rgb(251 146 60);
}

#new_nav #loadts .ts3ssvError {
	color: rgb(161 161 170);
	font-size: 0.6875rem;
}

#new_nav #loadts .ts3ssv {
	width: 100% !important;
	max-width: 100%;
}

.pmtable {
	display: block;
	padding: 0.625rem 0.875rem;
	border-radius: 0.5rem;
	border: 1px solid rgb(63 63 70);
	background: rgb(39 39 42);
	margin-bottom: 0.75rem;
}

.smallfont { font-size: 0.6875rem; }
.normalfont { font-size: 0.75rem; }

body.tsc-page-details .maincontent .tableinborder {
	margin-left: auto;
	margin-right: auto;
}

/* Index page tab switcher */
.tsc-tab-frame {
	display: flex;
	flex-wrap: wrap;
	gap: 0.25rem;
	align-items: flex-start;
}

.tsc-tab-frame .tab {
	display: none;
	flex: 0 0 100%;
	width: 100%;
	min-width: 100%;
	order: 10;
	padding-top: 0.75rem;
	box-sizing: border-box;
}

.tsc-tab-frame:has(#tab1:checked) > .tab:nth-child(2),
.tsc-tab-frame:has(#tab2:checked) > .tab:nth-child(3),
.tsc-tab-frame:has(#tab3:checked) > .tab:nth-child(4),
.tsc-tab-frame:has(#tab4:checked) > .tab:nth-child(5),
.tsc-tab-frame:has(#tab5:checked) > .tab:nth-child(6) {
	display: block;
}

.tsc-tab-labels {
	width: 100%;
	flex: 0 0 100%;
}

.tsc-tab-frame--scroll {
	flex-wrap: wrap;
	overflow-x: visible;
}

@media (min-width: 768px) {
	.tsc-tab-frame--scroll {
		flex-wrap: wrap;
		overflow: visible;
		padding-bottom: 0;
	}
}

/* ── Index page layout & unified section schema ── */
.tsc-index-page {
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
	width: 100%;
	max-width: 100%;
	min-width: 0;
	text-align: left;
}

.tsc-index-page > .tsc-index-block {
	min-width: 0;
	max-width: 100%;
}

@media (min-width: 1024px) {
	.tsc-index-page {
		gap: 1.5rem;
	}
}

.tsc-index-block,
.tsc-online-panel.tsc-index-block {
	margin-bottom: 0;
	border-radius: 0.75rem;
	border: 1px solid rgb(39 39 42 / 0.85);
	background: rgb(24 24 27 / 0.55);
	box-shadow: 0 10px 25px rgb(0 0 0 / 0.35);
	overflow: hidden;
}

.tsc-index-block--shout {
	border-color: rgb(251 146 60 / 0.35);
	box-shadow:
		0 0 0 1px rgb(251 146 60 / 0.08) inset,
		0 16px 40px rgb(0 0 0 / 0.45);
}

.tsc-index-block--radio,
.tsc-index-block--stats,
.tsc-index-block--forum,
.tsc-index-block--faq,
.tsc-index-block--rules,
.tsc-index-block--req,
.tsc-index-block--torrents,
.tsc-index-block--server,
.tsc-index-block--online,
.tsc-index-block--browse,
.tsc-index-block--user,
.tsc-index-block--details,
.tsc-index-block--upload,
.tsc-index-block--topten {
	border-color: rgb(63 63 70 / 0.55);
}

.tsc-index-block--irc {
	border-color: rgb(63 63 70 / 0.55);
}

.tsc-index-block.tsc-index-block--admin {
	margin-bottom: 1rem;
	border-color: rgb(251 146 60 / 0.25);
	box-shadow:
		0 0 0 1px rgb(251 146 60 / 0.06) inset,
		0 10px 25px rgb(0 0 0 / 0.35);
}

.tsc-index-block--admin:has(.tsc-admincp-body[hidden]) .tsc-index-section-header {
	border-bottom: none;
}

.tsc-index-section-header,
.tsc-online-header.tsc-index-section-header {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.5rem 0.75rem;
	padding: 0.75rem 1rem;
	border-bottom: 1px solid rgb(39 39 42);
	background: linear-gradient(180deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.9));
}

.tsc-index-section-title,
.tsc-online-header .tsc-index-section-title {
	display: inline-flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin: 0;
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	color: rgb(244 244 245);
	line-height: 1.3;
}

.tsc-index-section-title .tsc-section-icon {
	color: rgb(251 146 60);
	font-size: 0.875rem;
	flex-shrink: 0;
}

.tsc-index-section-actions {
	display: inline-flex;
	align-items: center;
	gap: 0.375rem;
	margin-left: auto;
	flex-shrink: 0;
}

.tsc-index-icon-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.75rem;
	height: 1.75rem;
	border-radius: 0.375rem;
	border: 1px solid rgb(63 63 70);
	background: rgb(24 24 27);
	color: rgb(161 161 170);
	text-decoration: none;
	cursor: pointer;
	transition: color 0.15s ease, border-color 0.15s ease, background 0.15s ease;
}

.tsc-index-icon-btn:hover {
	color: rgb(251 146 60);
	border-color: rgb(251 146 60 / 0.4);
	background: rgb(39 39 42);
}

.tsc-index-icon-btn--accent,
.tsc-index-icon-btn--accent:hover {
	color: rgb(251 146 60);
}

.tsc-index-icon-btn--danger:hover {
	color: rgb(248 113 113);
	border-color: rgb(248 113 113 / 0.45);
}

.tsc-index-header-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	padding: 0.125rem 0.5rem;
	font-size: 0.5625rem;
	font-weight: 800;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	border-radius: 9999px;
	border: 1px solid rgb(63 63 70);
	color: rgb(161 161 170);
	background: rgb(39 39 42);
}

.tsc-index-header-badge--live {
	color: rgb(0 0 0);
	background: rgb(251 146 60);
	border-color: rgb(251 146 60);
}

.tsc-index-header-badge--mod {
	color: rgb(251 146 60);
	border-color: rgb(251 146 60 / 0.35);
	background: rgb(24 24 27);
}

.tsc-index-header-badge--count {
	font-size: 0.6875rem;
	letter-spacing: 0.02em;
	text-transform: none;
	color: rgb(0 0 0);
	background: rgb(161 161 170);
	border-color: rgb(161 161 170);
}

.tsc-index-section-body {
	padding: 1rem;
	min-width: 0;
	max-width: 100%;
}

.tsc-index-section-body--flush {
	padding: 0;
	min-width: 0;
	max-width: 100%;
}

.tsc-index-section-body--shout {
	padding: 0;
}

.tsc-index-section-body--radio {
	padding: 1rem 1.25rem 1.25rem;
}

.tsc-index-section-body--browse {
	padding: 1rem;
}

.tsc-index-section-body--user {
	padding: 1rem;
	min-width: 0;
	max-width: 100%;
}

.tsc-index-section-body--flush.tsc-index-section-body--user {
	padding: 0;
}

.tsc-is-collapsed {
	display: none !important;
}

.tsc-index-section-inner--compact {
	padding: 0.75rem 1rem 1rem;
}

.tsc-index-section-footer {
	padding: 0.75rem 1rem;
	border-top: 1px solid rgb(39 39 42);
	background: rgb(9 9 11 / 0.85);
	text-align: center;
	font-size: 0.75rem;
	color: rgb(113 113 122);
}

.tsc-index-section-footer-highlight {
	color: rgb(251 146 60);
	font-weight: 700;
}

.tsc-index-server-load {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0.75rem 1.25rem;
	margin: 0;
	text-align: center;
	font-size: 0.875rem;
	color: rgb(161 161 170);
}

.tsc-index-server-metric {
	display: inline-flex;
	align-items: center;
	gap: 0.375rem;
}

.tsc-index-server-metric .tsc-icon {
	color: rgb(251 146 60);
}

.tsc-index-server-value {
	color: rgb(251 146 60);
	font-weight: 700;
}

.tsc-index-server-label {
	color: rgb(113 113 122);
	font-size: 0.75rem;
}

@media (max-width: 767px) {
	.tsc-index-section-header,
	.tsc-online-header.tsc-index-section-header {
		padding: 0.75rem 0.875rem;
	}

	.tsc-index-section-title,
	.tsc-online-header .tsc-index-section-title {
		font-size: 0.75rem;
	}

	.tsc-index-section-body {
		padding: 0.875rem;
	}

	.tsc-index-section-inner--compact {
		padding: 0.625rem 0.75rem 0.75rem;
	}
}

/* Index table column headers (forum etc.) */
.tsc-index-table thead.tsc-index-table-head tr th,
.tsc-index-block .tsc-data-table thead tr th {
	background: rgb(9 9 11 / 0.9);
	color: rgb(113 113 122);
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	padding: 0.625rem 0.875rem;
	text-align: left;
	border-bottom: 1px solid rgb(39 39 42);
	white-space: nowrap;
}

.tsc-index-table thead.tsc-index-table-head tr th .tsc-icon,
.tsc-index-block .tsc-data-table thead tr th .tsc-icon {
	color: rgb(251 146 60 / 0.85);
	margin-right: 0.2rem;
	font-size: 0.625rem;
	vertical-align: -0.05em;
}

/* Latest torrent poster grid (index) */
.tsc-torrent-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0.5rem;
	width: 100%;
}

.tsc-torrent-grid > * {
	min-width: 0;
}

@media (min-width: 480px) {
	.tsc-torrent-grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

@media (min-width: 640px) {
	.tsc-torrent-grid {
		grid-template-columns: repeat(5, minmax(0, 1fr));
		gap: 0.625rem;
	}
}

@media (min-width: 768px) {
	.tsc-torrent-grid {
		grid-template-columns: repeat(6, minmax(0, 1fr));
	}
}

@media (min-width: 1024px) {
	.tsc-torrent-grid {
		grid-template-columns: repeat(8, minmax(0, 1fr));
		gap: 0.75rem;
	}
}

@media (min-width: 1280px) {
	.tsc-torrent-grid {
		grid-template-columns: repeat(10, minmax(0, 1fr));
	}
}

.tsc-forum-mobile-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem 0.75rem;
	margin-top: 0.35rem;
	font-size: 0.625rem;
	color: rgb(113 113 122);
}

.tsc-forum-mobile-meta span {
	display: inline-flex;
	align-items: center;
	gap: 0.2rem;
}

.tsc-forum-mobile-lastpost {
	flex: 1 1 100%;
}

.tsc-forum-topic-link {
	display: inline;
	font-weight: 600;
	color: rgb(228 228 231);
	text-decoration: none;
	word-break: break-word;
	overflow-wrap: anywhere;
}

.tsc-forum-topic-link:hover {
	color: rgb(251 146 60);
}

.tsc-forum-topic-sub,
.tsc-forum-lastpost-date {
	margin-top: 0.25rem;
	font-size: 0.625rem;
	color: rgb(113 113 122);
}

.tsc-forum-sticky {
	display: inline-flex;
	align-items: center;
	gap: 0.2rem;
	font-size: 0.625rem;
	font-weight: 700;
	color: rgb(248 113 113);
}

.tsc-forum-jump {
	display: inline-flex;
	align-items: center;
	color: rgb(251 146 60);
	opacity: 0.8;
	text-decoration: none;
}

.tsc-forum-jump:hover {
	opacity: 1;
}

.tsc-table-scroll {
	width: 100%;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.tsc-data-table--forum .tsc-forum-col-extra {
	display: none;
}

.tsc-data-table--forum thead th:nth-child(3),
.tsc-data-table--forum thead th:nth-child(4),
.tsc-data-table--forum thead th:nth-child(5),
.tsc-data-table--forum thead th:nth-child(6) {
	display: none;
}

@media (min-width: 640px) {
	.tsc-forum-mobile-meta {
		display: none;
	}

	.tsc-data-table--forum .tsc-forum-col-author,
	.tsc-data-table--forum thead th:nth-child(3) {
		display: table-cell;
	}
}

@media (min-width: 768px) {
	.tsc-data-table--forum .tsc-forum-col-views,
	.tsc-data-table--forum .tsc-forum-col-replies,
	.tsc-data-table--forum thead th:nth-child(4),
	.tsc-data-table--forum thead th:nth-child(5) {
		display: table-cell;
	}

	.tsc-data-table--forum .tsc-forum-col-views,
	.tsc-data-table--forum .tsc-forum-col-replies {
		text-align: center;
		color: rgb(161 161 170);
	}
}

@media (min-width: 1024px) {
	.tsc-data-table--forum .tsc-forum-col-lastpost,
	.tsc-data-table--forum thead th:nth-child(6) {
		display: table-cell;
	}
}

@media (max-width: 767px) {
	.tsc-data-table--forum thead {
		display: none;
	}

	.tsc-data-table--forum tbody {
		display: block;
	}

	.tsc-data-table--forum tbody tr.tsc-forum-row {
		display: grid;
		grid-template-columns: 1.75rem minmax(0, 1fr);
		gap: 0.25rem 0.625rem;
		padding: 0.75rem;
		margin-bottom: 0.5rem;
		border: 1px solid rgb(39 39 42);
		border-radius: 0.5rem;
		background: rgb(24 24 27 / 0.55);
	}

	.tsc-data-table--forum tbody tr.tsc-forum-row:hover td {
		background: transparent;
	}

	.tsc-data-table--forum tbody tr.tsc-forum-row:last-child {
		margin-bottom: 0;
	}

	.tsc-data-table--forum .tsc-forum-icon {
		grid-column: 1;
		grid-row: 1;
		padding: 0;
		border: none;
		text-align: center;
	}

	.tsc-data-table--forum .tsc-forum-topic {
		grid-column: 2;
		grid-row: 1;
		padding: 0;
		border: none;
		min-width: 0;
	}

	.tsc-data-table--forum .tsc-forum-mobile-meta {
		display: flex;
	}
}

.tsc-section-header,
.tsc-section-header--radio,
.tsc-section-header--shout,
.tsc-section-header--stats {
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 0.5rem 0.75rem;
	padding: 0.75rem 1rem !important;
}

@media (min-width: 640px) {
	.tsc-section-header,
	.tsc-section-header--radio,
	.tsc-section-header--shout,
	.tsc-section-header--stats {
		justify-content: center;
		padding: 0.875rem 1.25rem !important;
	}
}

/* Unified data tables (index + AJAX widgets) */
.tsc-data-table,
#ergebnis-container .tableinborder {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	background: rgb(9 9 11);
	border-radius: 0.5rem;
	overflow: hidden;
}

.tsc-data-table thead tr th,
#ergebnis-container .tabletitle {
	background: rgb(24 24 27);
	color: rgb(113 113 122);
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	padding: 0.625rem 0.875rem;
	text-align: left;
	border-bottom: 1px solid rgb(39 39 42);
}

#ergebnis-container .tabletitle {
	text-align: center;
	font-size: 0.75rem;
	text-transform: none;
	letter-spacing: 0.02em;
	color: rgb(228 228 231);
	background: rgb(24 24 27);
}

.tsc-data-table tbody tr td,
#ergebnis-container .tablea {
	padding: 0.625rem 0.875rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.6);
	color: rgb(161 161 170);
	vertical-align: top;
}

.tsc-data-table tbody tr:nth-child(even) td {
	background: rgb(24 24 27 / 0.5);
}

.tsc-data-table tbody tr:hover td {
	background: rgb(39 39 42 / 0.8);
	color: rgb(228 228 231);
}

.tsc-data-table tbody tr:last-child td,
#ergebnis-container tr:last-child .tablea {
	border-bottom: none;
}

.tsc-data-table--kv {
	max-width: 32rem;
	margin: 0 auto;
}

.tsc-kv-label {
	font-weight: 500;
	color: rgb(113 113 122) !important;
	width: 55%;
}

.tsc-kv-value {
	text-align: right;
	font-weight: 600;
	color: rgb(228 228 231) !important;
}

#ergebnis-container .tableinborder {
	border: none;
	box-shadow: none;
	margin-bottom: 0;
	background: transparent;
}

#ergebnis-container .tablea a {
	color: rgb(212 212 216);
	text-decoration: none;
}

#ergebnis-container .tablea a:hover {
	color: rgb(251 146 60);
}

/* ── Section variants (Radio / Shout featured) ── */
.tsc-section--radio,
.tsc-section--shout {
	position: relative;
	border-radius: 1rem;
	overflow: hidden;
	background: rgb(0 0 0 / 0.55);
}

.tsc-section--radio {
	border: 1px solid rgb(63 63 70 / 0.5);
	box-shadow: 0 20px 50px -20px rgba(0, 0, 0, 0.6);
}

.tsc-section--shout {
	border: 1px solid rgb(251 146 60 / 0.35);
	box-shadow:
		0 0 0 1px rgb(251 146 60 / 0.08) inset,
		0 25px 60px -15px rgba(0, 0, 0, 0.7),
		0 0 80px -20px rgba(251, 146, 60, 0.15);
}

.tsc-section-header--radio,
.tsc-section-header--shout {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.625rem;
	padding: 0.875rem 1.25rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.7);
	background: linear-gradient(180deg, rgb(24 24 27 / 0.9), rgb(9 9 11 / 0.95));
}

.tsc-section-title--radio {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: rgb(212 212 216);
}

.tsc-section-title--shout {
	font-size: 0.875rem;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: rgb(251 146 60);
	text-shadow: 0 0 20px rgba(251, 146, 60, 0.35);
}

.tsc-shout-header-badge {
	display: inline-flex;
	align-items: center;
	padding: 0.125rem 0.5rem;
	font-size: 0.5625rem;
	font-weight: 800;
	letter-spacing: 0.1em;
	color: rgb(0 0 0);
	background: rgb(251 146 60);
	border-radius: 9999px;
}

.tsc-section-body--radio {
	padding: 1rem 1.25rem 1.25rem !important;
}

.tsc-section-body--shout {
	padding: 0 !important;
}

@keyframes tsc-shout-badge-pulse {
	0%, 100% { box-shadow: 0 0 0 0 rgba(251, 146, 60, 0.5); }
	50% { box-shadow: 0 0 12px 2px rgba(251, 146, 60, 0.35); }
}

/* ── Online members panel ── */
.tsc-online-slot {
	margin-bottom: 0;
}

.tsc-online-slot:empty {
	display: none;
}

.tsc-online-panel.tsc-index-block {
	position: relative;
	background: linear-gradient(145deg, rgb(9 9 11 / 0.95), rgb(24 24 27 / 0.85));
}

.tsc-online-panel-glow {
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 60%;
	height: 1px;
	background: linear-gradient(90deg, transparent, rgb(161 161 170 / 0.4), transparent);
	pointer-events: none;
}

.tsc-online-legend {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0.25rem 0.5rem;
	padding: 0.75rem 1rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.6);
	background: rgb(0 0 0 / 0.25);
	font-size: 0.6875rem;
}

.tsc-online-rank {
	font-weight: 700;
	white-space: nowrap;
}

.tsc-online-rank-sep {
	color: rgb(63 63 70);
	margin: 0 0.125rem;
}

.tsc-online-header.tsc-index-section-header {
	padding: 0.875rem 1rem;
}

.tsc-online-header-left {
	display: flex;
	align-items: center;
	gap: 0.875rem;
	min-width: 0;
}

.tsc-online-pulse {
	position: relative;
	width: 2.25rem;
	height: 2.25rem;
	flex-shrink: 0;
}

.tsc-online-pulse-core {
	position: absolute;
	inset: 0.625rem;
	border-radius: 50%;
	background: rgb(74 222 128);
	box-shadow: 0 0 12px rgba(74, 222, 128, 0.6);
}

.tsc-online-pulse-ring {
	position: absolute;
	inset: 0;
	border-radius: 50%;
	border: 2px solid rgb(74 222 128 / 0.45);
	opacity: 0.5;
}

@keyframes tsc-online-ring {
	0% { transform: scale(0.85); opacity: 1; }
	100% { transform: scale(1.35); opacity: 0; }
}

.tsc-online-sub {
	margin: 0.25rem 0 0;
	font-size: 0.75rem;
	color: rgb(113 113 122);
}

.tsc-online-sub a {
	color: rgb(212 212 216);
	text-decoration: none;
	font-weight: 600;
}

.tsc-online-sub a:hover {
	color: rgb(251 146 60);
}

.tsc-online-list {
	padding: 1rem 1.25rem;
	max-height: 220px;
	overflow-y: auto;
	scrollbar-width: thin;
	scrollbar-color: rgb(63 63 70) transparent;
}

.tsc-online-list--collapsed {
	display: none;
}

.tsc-online-members {
	display: flex;
	flex-wrap: wrap;
	gap: 0.375rem 0.625rem;
	font-size: 0.8125rem;
	line-height: 1.6;
}

.tsc-online-member {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	padding: 0.25rem 0.5rem;
	background: rgb(24 24 27 / 0.8);
	border: 1px solid rgb(39 39 42 / 0.7);
	border-radius: 0.375rem;
	transition: border-color 0.15s ease, background 0.15s ease;
}

.tsc-online-member:hover {
	border-color: rgb(63 63 70);
	background: rgb(39 39 42 / 0.9);
}

.tsc-online-member a {
	text-decoration: none;
}

.tsc-online-member a:hover {
	color: rgb(251 146 60) !important;
}

.tsc-online-whisper {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-left: 0.15rem;
	padding: 0.1rem 0.2rem;
	border-radius: 0.25rem;
	color: rgb(161 161 170);
	vertical-align: middle;
	text-decoration: none;
	transition: color 0.15s ease, background 0.15s ease;
}

.tsc-online-whisper:hover {
	color: rgb(251 146 60);
	background: rgb(251 146 60 / 0.08);
}

.tsc-online-empty {
	color: rgb(113 113 122);
	font-style: italic;
}

.tsc-online-footer {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	padding: 0.75rem 1rem;
	font-size: 0.6875rem;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: rgb(113 113 122);
	border-top: 1px solid rgb(39 39 42 / 0.5);
	background: rgb(0 0 0 / 0.3);
}

.tsc-online-footer-icon {
	opacity: 0.6;
}

@media (max-width: 767px) {
	.tsc-online-panel {
		border-radius: 0.75rem;
	}

	.tsc-online-legend {
		justify-content: flex-start;
		flex-wrap: nowrap;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		padding: 0.625rem 0.875rem;
		scrollbar-width: thin;
	}

	.tsc-online-header {
		flex-direction: column;
		align-items: stretch;
		gap: 0.625rem;
		padding: 0.875rem 1rem;
	}

	.tsc-online-header-actions {
		align-self: flex-end;
	}

	.tsc-online-header-left {
		align-items: flex-start;
	}

	.tsc-online-sub {
		font-size: 0.6875rem;
		word-break: break-word;
	}

	.tsc-online-toggle,
	.tsc-index-icon-btn {
		width: 2.25rem;
		height: 2.25rem;
	}

	.tsc-online-list {
		max-height: 42vh;
		padding: 0.75rem 0.875rem;
	}

	.tsc-online-members {
		gap: 0.375rem 0.5rem;
		font-size: 0.75rem;
	}

	.tsc-online-member {
		padding: 0.35rem 0.5rem;
		min-height: 2rem;
	}

	.tsc-online-footer {
		padding: 0.625rem 0.875rem;
		font-size: 0.625rem;
		text-align: center;
		flex-wrap: wrap;
	}
}

/* ── TSC Radio widget ── */
.tsc-radio-slot {
	min-height: 80px;
}

.tsc-radio {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.tsc-radio-glow {
	position: absolute;
	top: -40%;
	left: 50%;
	transform: translateX(-50%);
	width: 70%;
	height: 120px;
	background: radial-gradient(ellipse, rgb(63 63 70 / 0.2), transparent 70%);
	pointer-events: none;
}

.tsc-radio--live .tsc-radio-glow {
	background: radial-gradient(ellipse, rgb(74 222 128 / 0.08), transparent 70%);
}

.tsc-radio-now {
	display: grid;
	grid-template-columns: auto 1fr;
	grid-template-rows: auto auto;
	gap: 0.5rem 1rem;
	align-items: center;
	padding: 1rem 1.25rem;
	border-radius: 0.75rem;
	border: 1px solid rgb(39 39 42 / 0.6);
	background: rgb(0 0 0 / 0.35);
}

.tsc-radio-badge {
	grid-row: span 2;
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0.375rem;
	padding: 0.75rem 1rem;
	font-size: 0.625rem;
	font-weight: 800;
	letter-spacing: 0.14em;
	color: rgb(74 222 128);
	background: rgb(20 83 45 / 0.2);
	border: 1px solid rgb(22 101 52 / 0.35);
	border-radius: 0.625rem;
}

.tsc-radio-live-dot {
	width: 0.5rem;
	height: 0.5rem;
	border-radius: 50%;
	background: rgb(74 222 128);
	box-shadow: 0 0 10px rgba(74, 222, 128, 0.7);
}

@keyframes tsc-radio-live-blink {
	0%, 100% { opacity: 1; }
	50% { opacity: 0.35; }
}

.tsc-radio-dj-block {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	min-width: 0;
}

.tsc-radio-label {
	font-size: 0.5625rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: rgb(113 113 122);
	padding: 0.2rem 0.4rem;
	background: rgb(39 39 42);
	border-radius: 0.25rem;
}

.tsc-radio-dj {
	font-size: 0.875rem;
	font-weight: 600;
}

.tsc-radio-dj a {
	text-decoration: none;
}

.tsc-radio-track {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	min-width: 0;
	padding: 0.625rem 0.875rem;
	border-radius: 0.5rem;
	background: rgb(24 24 27 / 0.8);
	border: 1px solid rgb(39 39 42 / 0.5);
}

.tsc-radio-eq {
	display: inline-block;
	width: 20px;
	height: 12px;
	flex-shrink: 0;
	background: repeating-linear-gradient(
		90deg,
		rgb(251 146 60) 0 3px,
		transparent 3px 5px
	);
	border-radius: 1px;
	opacity: 0.85;
}

@keyframes tsc-eq-pulse {
	from { opacity: 0.45; transform: scaleY(0.65); }
	to { opacity: 1; transform: scaleY(1); }
}

.tsc-radio-track-title {
	font-size: 0.8125rem;
	font-weight: 600;
	color: rgb(228 228 231);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.tsc-radio-bar {
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	align-items: center;
	gap: 1rem;
}

.tsc-radio-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.tsc-radio-actions--end {
	justify-content: flex-end;
}

.tsc-radio-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0.5rem 0.875rem;
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.03em;
	color: rgb(212 212 216);
	text-decoration: none;
	background: rgb(39 39 42);
	border: 1px solid rgb(63 63 70);
	border-radius: 0.5rem;
	transition: all 0.2s ease;
	white-space: nowrap;
}

.tsc-radio-btn:hover {
	color: rgb(251 146 60);
	border-color: rgb(251 146 60 / 0.45);
	background: rgb(63 63 70);
}

.tsc-radio-btn--primary {
	color: rgb(0 0 0);
	background: linear-gradient(135deg, rgb(251 146 60), rgb(234 88 12));
	border-color: rgb(251 146 60 / 0.5);
}

.tsc-radio-btn--primary:hover {
	color: rgb(0 0 0);
	background: linear-gradient(135deg, rgb(253 186 116), rgb(251 146 60));
}

.tsc-radio-btn--wish {
	border-color: rgb(251 146 60 / 0.25);
}

.tsc-radio-visual {
	width: 140px;
	height: 48px;
	background: url(/pic/radio_equilizer.gif) center center / contain no-repeat;
	justify-self: center;
	opacity: 0.9;
}

.tsc-radio-visual--offline {
	width: 100%;
	max-width: 400px;
	height: 56px;
	margin: 0 auto;
	background: url(/pic/radiobutton.png) center center / contain no-repeat;
	opacity: 0.7;
}

.tsc-radio-listeners {
	display: flex;
	justify-content: center;
}

.tsc-radio-listeners-inner {
	position: relative;
}

.tsc-radio-listeners-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	padding: 0.5rem 1.25rem;
	font-size: 0.75rem;
	font-weight: 700;
	color: rgb(212 212 216);
	cursor: pointer;
	background: rgb(24 24 27);
	border: 1px solid rgb(63 63 70);
	border-radius: 9999px;
	transition: all 0.2s ease;
}

.tsc-radio-listeners-btn:hover {
	border-color: rgb(161 161 170 / 0.5);
	background: rgb(39 39 42);
}

.tsc-radio-listeners-icon {
	font-size: 0.875rem;
	opacity: 0.8;
}

.tsc-radio-tooltip,
.tooltipradio .tooltipradiotext {
	visibility: hidden;
	position: absolute;
	bottom: calc(100% + 8px);
	left: 50%;
	transform: translateX(-50%);
	width: max-content;
	max-width: 280px;
	padding: 0.5rem 0.75rem;
	font-size: 0.6875rem;
	font-weight: 500;
	line-height: 1.5;
	text-align: center;
	color: rgb(212 212 216);
	background: rgb(24 24 27);
	border: 1px solid rgb(63 63 70);
	border-radius: 0.5rem;
	box-shadow: 0 12px 30px rgba(0, 0, 0, 0.5);
	opacity: 0;
	transition: opacity 0.2s ease, visibility 0.2s ease;
	z-index: 20;
}

.tooltipradio:hover .tooltipradiotext,
.tsc-radio-listeners-inner:hover .tsc-radio-tooltip {
	visibility: visible;
	opacity: 1;
}

.tsc-radio-offline {
	display: flex;
	align-items: center;
	gap: 1rem;
	padding: 1.25rem;
	border-radius: 0.75rem;
	border: 1px dashed rgb(63 63 70 / 0.5);
	background: rgb(0 0 0 / 0.25);
}

.tsc-radio-offline-icon {
	width: 2.5rem;
	height: 2.5rem;
	border-radius: 50%;
	background: rgb(39 39 42) url(/pic/button_offline2.gif) center / 14px no-repeat;
	flex-shrink: 0;
}

.tsc-radio-offline-title {
	margin: 0;
	font-size: 0.875rem;
	font-weight: 700;
	color: rgb(161 161 170);
}

.tsc-radio-offline-sub {
	margin: 0.25rem 0 0;
	font-size: 0.75rem;
	color: rgb(113 113 122);
}

@media (max-width: 767px) {
	.tsc-section-body--radio {
		padding: 0.75rem 0.875rem 1rem !important;
	}

	.tsc-radio-now {
		grid-template-columns: 1fr;
		padding: 0.875rem 1rem;
		gap: 0.625rem;
	}

	.tsc-radio-badge {
		grid-row: auto;
		flex-direction: row;
		justify-content: center;
		width: 100%;
	}

	.tsc-radio-dj-block {
		flex-wrap: wrap;
	}

	.tsc-radio-track {
		width: 100%;
	}

	.tsc-radio-track-title {
		white-space: normal;
		overflow: visible;
		text-overflow: unset;
		line-height: 1.35;
		word-break: break-word;
	}

	.tsc-radio-bar {
		grid-template-columns: 1fr;
		gap: 0.75rem;
		text-align: center;
	}

	.tsc-radio-actions,
	.tsc-radio-actions--end {
		justify-content: stretch;
		width: 100%;
	}

	.tsc-radio-btn {
		flex: 1 1 calc(50% - 0.25rem);
		min-height: 2.5rem;
		padding: 0.625rem 0.75rem;
		font-size: 0.75rem;
	}

	.tsc-radio-visual {
		display: none;
	}

	.tsc-radio-listeners-btn {
		width: 100%;
		justify-content: center;
		min-height: 2.5rem;
	}

	.tsc-radio-tooltip,
	.tooltipradio .tooltipradiotext {
		max-width: min(280px, 90vw);
	}

	.tsc-radio-offline {
		flex-direction: column;
		text-align: center;
		padding: 1rem;
	}

	.tsc-radio-visual--offline {
		max-width: 100%;
	}
}

@media (min-width: 768px) and (max-width: 1023px) {
	.tsc-radio-bar {
		grid-template-columns: 1fr;
		text-align: center;
	}

	.tsc-radio-actions,
	.tsc-radio-actions--end {
		justify-content: center;
	}

	.tsc-radio-visual {
		margin: 0 auto;
	}
}

/* ── Tracker statistics (mod panel) ── */
.tsc-section--stats {
	border: 1px solid rgb(63 63 70 / 0.5);
	box-shadow: 0 20px 50px -20px rgba(0, 0, 0, 0.6);
}

.tsc-section-header--stats {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.625rem;
	padding: 0.875rem 1.25rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.7);
	background: linear-gradient(180deg, rgb(24 24 27 / 0.9), rgb(9 9 11 / 0.95));
}

.tsc-section-title--stats {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: rgb(212 212 216);
}

.tsc-stats-header-badge {
	display: inline-flex;
	align-items: center;
	padding: 0.125rem 0.5rem;
	font-size: 0.5625rem;
	font-weight: 800;
	letter-spacing: 0.1em;
	color: rgb(0 0 0);
	background: rgb(161 161 170);
	border-radius: 9999px;
}

.tsc-section-body--stats {
	padding: 1rem 1.25rem 1.25rem !important;
}

.tsc-stats-panel {
	position: relative;
}

.tsc-stats-panel-glow {
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 50%;
	height: 1px;
	background: linear-gradient(90deg, transparent, rgb(113 113 122 / 0.35), transparent);
	pointer-events: none;
}

.tsc-stats-list {
	list-style: none;
	margin: 0;
	padding: 0;
	border-radius: 0.75rem;
	border: 1px solid rgb(39 39 42 / 0.6);
	background: rgb(0 0 0 / 0.35);
	overflow: hidden;
}

.tsc-stats-list-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	padding: 0.75rem 1rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.45);
	transition: background 0.15s ease;
}

.tsc-stats-list-row:last-child {
	border-bottom: none;
}

.tsc-stats-list-row:hover {
	background: rgb(24 24 27 / 0.65);
}

.tsc-stats-list-row:nth-child(even) {
	background: rgb(24 24 27 / 0.25);
}

.tsc-stats-list-row:nth-child(even):hover {
	background: rgb(39 39 42 / 0.45);
}

.tsc-stats-list-label {
	font-size: 0.75rem;
	font-weight: 500;
	color: rgb(161 161 170);
	flex: 1;
	min-width: 0;
}

.tsc-stats-list-value {
	font-size: 0.8125rem;
	font-weight: 700;
	color: rgb(228 228 231);
	text-align: right;
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
}

.tsc-stats-list-row--green .tsc-stats-list-value {
	color: rgb(74 222 128);
}

.tsc-stats-list-row--red .tsc-stats-list-value {
	color: rgb(248 113 113);
}

.tsc-stats-list-row--orange .tsc-stats-list-value {
	color: rgb(251 146 60);
}

.tsc-stats-list-row--yellow .tsc-stats-list-value {
	color: rgb(250 204 21);
}

.tsc-stats-list-row--blue .tsc-stats-list-value {
	color: rgb(96 165 250);
}

.tsc-stats-list-row--muted .tsc-stats-list-value {
	color: rgb(161 161 170);
}

/* Premium Shoutbox — eye-catcher featured variant */
.tsc-shoutbox--featured {
	position: relative;
	border-radius: 0;
	background: rgb(0 0 0 / 0.4);
}

.tsc-shout-hero {
	position: relative;
	padding: 1rem 1.25rem;
	border-bottom: 1px solid rgb(251 146 60 / 0.2);
	background: linear-gradient(135deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.98));
	overflow: hidden;
}

.tsc-shout-hero-bg {
	position: absolute;
	inset: 0;
	background:
		repeating-linear-gradient(
			-45deg,
			transparent,
			transparent 12px,
			rgba(251, 146, 60, 0.02) 12px,
			rgba(251, 146, 60, 0.02) 13px
		),
		radial-gradient(ellipse 80% 100% at 100% 0%, rgba(251, 146, 60, 0.08), transparent 55%);
	pointer-events: none;
}

.tsc-shout-hero-inner {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem 1.5rem;
}

.tsc-shout-hero-left {
	display: flex;
	align-items: center;
	gap: 0.875rem;
}

.tsc-shout-live-dot {
	width: 0.75rem;
	height: 0.75rem;
	border-radius: 50%;
	background: rgb(251 146 60);
	box-shadow: 0 0 16px rgba(251, 146, 60, 0.8);
	flex-shrink: 0;
}

@keyframes tsc-shout-live-pulse {
	0%, 100% { transform: scale(1); box-shadow: 0 0 16px rgba(251, 146, 60, 0.8); }
	50% { transform: scale(1.15); box-shadow: 0 0 24px rgba(251, 146, 60, 1); }
}

.tsc-shout-hero-title {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	font-size: 1rem;
	font-weight: 800;
	letter-spacing: 0.02em;
	color: rgb(244 244 245);
	line-height: 1.2;
}

.tsc-shout-hero-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	padding: 0.25rem 0.625rem;
	font-size: 0.5625rem;
	font-weight: 800;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: rgb(0 0 0);
	background: rgb(251 146 60);
	border-radius: 9999px;
}

.tsc-shout-hero-sub {
	display: block;
	margin-top: 0.2rem;
	font-size: 0.6875rem;
	font-weight: 500;
	color: rgb(113 113 122);
	letter-spacing: 0.04em;
}

.tsc-shout-hero-badges {
	display: flex;
	flex-wrap: wrap;
	gap: 0.375rem;
}

.tsc-shout-hero-badge--muted {
	color: rgb(161 161 170);
	background: rgb(39 39 42);
	border: 1px solid rgb(63 63 70);
}

.tsc-shoutbox--featured .tsc-shout-messages {
	min-height: 280px;
	max-height: 420px;
	padding: 1rem 1.25rem;
	background:
		linear-gradient(180deg, rgb(0 0 0 / 0.5), rgb(9 9 11 / 0.9)),
		repeating-linear-gradient(
			0deg,
			transparent,
			transparent 23px,
			rgba(63, 63, 70, 0.15) 23px,
			rgba(63, 63, 70, 0.15) 24px
		);
	border-bottom: 1px solid rgb(39 39 42 / 0.5);
}

.tsc-shoutbox--featured .tsc-shout-form {
	padding: 1rem 1.25rem 1.25rem;
	background: linear-gradient(180deg, rgb(24 24 27 / 0.95), rgb(9 9 11));
	border-top: 1px solid rgb(251 146 60 / 0.15);
}

.tsc-shoutbox--featured .tsc-shout-start {
	min-height: 220px;
	background: radial-gradient(ellipse at center, rgba(251, 146, 60, 0.06), transparent 65%);
}

.tsc-shoutbox--featured .tsc-shout-start-btn {
	padding: 0.875rem 1.75rem;
	font-size: 0.875rem;
	font-weight: 800;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: rgb(0 0 0);
	background: linear-gradient(135deg, rgb(251 146 60), rgb(234 88 12));
	border: none;
	border-radius: 0.625rem;
	box-shadow: 0 8px 24px rgba(251, 146, 60, 0.35);
}

.tsc-shoutbox--featured .tsc-shout-start-btn:hover:not(:disabled) {
	background: linear-gradient(135deg, rgb(253 186 116), rgb(251 146 60));
	transform: translateY(-1px);
	box-shadow: 0 12px 32px rgba(251, 146, 60, 0.45);
}

.tsc-shoutbox--featured #sbox table.tableinborder tr,
.tsc-shoutbox--featured .tsc-shout-feed .tableinborder tr,
.tsc-shoutbox--featured .tsc-shout-msg {
	display: block;
	margin-bottom: 0.5rem;
	padding: 0.625rem 0.75rem;
	border: 1px solid rgb(39 39 42 / 0.5) !important;
	border-radius: 0.5rem;
	background: rgb(24 24 27 / 0.6);
	transition: border-color 0.15s ease, background 0.15s ease;
}

.tsc-shoutbox--featured #sbox table.tableinborder tr:hover,
.tsc-shoutbox--featured .tsc-shout-feed .tableinborder tr:hover,
.tsc-shoutbox--featured .tsc-shout-msg:hover {
	border-color: rgb(251 146 60 / 0.25) !important;
	background: rgb(39 39 42 / 0.7);
}

.tsc-shoutbox--featured .tsc-shout-submit {
	padding: 0.75rem 1.25rem !important;
	font-size: 0.8125rem !important;
	font-weight: 800 !important;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	box-shadow: 0 4px 16px rgba(234, 88, 12, 0.35);
}

.tsc-shoutbox--featured .tsc-shout-input {
	padding: 0.75rem 1rem !important;
	font-size: 0.875rem !important;
	border-color: rgb(63 63 70) !important;
}

.tsc-shoutbox--featured .tsc-shout-alerts {
	margin-bottom: 0.75rem;
}

/* Premium Shoutbox — scoped legacy markup overrides */
.tsc-shoutbox {
	display: flex;
	flex-direction: column;
	gap: 0;
	background: rgb(9 9 11);
	border-radius: 0.5rem;
	overflow: hidden;
}

.tsc-shoutbox #sbform {
	display: none;
}

.tsc-shoutbox.tsc-shout-active #sbform {
	display: block;
}

.tsc-shoutbox #sbsmilies {
	display: none;
	min-height: 0;
	padding: 0.25rem 0;
}

.tsc-shoutbox.tsc-shout-active #sbsmilies {
	display: block;
}

.tsc-shout-messages {
	min-height: 200px;
	max-height: 340px;
	overflow-x: hidden;
	overflow-y: auto;
	padding: 0.75rem 1rem;
	background: rgb(9 9 11);
	scrollbar-width: thin;
	scrollbar-color: rgb(63 63 70) transparent;
	text-align: left;
}

.tsc-shout-messages::-webkit-scrollbar {
	width: 6px;
}

.tsc-shout-messages::-webkit-scrollbar-thumb {
	background: rgb(63 63 70);
	border-radius: 3px;
}

.tsc-shout-start {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 160px;
}

.tsc-shout-start-btn {
	padding: 0.625rem 1.25rem;
	font-size: 0.8125rem;
	font-weight: 600;
	color: rgb(251 146 60);
	background: rgb(39 39 42);
	border: 1px solid rgb(63 63 70);
	border-radius: 0.5rem;
	cursor: pointer;
	transition: all 0.2s ease;
}

.tsc-shout-start-btn:hover:not(:disabled) {
	background: rgb(63 63 70);
	border-color: rgb(251 146 60 / 0.4);
}

.tsc-shout-start-btn:disabled {
	opacity: 0.6;
	cursor: wait;
}

.tsc-shout-picker {
	padding: 0 1rem;
}

.tsc-shout-picker:empty {
	display: none;
	padding: 0;
}

.tsc-shout-picker .tableinborder {
	margin-bottom: 0.75rem !important;
}

.tsc-shout-form {
	padding: 0.75rem 1rem 1rem;
	background: rgb(24 24 27);
	border-top: 1px solid rgb(39 39 42);
}

.tsc-shout-toolbar {
	margin-bottom: 0.5rem;
	overflow-x: auto;
	overflow-y: visible;
	position: relative;
}

.tsc-shout-toolbar .tableinborder,
.tsc-shout-toolbar table.tableinborder,
.tsc-shoutbox #toolbar .tableinborder {
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	border: 1px solid rgb(39 39 42) !important;
	border-radius: 0.5rem !important;
	box-shadow: none !important;
	background: rgb(24 24 27) !important;
}

.tsc-shout-toolbar table[width="580"] {
	width: 100% !important;
}

.tsc-shout-toolbar .tableb,
.tsc-shout-toolbar .tablea,
.tsc-shoutbox #toolbar td {
	background: transparent !important;
	border: none !important;
	padding: 0.125rem !important;
	vertical-align: middle !important;
}

.tsc-shoutbox .editbutton {
	border-radius: 0.25rem;
	cursor: pointer;
	opacity: 0.9;
	transition: opacity 0.15s ease, background 0.15s ease;
}

.tsc-shout-tool-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.25rem;
	height: 2.25rem;
	min-width: 2.25rem;
	min-height: 2.25rem;
	padding: 0;
	flex-shrink: 0;
	box-sizing: border-box;
	border: 1px solid rgb(63 63 70);
	border-radius: 0.375rem;
	background: rgb(39 39 42);
	color: rgb(212 212 216);
	cursor: pointer;
	transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.tsc-shout-tool-btn:hover,
.tsc-shout-tool-btn:focus-visible {
	background: rgb(63 63 70);
	border-color: rgb(82 82 91);
	color: rgb(251 146 60);
	outline: none;
}

.tsc-shout-tool-btn:active {
	background: rgb(63 63 70);
	border-color: rgb(251 146 60 / 0.45);
	color: rgb(251 146 60);
}

.tsc-shout-tool-btn .tsc-icon {
	pointer-events: none;
}

.tsc-shout-toolbar #toolbar > table > tbody > tr {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.25rem;
}

.tsc-shout-toolbar #toolbar > table > tbody > tr > td {
	display: inline-flex;
	align-items: center;
	position: relative;
	flex: 0 0 auto;
}

.tsc-shout-toolbar img[src*="spacer"],
.tsc-shout-toolbar td.tablea:empty,
.tsc-shout-toolbar td.tablea:has(img[src*="spacer"]) {
	display: none !important;
}

.tsc-shout-md-toolbar-wrap {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: center;
	gap: 0.45rem;
	min-width: 0;
	width: 100%;
	padding: 0.45rem 0.55rem;
	border: 1px solid rgb(39 39 42);
	border-radius: 0.5rem;
	background: rgb(24 24 27);
	overflow-x: auto;
	overflow-y: visible;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: thin;
}

.tsc-shout-md-toolbar-wrap .tsc-shout-md-toolbar__groups,
.tsc-shout-md-toolbar-wrap .tsc-md-editor__tool-groups {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	gap: 0.35rem;
	min-width: 0;
	flex: 1 1 auto;
}

.tsc-shout-md-toolbar__badge {
	flex: 0 0 auto;
	margin-left: 0;
}

.tsc-shout-md-toolbar__extra {
	flex: 0 0 auto;
}

.tsc-shout-md-toolbar-wrap .tsc-shout-color-picker {
	position: relative;
	flex: 0 0 auto;
}

.tsc-shout-md-toolbar-wrap .tsc-md-editor__heading-select {
	min-width: 5.5rem;
	max-width: 6.5rem;
}

.tsc-shout-md-toolbar {
	display: none;
}

.tsc-shout-md-toolbar-wrap .tsc-md-editor__tool-group {
	flex: 0 0 auto;
}

.tsc-md-toolbar-shared .tsc-md-editor__tool-group {
	display: inline-flex;
	align-items: center;
	gap: 0.2rem;
	padding: 0.15rem;
	border-radius: 0.45rem;
	border: 1px solid rgb(39 39 42 / 0.45);
	background: rgb(9 9 11 / 0.35);
}

.tsc-md-toolbar-shared .tsc-md-editor__tool {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2rem;
	min-height: 2rem;
	padding: 0.25rem 0.45rem;
	border: 1px solid transparent;
	border-radius: 0.35rem;
	background: transparent;
	color: rgb(212 212 216);
	cursor: pointer;
	transition: color 0.15s ease, background 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
}

.tsc-md-toolbar-shared .tsc-md-editor__tool.tsc-shout-tool-btn {
	width: 2rem;
	height: 2rem;
	min-width: 2rem;
	min-height: 2rem;
	padding: 0;
	border-color: rgb(63 63 70);
	background: rgb(39 39 42);
}

.tsc-md-toolbar-shared .tsc-md-editor__tool:hover,
.tsc-md-toolbar-shared .tsc-md-editor__tool:focus-visible {
	color: rgb(251 146 60);
	background: rgb(63 63 70);
	border-color: rgb(251 146 60 / 0.45);
	outline: none;
	box-shadow: 0 0 0 2px rgb(251 146 60 / 0.12);
}

.tsc-md-toolbar-shared .tsc-md-editor__heading-select-wrap {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	min-height: 2rem;
	padding: 0 0.35rem;
}

.tsc-md-toolbar-shared .tsc-md-editor__heading-label {
	display: inline-flex;
	color: rgb(161 161 170);
}

.tsc-md-toolbar-shared .tsc-md-editor__heading-select {
	min-width: 6.5rem;
	padding: 0.25rem 0.35rem;
	border: 1px solid rgb(63 63 70 / 0.55);
	border-radius: 0.35rem;
	background: rgb(24 24 27);
	color: rgb(212 212 216);
	font-size: 0.6875rem;
	font-weight: 600;
	cursor: pointer;
}

.tsc-md-toolbar-shared .tsc-markdown-editor__badge,
.tsc-shout-md-toolbar__badge {
	display: inline-flex;
	align-items: center;
	padding: 0.15rem 0.45rem;
	font-size: 0.5625rem;
	font-weight: 700;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: rgb(251 146 60);
	background: rgb(251 146 60 / 0.12);
	border: 1px solid rgb(251 146 60 / 0.28);
	border-radius: 999px;
	white-space: nowrap;
}

.tsc-md-toolbar-shared .tsc-markdown-editor__badge {
	margin-left: auto;
}

.tsc-shout-md-toolbar-extras {
	display: none;
}

.tsc-shout-md-toolbar__group {
	display: inline-flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.25rem;
}

.tsc-shout-md-toolbar__sep {
	width: 1px;
	height: 1.5rem;
	background: rgb(63 63 70);
	flex-shrink: 0;
}

.tsc-shout-md-toolbar__group--color {
	position: relative;
}

.tsc-shout-color-picker {
	position: relative;
}

.tsc-shout-color-picker__toggle {
	list-style: none;
}

.tsc-shout-color-picker__toggle::-webkit-details-marker {
	display: none;
}

.tsc-shout-color-picker__panel {
	position: absolute;
	left: 0;
	top: calc(100% + 0.375rem);
	z-index: 30;
	min-width: 11rem;
	padding: 0.5rem;
	border: 1px solid rgb(63 63 70);
	border-radius: 0.5rem;
	background: rgb(24 24 27);
	box-shadow: 0 8px 24px rgb(0 0 0 / 0.45);
}

.tsc-shout-md-toolbar {
	overflow: visible;
}

html[data-tsc-theme="light"] .tsc-md-toolbar-shared .tsc-md-editor__tool-group {
	border-color: var(--tsc-border);
	background: var(--tsc-bg-surface);
}

html[data-tsc-theme="light"] .tsc-md-toolbar-shared .tsc-md-editor__tool {
	color: var(--tsc-text-secondary);
}

html[data-tsc-theme="light"] .tsc-md-toolbar-shared .tsc-md-editor__tool.tsc-shout-tool-btn {
	border-color: var(--tsc-border);
	background: var(--tsc-bg-surface);
}

html[data-tsc-theme="light"] .tsc-md-toolbar-shared .tsc-md-editor__tool:hover,
html[data-tsc-theme="light"] .tsc-md-toolbar-shared .tsc-md-editor__tool:focus-visible {
	color: var(--tsc-accent);
	background: var(--tsc-bg-elevated);
	border-color: rgb(234 88 12 / 0.45);
}

html[data-tsc-theme="light"] .tsc-md-toolbar-shared .tsc-md-editor__heading-select {
	background: var(--tsc-bg-surface);
	border-color: var(--tsc-border);
	color: var(--tsc-text);
}

.tsc-shout-color-picker__label {
	margin: 0 0 0.375rem;
	font-size: 0.6875rem;
	color: rgb(161 161 170);
}

.tsc-shout-color-picker__grid {
	display: grid;
	grid-template-columns: repeat(6, 1.25rem);
	gap: 0.25rem;
}

.tsc-shout-color-swatch {
	width: 1.25rem;
	height: 1.25rem;
	padding: 0;
	border: 1px solid rgb(63 63 70);
	border-radius: 0.25rem;
	background: var(--swatch);
	cursor: pointer;
	transition: transform 0.1s ease, border-color 0.15s ease;
}

.tsc-shout-color-swatch:hover,
.tsc-shout-color-swatch:focus-visible {
	transform: scale(1.1);
	border-color: rgb(251 146 60);
	outline: none;
}

.tsc-shout-tool-btn--link {
	text-decoration: none;
	color: inherit;
}

.tsc-shoutbox .editbutton:hover {
	opacity: 1;
	background: rgb(63 63 70);
}

.tsc-shoutbox #restshboxtext {
	width: 2.75rem !important;
	font-size: 0.625rem !important;
	padding: 0.125rem 0.25rem !important;
	text-align: center;
	background: rgb(39 39 42) !important;
	border: 1px solid rgb(63 63 70) !important;
	border-radius: 0.25rem !important;
}

.tsc-shoutbox .boxes {
	border-radius: 0.5rem !important;
	border: 1px solid rgb(63 63 70) !important;
	background: rgb(24 24 27) !important;
}

.tsc-shout-box-backdrop {
	position: fixed;
	inset: 0;
	z-index: 9998;
	background: rgb(0 0 0 / 0.6);
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.2s ease;
}

.tsc-shout-box-backdrop.is-open {
	opacity: 1;
	pointer-events: auto;
}

body.tsc-shout-box-active {
	overflow: hidden;
}

.tsc-shout-box-modal {
	position: fixed !important;
	left: 50% !important;
	top: 50% !important;
	right: auto !important;
	bottom: auto !important;
	transform: translate(-50%, -50%) !important;
	width: min(calc(100vw - 2rem), 22rem) !important;
	max-width: calc(100vw - 2rem) !important;
	max-height: min(75vh, 28rem) !important;
	height: auto !important;
	z-index: 9999 !important;
	opacity: 1 !important;
	filter: none !important;
	overflow-x: hidden !important;
	overflow-y: auto !important;
	-webkit-overflow-scrolling: touch;
	padding: 0 !important;
	box-shadow: 0 24px 48px rgb(0 0 0 / 0.55);
}

.tsc-shout-box-modal#facerow,
.tsc-shout-box-modal#smilierow {
	max-height: min(80vh, 32rem) !important;
}

.tsc-shout-box-modal .tablecat {
	position: sticky;
	top: 0;
	z-index: 2;
	background: rgb(39 39 42) !important;
	padding: 0.5rem 0.625rem !important;
}

.tsc-shout-box-modal .tablecat b {
	font-size: 0.8125rem;
	color: rgb(244 244 245);
}

.tsc-shout-box-modal .tablecat img[src*="close"] {
	width: 1.75rem !important;
	height: 1.75rem !important;
	padding: 0.25rem;
	cursor: pointer;
	filter: brightness(1.4);
}

.tsc-shout-box-modal .tableb a {
	display: block;
	padding: 0.5rem 0.625rem;
	font-size: 0.875rem;
	line-height: 1.4;
}

.tsc-shout-box-modal td[id^="#"] {
	width: 1.75rem !important;
	height: 1.75rem !important;
	min-width: 1.75rem !important;
	min-height: 1.75rem !important;
	padding: 0.125rem !important;
}

.tsc-shout-box-modal td[id^="#"] a {
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 1.5rem;
	min-height: 1.5rem;
}

@media (max-width: 767px) {
	.tsc-shout-box-modal {
		top: auto !important;
		bottom: 0 !important;
		left: 0 !important;
		right: 0 !important;
		transform: none !important;
		width: 100% !important;
		max-width: 100% !important;
		max-height: 78vh !important;
		border-radius: 0.75rem 0.75rem 0 0 !important;
		padding-bottom: env(safe-area-inset-bottom, 0) !important;
	}

	.tsc-shout-box-modal td[id^="#"] {
		width: 2.25rem !important;
		height: 2.25rem !important;
		min-width: 2.25rem !important;
		min-height: 2.25rem !important;
	}

	.tsc-shout-box-modal .tableb a {
		min-height: 2.75rem;
		padding: 0.625rem 0.75rem;
	}
}

.tsc-shout-input-row {
	display: flex;
	gap: 0.5rem;
	margin-bottom: 0.5rem;
}

.tsc-shout-input,
.tsc-shoutbox .formtextarea {
	flex: 1;
	min-width: 0;
	width: 100% !important;
	padding: 0.625rem 0.875rem !important;
	font-size: 0.8125rem !important;
	background: rgb(9 9 11) !important;
	border: 1px solid rgb(63 63 70) !important;
	border-radius: 0.5rem !important;
	color: rgb(244 244 245) !important;
}

.tsc-shout-input:focus,
.tsc-shoutbox .formtextarea:focus {
	border-color: rgb(251 146 60 / 0.5) !important;
	box-shadow: 0 0 0 2px rgba(251, 146, 60, 0.12) !important;
	outline: none !important;
}

.tsc-shout-submit,
.tsc-shoutbox .shoutbtn {
	padding: 0.625rem 1rem !important;
	font-size: 0.8125rem !important;
	font-weight: 600 !important;
	color: rgb(244 244 245) !important;
	background: rgb(234 88 12) !important;
	border: none !important;
	border-radius: 0.5rem !important;
	cursor: pointer;
	white-space: nowrap;
	width: auto !important;
}

.tsc-shout-submit:hover,
.tsc-shoutbox .shoutbtn:hover {
	background: rgb(251 146 60) !important;
}

.tsc-shout-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.375rem;
	margin-bottom: 0.5rem;
}

.tsc-shout-btn {
	padding: 0.375rem 0.625rem !important;
	font-size: 0.6875rem !important;
	font-weight: 600 !important;
	color: rgb(161 161 170) !important;
	background: rgb(39 39 42) !important;
	border: 1px solid rgb(63 63 70) !important;
	border-radius: 0.375rem !important;
	cursor: pointer;
	width: auto !important;
}

.tsc-shout-btn:hover {
	color: rgb(228 228 231) !important;
	background: rgb(63 63 70) !important;
}

.tsc-shout-links {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.375rem;
	font-size: 0.6875rem;
}

.tsc-shout-links a {
	color: rgb(113 113 122);
	text-decoration: none;
}

.tsc-shout-links a:hover {
	color: rgb(251 146 60);
}

.tsc-shout-links span {
	color: rgb(63 63 70);
}

/* Chat messages injected into #sbox */
.tsc-shoutbox #sbox > br:first-child,
.tsc-shoutbox #sbox > br + br {
	display: none;
}

.tsc-shoutbox #sbox > .tableinborder,
.tsc-shoutbox #sbox table.tableinborder {
	width: 100% !important;
	margin: 0 0 0.5rem !important;
	border: none !important;
	box-shadow: none !important;
	background: transparent !important;
	border-radius: 0 !important;
}

.tsc-shoutbox #sbox table.tableinborder tbody {
	display: block;
}

.tsc-shoutbox #sbox table.tableinborder tr {
	display: block;
	padding: 0.5rem 0;
	border-bottom: 1px solid rgb(39 39 42 / 0.45);
}

.tsc-shoutbox #sbox table.tableinborder tr:last-child {
	border-bottom: none;
}

.tsc-shoutbox #sbox table.tableinborder td {
	display: inline;
	background: transparent !important;
	border: none !important;
	padding: 0 0.25rem 0 0 !important;
	height: auto !important;
	width: auto !important;
	color: rgb(161 161 170) !important;
	font-size: 0.75rem !important;
	line-height: 1.5 !important;
	vertical-align: baseline !important;
}

.tsc-shoutbox #sbox .date,
.tsc-shoutbox #sbox .datered,
.tsc-shoutbox #sbox .dateyellow {
	font-size: 0.625rem !important;
	color: rgb(113 113 122) !important;
}

.tsc-shoutbox #sbox .dateyellow {
	color: rgb(250 204 21) !important;
}

.tsc-shoutbox #sbox .datered {
	color: rgb(248 113 113) !important;
}

.tsc-shoutbox #sbox td:last-child {
	display: inline;
	color: rgb(212 212 216) !important;
}

.tsc-shoutbox #sbox a {
	color: rgb(212 212 216);
	text-decoration: none;
}

.tsc-shoutbox #sbox a:hover {
	color: rgb(251 146 60);
}

/* Legacy tiny icons in old table markup — not shout message photos */
.tsc-shoutbox #sbox .tableinborder img,
.tsc-shoutbox #sbox img[src*="spacer"] {
	max-width: 1rem;
	max-height: 1rem;
	vertical-align: middle;
}

.tsc-shoutbox #sbox .tsc-shout-msg-body .tsc-shout-inline-img,
.tsc-shoutbox #sbox .tsc-shout-msg-body .tsc-shout-img-link img {
	display: inline-block;
	vertical-align: middle;
	width: auto;
	height: auto;
	max-width: min(100%, 320px);
	max-height: 320px;
	object-fit: contain;
	border-radius: 0.375rem;
	margin: 0.25rem 0;
}

.tsc-shoutbox #sbox font,
.tsc-shoutbox #sbox b {
	font-size: inherit;
}

.tsc-shoutbox center {
	text-align: left;
}

/* Shoutbox AJAX feed + standalone (shoutbox.php) */
.tsc-shout-alerts {
	display: flex;
	flex-direction: column;
	gap: 0.375rem;
	margin-bottom: 0.75rem;
}

.tsc-shout-alert {
	padding: 0.5rem 0.75rem;
	font-size: 0.75rem;
	font-weight: 600;
	line-height: 1.4;
	border-radius: 0.5rem;
	border: 1px solid transparent;
}

.tsc-shout-alert__link {
	color: inherit;
	text-decoration: none;
	display: block;
}

.tsc-shout-alert__link:hover {
	text-decoration: underline;
}

.tsc-shout-alert--blocked {
	color: rgb(248 113 113);
	background: rgb(127 29 29 / 0.25);
	border-color: rgb(127 29 29 / 0.5);
}

.tsc-shout-alert--pm {
	color: rgb(96 165 250);
	background: rgb(30 58 138 / 0.3);
	border-color: rgb(30 64 175 / 0.45);
}

.tsc-shout-alert--team {
	color: rgb(251 146 60);
	background: rgb(124 45 18 / 0.35);
	border-color: rgb(154 52 18 / 0.5);
}

.tsc-shout-alert--tbm {
	color: rgb(250 204 21);
	background: rgb(113 63 18 / 0.35);
	border-color: rgb(161 98 7 / 0.45);
}

.tsc-shout-alert--mod {
	color: rgb(244 114 182);
	background: rgb(131 24 67 / 0.3);
	border-color: rgb(157 23 77 / 0.45);
}

.tsc-shout-alert--pchat {
	color: rgb(74 222 128);
	background: rgb(20 83 45 / 0.35);
	border-color: rgb(22 101 52 / 0.45);
}

.tsc-shout-alert--gu {
	color: rgb(167 139 250);
	background: rgb(76 29 149 / 0.3);
	border-color: rgb(91 33 182 / 0.45);
}

.tsc-shout-alert--info {
	color: rgb(161 161 170);
	background: rgb(39 39 42);
	border-color: rgb(63 63 70);
}

.tsc-shout-feed {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}

.tsc-shout-msg {
	padding: 0.625rem 0.75rem;
	border: 1px solid rgb(39 39 42 / 0.45);
	border-radius: 0.5rem;
	background: rgb(24 24 27 / 0.55);
}

.tsc-shout-msg--own {
	border-color: rgb(250 204 21 / 0.2);
}

.tsc-shout-msg--mention {
	border-color: rgb(248 113 113 / 0.25);
}

.tsc-shout-msg-head {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	align-items: center;
	gap: 0.5rem 0.625rem;
	margin-bottom: 0.35rem;
}

.tsc-shout-msg-time {
	font-size: 0.6875rem;
	font-weight: 600;
	font-variant-numeric: tabular-nums;
	letter-spacing: 0.02em;
	color: rgb(113 113 122);
	white-space: nowrap;
}

.tsc-shout-msg-time--yellow,
.tsc-shout-msg-time--dateyellow {
	color: rgb(250 204 21) !important;
}

.tsc-shout-msg-time--red,
.tsc-shout-msg-time--datered {
	color: rgb(248 113 113) !important;
}

.tsc-shout-msg-user {
	display: flex;
	align-items: center;
	gap: 0.35rem;
	min-width: 0;
}

.tsc-shout-nick {
	display: inline-block;
	padding: 0;
	border: none;
	background: transparent;
	font-size: 0.8125rem;
	font-weight: 700;
	line-height: 1.3;
	cursor: pointer;
	text-align: left;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	max-width: 100%;
}

.tsc-shout-nick:hover {
	text-decoration: underline;
}

.tsc-shout-user-icons {
	display: inline-flex;
	align-items: center;
	gap: 0.2rem;
	flex-shrink: 0;
	line-height: 0;
}

.tsc-shout-user-icons img {
	width: 0.875rem;
	height: 0.875rem;
	max-width: 0.875rem;
	max-height: 0.875rem;
	object-fit: contain;
	vertical-align: middle;
	opacity: 0.92;
}

.tsc-shout-msg-actions {
	display: inline-flex;
	align-items: center;
	justify-content: flex-end;
	gap: 0.25rem;
	flex-shrink: 0;
}

.tsc-shout-action-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.75rem;
	height: 1.75rem;
	padding: 0;
	border: 1px solid rgb(63 63 70 / 0.55);
	border-radius: 0.375rem;
	color: rgb(161 161 170);
	background: rgb(39 39 42 / 0.65);
	cursor: pointer;
	transition: color 0.15s ease, border-color 0.15s ease, background 0.15s ease;
}

.tsc-shout-action-btn:hover {
	color: rgb(251 146 60);
	border-color: rgb(251 146 60 / 0.4);
	background: rgb(39 39 42);
}

.tsc-shout-action-btn--inline {
	width: 1.25rem;
	height: 1.25rem;
	margin-left: 0.15rem;
	vertical-align: middle;
}

.tsc-shout-msg-body {
	font-size: 0.8125rem;
	line-height: 1.55;
	color: rgb(212 212 216);
	overflow-wrap: break-word;
}

.tsc-shout-msg-body > :first-child {
	margin-top: 0;
}

/* Smileys — inline mit Text, gleiche Zeile */
.tsc-shout-msg-body .tsc-inline-smilie,
.tsc-shout-msg-body img:not(.tsc-shout-inline-img) {
	display: inline;
	vertical-align: -0.2em;
	width: auto;
	height: auto;
	max-width: none;
	max-height: 1.35em;
	margin: 0 0.06em;
	padding: 0;
	border: 0;
	border-radius: 0;
	object-fit: contain;
}

/* Große Bilder — inline solange Platz, sonst Umbruch; nur begrenzen wenn zu groß */
.tsc-shout-img-link {
	display: inline;
	line-height: inherit;
	vertical-align: baseline;
	max-width: 100%;
}

.tsc-shout-msg-body .tsc-shout-inline-img,
.tsc-shout-msg-body a > img.tsc-shout-inline-img {
	display: inline-block;
	vertical-align: middle;
	width: auto;
	height: auto;
	max-width: min(100%, 320px);
	max-height: 320px;
	object-fit: contain;
	border-radius: 0.375rem;
	margin: 0.25rem 0;
}

.tsc-shout-msg-body a > img[style*="max-width"]:not(.tsc-inline-smilie) {
	display: inline-block;
	vertical-align: middle;
	max-width: min(100%, 320px) !important;
	max-height: 320px !important;
	width: auto !important;
	height: auto !important;
	margin: 0.25rem 0;
	border-radius: 0.375rem;
}

.tsc-shout-feed .tableinborder,
.tsc-shout-feed-table {
	width: 100% !important;
	margin: 0 !important;
	border: none !important;
	box-shadow: none !important;
	background: transparent !important;
	border-radius: 0 !important;
}

.tsc-shout-feed .tableinborder tbody,
.tsc-shout-feed-table tbody {
	display: block;
}

.tsc-shout-feed .tableinborder tr,
.tsc-shout-feed-table tr {
	display: block;
	padding: 0.5rem 0;
	border-bottom: 1px solid rgb(39 39 42 / 0.45);
}

.tsc-shout-feed .tableinborder tr:last-child,
.tsc-shout-feed-table tr:last-child {
	border-bottom: none;
}

.tsc-shout-feed-time,
.tsc-shout-feed-actions,
.tsc-shout-feed-user,
.tsc-shout-feed-text,
.tsc-shoutbox #sbox .tsc-shout-feed-time,
.tsc-shoutbox #sbox .tsc-shout-feed-actions,
.tsc-shoutbox #sbox .tsc-shout-feed-user,
.tsc-shoutbox #sbox .tsc-shout-feed-text {
	display: inline;
	background: transparent !important;
	border: none !important;
	padding: 0 0.25rem 0 0 !important;
	height: auto !important;
	width: auto !important;
	font-size: 0.75rem !important;
	line-height: 1.5 !important;
	vertical-align: baseline !important;
}

.tsc-shout-feed-time,
.tsc-shoutbox #sbox .tsc-shout-feed-time {
	font-size: 0.625rem !important;
	color: rgb(113 113 122) !important;
}

.tsc-shout-feed-time .dateyellow,
.tsc-shoutbox #sbox .tsc-shout-feed-time .dateyellow {
	color: rgb(250 204 21) !important;
}

.tsc-shout-feed-time .datered,
.tsc-shoutbox #sbox .tsc-shout-feed-time .datered {
	color: rgb(248 113 113) !important;
}

.tsc-shout-feed-text,
.tsc-shoutbox #sbox .tsc-shout-feed-text {
	color: rgb(212 212 216) !important;
}

.tsc-shout-feed-user .tsc-shout-nick,
.tsc-shoutbox #sbox .tsc-shout-nick {
	cursor: pointer;
}

.tsc-shout-action {
	display: inline-block;
	vertical-align: middle;
	margin-right: 0.125rem;
	cursor: pointer;
	opacity: 0.85;
	transition: opacity 0.15s ease;
}

.tsc-shout-action:hover {
	opacity: 1;
}

.tsc-shout-action img {
	max-width: 1rem;
	max-height: 1rem;
	vertical-align: middle;
}

.tsc-shout-standalone {
	min-height: auto;
}

.tsc-shout-standalone .tsc-shout-edit-form {
	margin-top: 0.5rem;
}

.tsc-shout-pchat-frame {
	display: block;
	width: 100%;
	min-height: 320px;
	margin-top: 0.75rem;
	border: 1px solid rgb(39 39 42);
	border-radius: 0.5rem;
	background: rgb(9 9 11);
}

/* Private chat — WhatsApp-style layout (shoutbox.php?action=pc) */
.tsc-shout-standalone:has(.tsc-pchat-app) {
	padding-top: 0.5rem;
	padding-bottom: 0.5rem;
	min-height: 100vh;
	display: flex;
	flex-direction: column;
}

.tsc-shout-standalone:has(.tsc-pchat-app) .tsc-theme-toggle--shout {
	margin-bottom: 0.5rem;
}

.tsc-pchat-app {
	--tsc-pchat-accent: rgb(251 146 60);
	--tsc-pchat-accent-strong: rgb(234 88 12);
	--tsc-pchat-accent-soft: rgb(251 146 60 / 0.14);
	--tsc-pchat-border: rgb(39 39 42);
	--tsc-pchat-surface: rgb(24 24 27);
	--tsc-pchat-surface-2: rgb(9 9 11);
	--tsc-pchat-in: rgb(39 39 42);
	--tsc-pchat-out: rgb(251 146 60 / 0.18);
	display: flex;
	flex-direction: column;
	width: 100%;
	border-radius: 1rem;
	overflow: hidden;
	border: 1px solid rgb(63 63 70 / 0.55);
	box-shadow:
		0 0 0 1px rgb(251 146 60 / 0.05) inset,
		0 24px 48px rgb(0 0 0 / 0.45);
	background: var(--tsc-pchat-surface-2);
}

.tsc-shout-standalone .tsc-pchat-app {
	max-width: 32rem;
	margin: 0 auto;
	flex: 1;
	min-height: calc(100vh - 3.5rem);
	min-height: calc(100dvh - 3.5rem);
}

.tsc-pchat-header {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	padding: 0.75rem 1rem;
	border-bottom: 1px solid var(--tsc-pchat-border);
	background: linear-gradient(180deg, rgb(24 24 27 / 0.98), rgb(9 9 11 / 0.95));
}

.tsc-pchat-header-avatar {
	flex-shrink: 0;
	width: 2.75rem;
	height: 2.75rem;
	border-radius: 999px;
	overflow: hidden;
	border: 2px solid rgb(251 146 60 / 0.35);
	box-shadow: 0 4px 14px rgb(0 0 0 / 0.35);
}

.tsc-pchat-header-avatar img,
.tsc-pchat-header-you img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.tsc-pchat-header-info {
	flex: 1;
	min-width: 0;
}

.tsc-pchat-header-name {
	margin: 0;
	font-size: 0.9375rem;
	font-weight: 800;
	line-height: 1.25;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.tsc-pchat-header-status {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	margin: 0.15rem 0 0;
	font-size: 0.6875rem;
	color: rgb(161 161 170);
}

.tsc-pchat-header-you {
	flex-shrink: 0;
	width: 2rem;
	height: 2rem;
	border-radius: 999px;
	overflow: hidden;
	border: 1px solid rgb(63 63 70 / 0.65);
	opacity: 0.85;
}

.tsc-pchat-body {
	flex: 1 1 auto;
	min-height: 0;
	background:
		radial-gradient(circle at 20% 10%, rgb(251 146 60 / 0.04), transparent 45%),
		radial-gradient(circle at 80% 90%, rgb(251 146 60 / 0.03), transparent 40%),
		repeating-linear-gradient(
			-45deg,
			transparent,
			transparent 10px,
			rgb(255 255 255 / 0.012) 10px,
			rgb(255 255 255 / 0.012) 11px
		),
		rgb(9 9 11);
}

.tsc-pchat-frame {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 18rem;
	border: 0;
	background: transparent;
}

.tsc-pchat-composer {
	padding: 0.65rem 0.75rem 0.85rem;
	border-top: 1px solid var(--tsc-pchat-border);
	background: linear-gradient(180deg, rgb(24 24 27 / 0.95), rgb(9 9 11));
}

.tsc-pchat-input-wrap {
	display: flex;
	align-items: flex-end;
	gap: 0.5rem;
	padding: 0.35rem 0.35rem 0.35rem 0.85rem;
	border-radius: 999px;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(9 9 11 / 0.85);
}

.tsc-pchat-input {
	flex: 1;
	min-width: 0;
	padding: 0.55rem 0;
	font-size: 0.8125rem;
	line-height: 1.4;
	color: rgb(244 244 245);
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
	outline: none !important;
}

.tsc-pchat-input::placeholder {
	color: rgb(113 113 122);
}

.tsc-pchat-send {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 2.5rem;
	height: 2.5rem;
	padding: 0;
	border: none;
	border-radius: 999px;
	color: rgb(9 9 11);
	background: linear-gradient(135deg, rgb(251 146 60), rgb(234 88 12));
	box-shadow: 0 6px 18px rgb(251 146 60 / 0.35);
	cursor: pointer;
	transition: filter 0.15s ease, transform 0.15s ease;
}

.tsc-pchat-send:hover {
	filter: brightness(1.06);
	transform: scale(1.04);
}

.tsc-pchat-frame-body {
	margin: 0;
	min-height: 100%;
	background:
		radial-gradient(circle at 20% 10%, rgb(251 146 60 / 0.04), transparent 45%),
		radial-gradient(circle at 80% 90%, rgb(251 146 60 / 0.03), transparent 40%),
		repeating-linear-gradient(
			-45deg,
			transparent,
			transparent 10px,
			rgb(255 255 255 / 0.012) 10px,
			rgb(255 255 255 / 0.012) 11px
		),
		rgb(9 9 11);
}

.tsc-pchat-thread {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
	padding: 0.75rem 0.65rem 1rem;
	min-height: 100%;
	box-sizing: border-box;
}

.tsc-pchat-day {
	display: flex;
	justify-content: center;
	margin: 0.35rem 0 0.5rem;
}

.tsc-pchat-day span {
	display: inline-block;
	padding: 0.25rem 0.65rem;
	font-size: 0.625rem;
	font-weight: 700;
	letter-spacing: 0.03em;
	color: rgb(161 161 170);
	border-radius: 999px;
	background: rgb(24 24 27 / 0.75);
	border: 1px solid rgb(63 63 70 / 0.45);
}

.tsc-pchat-msg {
	display: flex;
	max-width: 88%;
}

.tsc-pchat-msg--in {
	align-self: flex-start;
}

.tsc-pchat-msg--out {
	align-self: flex-end;
}

.tsc-pchat-bubble {
	position: relative;
	min-width: 4.5rem;
	padding: 0.45rem 0.65rem 0.35rem;
	border-radius: 0.75rem;
	box-shadow: 0 4px 14px rgb(0 0 0 / 0.18);
}

.tsc-pchat-msg--in .tsc-pchat-bubble {
	border-top-left-radius: 0.25rem;
	background: var(--tsc-pchat-in, rgb(39 39 42));
	border: 1px solid rgb(63 63 70 / 0.45);
}

.tsc-pchat-msg--out .tsc-pchat-bubble {
	border-top-right-radius: 0.25rem;
	background: linear-gradient(145deg, rgb(251 146 60 / 0.22), rgb(234 88 12 / 0.14));
	border: 1px solid rgb(251 146 60 / 0.28);
}

.tsc-pchat-bubble-author {
	display: block;
	margin-bottom: 0.2rem;
	font-size: 0.6875rem;
	font-weight: 700;
}

.tsc-pchat-bubble-text {
	font-size: 0.8125rem;
	line-height: 1.5;
	color: rgb(228 228 231);
	word-break: break-word;
}

.tsc-pchat-bubble-text img {
	max-width: 100%;
	border-radius: 0.375rem;
}

.tsc-pchat-bubble-time {
	display: block;
	margin-top: 0.2rem;
	font-size: 0.5625rem;
	font-weight: 600;
	color: rgb(113 113 122);
	text-align: right;
}

.tsc-pchat-msg--out .tsc-pchat-bubble-time {
	color: rgb(251 146 60 / 0.75);
}

.tsc-pchat-empty {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	min-height: 12rem;
	padding: 2rem 1rem;
	text-align: center;
	color: rgb(113 113 122);
}

.tsc-pchat-empty .tsc-icon {
	color: rgb(63 63 70);
	opacity: 0.85;
}

.tsc-pchat-empty p {
	margin: 0;
	font-size: 0.875rem;
	font-weight: 700;
	color: rgb(161 161 170);
}

.tsc-pchat-empty span {
	font-size: 0.75rem;
}

/* Private chat panel (Shoutbox-modal pattern, AJAX fragment) */
.tsc-pchat-panel.tsc-shout-box-modal {
	width: min(calc(100vw - 2rem), 26rem) !important;
	max-width: calc(100vw - 2rem) !important;
	height: min(calc(100dvh - 2rem), 42rem) !important;
	max-height: min(calc(100dvh - 2rem), 42rem) !important;
	padding: 0 !important;
	overflow: hidden !important;
	display: none;
	flex-direction: column;
	border: 1px solid rgb(63 63 70 / 0.65);
	border-radius: 1rem;
	background: rgb(9 9 11);
}

.tsc-pchat-panel[style*="display: block"] {
	display: flex !important;
}

.tsc-pchat-panel-close {
	position: absolute;
	top: 0.55rem;
	right: 0.55rem;
	z-index: 4;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2rem;
	height: 2rem;
	padding: 0;
	border: 1px solid rgb(63 63 70 / 0.65);
	border-radius: 999px;
	color: rgb(212 212 216);
	background: rgb(24 24 27 / 0.92);
	cursor: pointer;
	transition: color 0.15s ease, border-color 0.15s ease, background 0.15s ease;
}

.tsc-pchat-panel-close:hover {
	color: rgb(251 146 60);
	border-color: rgb(251 146 60 / 0.45);
	background: rgb(39 39 42);
}

.tsc-pchat-panel-body {
	flex: 1 1 auto;
	min-height: 0;
	display: flex;
	flex-direction: column;
	overflow: hidden;
}

.tsc-pchat-panel-body .tsc-pchat-app--modal {
	flex: 1 1 auto;
	min-height: 0;
	height: 100%;
	max-width: none;
	width: 100%;
	margin: 0;
	border: none;
	border-radius: 0;
	box-shadow: none;
}

.tsc-pchat-panel-status {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 12rem;
	padding: 1.5rem;
	font-size: 0.875rem;
	color: rgb(161 161 170);
}

.tsc-pchat-panel-status--error {
	color: rgb(248 113 113);
}

@media (max-width: 767px) {
	.tsc-pchat-panel.tsc-shout-box-modal {
		width: 100% !important;
		max-width: 100% !important;
		height: 78vh !important;
		max-height: 78vh !important;
		border-radius: 0.75rem 0.75rem 0 0 !important;
		border-left: none;
		border-right: none;
	}

	.tsc-pchat-panel-close {
		top: max(0.55rem, env(safe-area-inset-top));
		right: max(0.55rem, env(safe-area-inset-right));
	}
}

/* Legacy iframe modal (unused) */
.tsc-pchat-modal-backdrop {
	position: fixed;
	inset: 0;
	z-index: 10040;
	background: rgb(0 0 0 / 0.62);
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.2s ease;
}

.tsc-pchat-modal-backdrop.is-open {
	opacity: 1;
	pointer-events: auto;
}

body.tsc-pchat-modal-active {
	overflow: hidden;
}

.tsc-pchat-modal {
	position: fixed;
	inset: 0;
	z-index: 10050;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: max(0.75rem, env(safe-area-inset-top)) max(0.75rem, env(safe-area-inset-right)) max(0.75rem, env(safe-area-inset-bottom)) max(0.75rem, env(safe-area-inset-left));
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.2s ease;
}

.tsc-pchat-modal.is-open {
	opacity: 1;
	pointer-events: auto;
}

.tsc-pchat-modal-shell {
	position: relative;
	display: flex;
	flex-direction: column;
	flex-shrink: 0;
	width: min(26rem, calc(100vw - 1.5rem));
	height: min(42rem, calc(100dvh - 1.5rem));
	min-height: 20rem;
	border-radius: 1rem;
	overflow: hidden;
	border: 1px solid rgb(63 63 70 / 0.65);
	box-shadow:
		0 0 0 1px rgb(251 146 60 / 0.06) inset,
		0 28px 64px rgb(0 0 0 / 0.55);
	background: rgb(9 9 11);
}

.tsc-pchat-modal-close {
	position: absolute;
	top: 0.55rem;
	right: 0.55rem;
	z-index: 3;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.25rem;
	height: 2.25rem;
	padding: 0;
	border: 1px solid rgb(63 63 70 / 0.65);
	border-radius: 999px;
	color: rgb(212 212 216);
	background: rgb(24 24 27 / 0.92);
	cursor: pointer;
	transition: color 0.15s ease, border-color 0.15s ease, background 0.15s ease;
}

.tsc-pchat-modal-close:hover {
	color: rgb(251 146 60);
	border-color: rgb(251 146 60 / 0.45);
	background: rgb(39 39 42);
}

.tsc-pchat-modal-frame {
	display: block;
	flex: 1 1 auto;
	width: 100%;
	min-height: 0;
	height: 100%;
	border: 0;
	background: rgb(9 9 11);
}

.tsc-pchat-embed-body {
	margin: 0;
	display: flex;
	flex-direction: column;
	min-height: 100%;
	height: 100%;
	overflow: hidden;
	background: rgb(9 9 11);
}

html.h-full:has(> body.tsc-pchat-embed-body) {
	height: 100%;
}

.tsc-pchat-app--embed {
	flex: 1 1 auto;
	min-height: 0;
	max-width: none;
	width: 100%;
	height: 100%;
	margin: 0;
	border: none;
	border-radius: 0;
	box-shadow: none;
}

.tsc-pchat-app--embed .tsc-pchat-body {
	display: flex;
	flex-direction: column;
	min-height: 0;
	flex: 1 1 auto;
}

.tsc-pchat-app--embed .tsc-pchat-frame {
	flex: 1 1 auto;
	min-height: 0;
	height: auto;
}

.tsc-pchat-body--inline {
	display: flex;
	flex-direction: column;
	min-height: 0;
	flex: 1 1 auto;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
}

.tsc-pchat-body--inline .tsc-pchat-thread {
	flex: 1 1 auto;
	min-height: 0;
}

@media (max-width: 640px) {
	.tsc-pchat-modal {
		padding: 0;
	}

	.tsc-pchat-modal-shell {
		width: 100%;
		height: 100%;
		min-height: 0;
		max-height: 100dvh;
		border-radius: 0;
		border-left: none;
		border-right: none;
	}

	.tsc-pchat-modal-close {
		top: max(0.55rem, env(safe-area-inset-top));
		right: max(0.55rem, env(safe-area-inset-right));
	}
}

.tsc-shout-feed--pchat {
	display: flex;
	flex-direction: column;
	gap: 0.375rem;
	padding: 0.5rem 0;
}

.tsc-shout-pchat-line {
	font-size: 0.75rem;
	line-height: 1.5;
	color: rgb(161 161 170);
	padding: 0.25rem 0;
	border-bottom: 1px solid rgb(39 39 42 / 0.35);
}

.tsc-shout-pchat-line:last-child {
	border-bottom: none;
}

.tsc-shout-pchat-form {
	margin-bottom: 0.5rem;
}

/* Legacy #sbox selectors — also match new feed wrapper */
.tsc-shoutbox #sbox > .tsc-shout-alerts {
	margin-bottom: 0.5rem;
}

.tsc-shoutbox #sbox > .tsc-shout-feed {
	margin: 0;
}

/* Shoutbox — mobile-first responsive */
.tsc-shout-hero-badge--hide-mobile {
	display: none;
}

@media (min-width: 640px) {
	.tsc-shout-hero-badge--hide-mobile {
		display: inline-flex;
	}
}

.tsc-shout-toolbar-toggle {
	margin-bottom: 0.5rem;
	border: 1px solid rgb(63 63 70);
	border-radius: 0.5rem;
	background: rgb(24 24 27);
}

.tsc-shout-toolbar-summary {
	display: flex;
	align-items: center;
	gap: 0.375rem;
	padding: 0.625rem 0.75rem;
	font-size: 0.75rem;
	font-weight: 600;
	color: rgb(161 161 170);
	cursor: pointer;
	list-style: none;
	min-height: 2.75rem;
}

.tsc-shout-toolbar-summary::-webkit-details-marker {
	display: none;
}

.tsc-shout-toolbar-toggle[open] .tsc-shout-toolbar-summary {
	color: rgb(251 146 60);
	border-bottom: 1px solid rgb(39 39 42);
}

.tsc-shout-toolbar-toggle .tsc-shout-toolbar {
	padding: 0.5rem;
	margin-bottom: 0;
	overflow: visible;
}

.tsc-shout-compose {
	position: relative;
}

.tsc-shout-input-row {
	flex-direction: column;
}

@media (min-width: 640px) {
	.tsc-shout-input-row {
		flex-direction: row;
		align-items: stretch;
	}
}

.tsc-shout-submit,
.tsc-shoutbox .shoutbtn {
	min-height: 2.75rem;
	width: 100% !important;
}

@media (min-width: 640px) {
	.tsc-shout-submit,
	.tsc-shoutbox .shoutbtn {
		width: auto !important;
		min-width: 6.5rem;
	}
}

.tsc-shout-input,
.tsc-shoutbox .formtextarea {
	min-height: 2.75rem;
	font-size: 1rem !important;
}

@media (min-width: 640px) {
	.tsc-shout-input,
	.tsc-shoutbox .formtextarea {
		font-size: 0.8125rem !important;
	}
}

.tsc-shout-actions {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.5rem;
}

@media (min-width: 480px) {
	.tsc-shout-actions {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (min-width: 768px) {
	.tsc-shout-actions {
		display: flex;
		flex-wrap: wrap;
		gap: 0.375rem;
	}
}

.tsc-shout-btn {
	min-height: 2.5rem !important;
	padding: 0.5rem 0.625rem !important;
	font-size: 0.75rem !important;
	width: 100% !important;
}

@media (min-width: 768px) {
	.tsc-shout-btn {
		width: auto !important;
		min-height: auto !important;
		padding: 0.375rem 0.625rem !important;
		font-size: 0.6875rem !important;
	}
}

.tsc-shout-links a {
	min-height: 2.25rem;
	display: inline-flex;
	align-items: center;
	padding: 0 0.25rem;
}

.tsc-shoutbox .editbutton {
	min-width: 2.25rem;
	min-height: 2.25rem;
	padding: 0.2rem;
}

.tsc-shout-toolbar table[width="580"] {
	width: 100% !important;
	min-width: 0 !important;
}

@media (max-width: 767px) {
	.tsc-shout-hero {
		padding: 0.75rem 1rem;
	}

	.tsc-shout-hero-inner {
		flex-direction: column;
		align-items: flex-start;
	}

	.tsc-shout-hero-title {
		font-size: 0.875rem;
	}

	.tsc-shoutbox--featured .tsc-shout-messages,
	.tsc-shout-messages {
		min-height: 42vh;
		max-height: 50vh;
		padding: 0.75rem;
	}

	.tsc-shoutbox--featured .tsc-shout-form,
	.tsc-shout-form {
		padding: 0.75rem;
		position: sticky;
		bottom: 0;
		z-index: 5;
		border-top: 1px solid rgb(251 146 60 / 0.2);
		background: rgb(9 9 11);
	}

	.tsc-shoutbox--featured #sbox table.tableinborder tr,
	.tsc-shoutbox--featured .tsc-shout-feed .tableinborder tr,
	.tsc-shoutbox--featured .tsc-shout-msg,
	.tsc-shout-msg {
		padding: 0.75rem;
		font-size: 0.8125rem;
		line-height: 1.45;
	}

	.tsc-shout-msg-head {
		grid-template-columns: auto 1fr;
		grid-template-areas:
			"time actions"
			"user user";
	}

	.tsc-shout-msg-time {
		grid-area: time;
	}

	.tsc-shout-msg-user {
		grid-area: user;
	}

	.tsc-shout-msg-actions {
		grid-area: actions;
	}

	.tsc-shout-feed-text,
	.tsc-shoutbox #sbox .tsc-shout-feed-text,
	.tsc-shout-msg-body {
		overflow-wrap: break-word;
	}

	.tsc-shout-picker {
		padding: 0 0.75rem 0.75rem;
		max-height: 40vh;
		overflow-y: auto;
	}
}

/* ── Browse page (torrent list) ── */
.tsc-browse-page {
	width: 100%;
}

.tsc-browse-filter {
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.tsc-browse-form {
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.tsc-browse-cat-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
	gap: 0.75rem;
}

.tsc-browse-cat-grid--collapsed {
	display: none;
}

.tsc-browse-cat-group {
	border: 1px solid rgb(39 39 42 / 0.6);
	border-radius: 0.625rem;
	background: rgb(0 0 0 / 0.35);
	overflow: hidden;
}

.tsc-browse-cat-group-title {
	margin: 0;
	padding: 0.625rem 0.75rem;
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	text-align: center;
	border-bottom: 1px solid rgb(39 39 42 / 0.5);
	background: rgb(24 24 27 / 0.6);
}

.tsc-browse-cat-group-title a {
	display: inline-flex;
	align-items: center;
	gap: 0.375rem;
	color: rgb(228 228 231);
	text-decoration: none;
	transition: color 0.15s ease;
}

.tsc-browse-cat-group-title a:hover {
	color: rgb(251 146 60);
}

.tsc-browse-cat-list {
	list-style: none;
	margin: 0;
	padding: 0.375rem 0;
}

.tsc-browse-cat-item {
	padding: 0.125rem 0.5rem;
}

.tsc-browse-cat-label {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	font-size: 0.75rem;
	cursor: pointer;
}

.tsc-browse-checkbox {
	accent-color: rgb(251 146 60);
	flex-shrink: 0;
}

.tsc-browse-cat-link {
	flex: 1;
	min-width: 0;
	color: rgb(161 161 170);
	text-decoration: none;
	transition: color 0.15s ease;
}

.tsc-browse-cat-link:hover {
	color: rgb(251 146 60);
}

.tsc-browse-cat-count {
	font-size: 0.625rem;
	font-weight: 700;
	color: rgb(113 113 122);
	background: rgb(39 39 42);
	padding: 0.125rem 0.375rem;
	border-radius: 9999px;
	font-variant-numeric: tabular-nums;
}

.tsc-browse-toolbar {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
	padding: 0.875rem;
	border-radius: 0.625rem;
	border: 1px solid rgb(39 39 42 / 0.55);
	background: rgb(9 9 11 / 0.45);
}

.tsc-browse-search-row,
.tsc-browse-sort-row {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
	align-items: flex-end;
}

.tsc-browse-field {
	display: flex;
	flex-direction: column;
	gap: 0.375rem;
	min-width: 0;
}

.tsc-browse-field--grow {
	flex: 1 1 220px;
}

.tsc-browse-field-label {
	display: inline-flex;
	align-items: center;
	gap: 0.375rem;
	font-size: 0.625rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: rgb(113 113 122);
}

.tsc-browse-input,
.tsc-browse-select {
	width: 100%;
	padding: 0.625rem 0.875rem;
	font-size: 0.8125rem;
	color: rgb(244 244 245);
	background: rgb(0 0 0 / 0.5);
	border: 1px solid rgb(63 63 70);
	border-radius: 0.5rem;
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.tsc-browse-input:focus,
.tsc-browse-select:focus {
	outline: none;
	border-color: rgb(251 146 60 / 0.5);
	box-shadow: 0 0 0 2px rgba(251, 146, 60, 0.12);
}

.tsc-browse-actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.65rem;
}

.tsc-browse-live-status {
	font-size: 0.6875rem;
	font-weight: 600;
	color: rgb(161 161 170);
	min-height: 1.25rem;
}

.tsc-browse-live-status.is-loading {
	color: rgb(251 146 60);
}

.tsc-browse-live-status.is-loading::before {
	content: '';
	display: inline-block;
	width: 0.65rem;
	height: 0.65rem;
	margin-right: 0.35rem;
	border: 2px solid rgb(251 146 60 / 0.25);
	border-top-color: rgb(251 146 60);
	border-radius: 50%;
	vertical-align: -0.1em;
	animation: tsc-browse-spin 0.65s linear infinite;
}

@keyframes tsc-browse-spin {
	to { transform: rotate(360deg); }
}

#tsc-browse-live-results {
	position: relative;
	min-height: 4rem;
	transition: opacity 0.15s ease;
}

#tsc-browse-live-results.is-loading {
	opacity: 0.55;
	pointer-events: none;
}

#tsc-mytorrents-live-results {
	position: relative;
	min-height: 4rem;
	transition: opacity 0.15s ease;
}

#tsc-mytorrents-live-results.is-loading {
	opacity: 0.55;
	pointer-events: none;
}

#tsc-havetoseed-live-results,
#tsc-needseeder-live-results {
	position: relative;
	min-height: 4rem;
	transition: opacity 0.15s ease;
}

#tsc-havetoseed-live-results.is-loading,
#tsc-needseeder-live-results.is-loading {
	opacity: 0.55;
	pointer-events: none;
}

.tsc-havetoseed-table-shell,
.tsc-needseeder-table-shell {
	border-radius: 0.75rem;
	border: 1px solid rgb(63 63 70 / 0.55);
	background: rgb(9 9 11 / 0.45);
	overflow: hidden;
}

.tsc-havetoseed-table-wrap,
.tsc-needseeder-table-wrap {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.tsc-havetoseed-table,
.tsc-needseeder-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.8125rem;
	min-width: 48rem;
}

.tsc-needseeder-table {
	min-width: 32rem;
}

.tsc-havetoseed-table thead th,
.tsc-needseeder-table thead th {
	padding: 0.65rem 0.75rem;
	font-size: 0.5625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(113 113 122);
	text-align: left;
	background: rgb(9 9 11 / 0.75);
	border-bottom: 1px solid rgb(63 63 70 / 0.55);
	white-space: nowrap;
}

.tsc-havetoseed-table thead th .tsc-icon,
.tsc-needseeder-table thead th .tsc-icon {
	color: rgb(251 146 60 / 0.85);
	margin-right: 0.2rem;
}

.tsc-havetoseed-table tbody td,
.tsc-needseeder-table tbody td {
	padding: 0.7rem 0.75rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.35);
	color: rgb(212 212 216);
	vertical-align: middle;
}

.tsc-havetoseed-row:last-child td,
.tsc-needseeder-row:last-child td {
	border-bottom: none;
}

.tsc-havetoseed-row:hover td,
.tsc-needseeder-row:hover td {
	background: rgb(24 24 27 / 0.45);
}

.tsc-havetoseed-cat {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 4.5rem;
	padding: 0.2rem 0.45rem;
	border-radius: 0.4rem;
	background: color-mix(in srgb, var(--cat-color, #52525b) 22%, transparent);
	border: 1px solid color-mix(in srgb, var(--cat-color, #52525b) 45%, transparent);
	color: rgb(244 244 245);
	font-size: 0.6875rem;
	font-weight: 700;
}

.tsc-havetoseed-name,
.tsc-needseeder-name {
	color: rgb(228 228 231);
	text-decoration: none;
}

.tsc-havetoseed-name:hover,
.tsc-needseeder-name:hover {
	color: rgb(251 146 60);
	text-decoration: underline;
}

.tsc-havetoseed-date {
	white-space: nowrap;
	font-variant-numeric: tabular-nums;
}

.tsc-havetoseed-traffic {
	white-space: nowrap;
}

.tsc-havetoseed-rate {
	display: block;
	font-size: 0.6875rem;
	color: rgb(113 113 122);
}

.tsc-havetoseed-seedtime--ok {
	color: rgb(74 222 128);
}

.tsc-havetoseed-seedtime--bad {
	color: rgb(248 113 113);
}

.tsc-havetoseed-seeding-dot {
	color: rgb(74 222 128);
}

.tsc-havetoseed-status--ok {
	color: rgb(74 222 128);
}

.tsc-havetoseed-status--bad {
	color: rgb(248 113 113);
}

.tsc-havetoseed-missing {
	color: rgb(251 146 60);
	font-size: 0.75rem;
}

.tsc-havetoseed-deadline {
	white-space: nowrap;
}

.tsc-needseeder-leechers {
	color: rgb(248 113 113);
	font-weight: 700;
}

.tsc-browse-pager {
	margin-bottom: 0.75rem;
}

.tsc-browse-pager--bottom {
	margin-bottom: 0;
	margin-top: 0.75rem;
}

.tsc-browse-cat-group-link {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	color: rgb(251 146 60);
	text-decoration: none;
	font-weight: 700;
}

.tsc-browse-cat-group-link:hover {
	color: rgb(254 215 170);
}

.tsc-browse-submit {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	padding: 0.625rem 1.5rem;
	font-size: 0.8125rem;
	font-weight: 700;
	color: rgb(0 0 0);
	background: linear-gradient(135deg, rgb(251 146 60), rgb(234 88 12));
	border: none;
	border-radius: 0.5rem;
	cursor: pointer;
	transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.tsc-browse-submit:hover {
	transform: translateY(-1px);
	box-shadow: 0 8px 24px rgba(251, 146, 60, 0.35);
}

.tsc-browse-search-banner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0.625rem;
	padding: 0.75rem 0.875rem;
	margin-bottom: 0.75rem;
	border-radius: 0.5rem;
	border: 1px solid rgb(154 52 18 / 0.3);
	background: rgb(9 9 11 / 0.55);
	font-size: 0.8125rem;
	color: rgb(161 161 170);
}

.tsc-browse-search-banner strong {
	color: rgb(251 146 60);
}

.tsc-count-badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 1.75rem;
	padding: 0.125rem 0.5rem;
	font-size: 0.6875rem;
	font-weight: 800;
	color: rgb(0 0 0);
	background: rgb(161 161 170);
	border-radius: 9999px;
	font-variant-numeric: tabular-nums;
}

.tsc-count-badge--orange {
	background: rgb(251 146 60);
}

.tsc-pager {
	margin: 1rem 0;
}

.tsc-pager p {
	text-align: center;
	font-size: 0.75rem;
	color: rgb(161 161 170);
	line-height: 1.8;
	margin: 0.5rem 0;
}

.tsc-pager a {
	color: rgb(212 212 216);
	text-decoration: none;
	transition: color 0.15s ease;
}

.tsc-pager a:hover {
	color: rgb(251 146 60);
}

.tsc-pager b {
	color: rgb(251 146 60);
}

.tsc-empty-state {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	padding: 2.5rem 1.5rem;
	gap: 0.75rem;
}

.tsc-empty-state-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 3.5rem;
	height: 3.5rem;
	border-radius: 50%;
	background: rgb(39 39 42);
	color: rgb(113 113 122);
}

.tsc-icon--lg {
	font-size: 1.5rem;
}

.tsc-empty-state-title {
	margin: 0;
	font-size: 1rem;
	font-weight: 700;
	color: rgb(228 228 231);
}

.tsc-empty-state-text {
	margin: 0;
	max-width: 28rem;
	font-size: 0.8125rem;
	line-height: 1.6;
	color: rgb(113 113 122);
}

.tsc-browse-results-inner {
	padding: 0.75rem 1rem 1rem;
}

.tsc-browse-results {
	margin-top: 0;
	padding: 0;
	border: none;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

.tsc-torrent-results {
	margin-top: 0.5rem;
}

.tsc-torrent-list {
	display: flex;
	flex-direction: column;
	gap: 0.625rem;
	width: 100%;
	min-width: 0;
}

.tsc-torrent-sort-toolbar {
	display: flex;
	flex-wrap: nowrap;
	gap: 0.375rem;
	margin-bottom: 0.75rem;
	padding-bottom: 0.75rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.8);
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none;
}

.tsc-torrent-sort-toolbar::-webkit-scrollbar {
	display: none;
}

.tsc-torrent-sort-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	flex-shrink: 0;
	padding: 0.45rem 0.65rem;
	min-height: 2.25rem;
	font-size: 0.625rem;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: rgb(161 161 170);
	text-decoration: none;
	border-radius: 0.375rem;
	border: 1px solid rgb(63 63 70 / 0.6);
	background: rgb(24 24 27 / 0.8);
	transition: color 0.15s ease, border-color 0.15s ease, background 0.15s ease;
}

.tsc-torrent-sort-btn:hover {
	color: rgb(251 146 60);
	border-color: rgb(251 146 60 / 0.4);
	background: rgb(39 39 42 / 0.9);
}

.tsc-torrent-sort-btn--active {
	color: rgb(251 146 60);
	border-color: rgb(251 146 60 / 0.55);
	background: rgb(251 146 60 / 0.08);
}

.tsc-torrent-bulk-bar {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	margin-bottom: 0.625rem;
	padding: 0.5rem 0.625rem;
	border-radius: 0.5rem;
	background: rgb(24 24 27 / 0.7);
	border: 1px solid rgb(63 63 70 / 0.5);
}

.tsc-torrent-bulk-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.35rem 0.65rem;
	font-size: 0.6875rem;
	font-weight: 600;
	color: rgb(251 146 60);
	background: rgb(251 146 60 / 0.1);
	border: 1px solid rgb(251 146 60 / 0.35);
	border-radius: 0.375rem;
	cursor: pointer;
	transition: background 0.15s ease;
}

.tsc-torrent-bulk-btn:hover {
	background: rgb(251 146 60 / 0.18);
}

.tsc-torrent-bulk-check {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	font-size: 0.6875rem;
	color: rgb(161 161 170);
	cursor: pointer;
}

.tsc-torrent-item {
	display: grid;
	grid-template-columns: 4.5rem minmax(0, 1fr) auto;
	gap: 0.75rem;
	align-items: stretch;
	padding: 0.625rem;
	border-radius: 0.75rem;
	border: 1px solid rgb(63 63 70 / 0.45);
	background: rgb(24 24 27);
	box-shadow: 0 2px 8px rgb(0 0 0 / 0.2);
	min-width: 0;
	content-visibility: auto;
	contain-intrinsic-size: auto 88px;
}

.tsc-torrent-item:hover {
	border-color: rgb(251 146 60 / 0.35);
}

.tsc-torrent-item--highlight {
	border-color: rgb(239 68 68 / 0.45);
	background: rgb(39 24 24);
}

.tsc-torrent-item--deadline {
	border-color: rgb(251 146 60 / 0.35);
}

.tsc-havetoseed-deadline-foot {
	display: inline-flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 0.25rem;
}

.tsc-havetoseed-seeding-dot {
	color: rgb(74 222 128);
}

.tsc-havetoseed-status--ok {
	color: rgb(74 222 128);
}

.tsc-havetoseed-status--bad {
	color: rgb(248 113 113);
}

.tsc-havetoseed-missing {
	color: rgb(251 146 60);
	font-size: 0.75rem;
}

.tsc-torrent-item-cover {
	position: relative;
	flex-shrink: 0;
}

.tsc-torrent-cover-link {
	display: block;
	position: relative;
	border-radius: 0.5rem;
	overflow: hidden;
	aspect-ratio: 2 / 3;
	background: rgb(0 0 0);
}

.tsc-torrent-cover-img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: top;
}

.tsc-torrent-cat-pill {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	display: flex;
	align-items: center;
	gap: 0.2rem;
	padding: 0.15rem 0.25rem;
	font-size: 0.5rem;
	font-weight: 700;
	line-height: 1.2;
	color: rgb(255 255 255);
	text-decoration: none;
	background: color-mix(in srgb, var(--cat-color, #3f3f46) 92%, black);
}

.tsc-torrent-cat-icon {
	width: 0.75rem;
	height: 0.75rem;
	object-fit: contain;
	flex-shrink: 0;
}

.tsc-torrent-cat-pill span {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.tsc-torrent-item-body {
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
	min-width: 0;
}

.tsc-torrent-item-header {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: 0.35rem;
	min-width: 0;
}

.tsc-torrent-flag,
.tsc-flag-unicode {
	width: 1.125rem;
	height: 0.75rem;
	border-radius: 0.125rem;
	flex-shrink: 0;
	margin-top: 0.15rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	font-size: 0.7rem;
	line-height: 1;
}

.tsc-torrent-title {
	flex: 1 1 0;
	min-width: 0;
	margin: 0;
	font-size: 0.8125rem;
	font-weight: 700;
	line-height: 1.35;
}

.tsc-torrent-title a {
	color: rgb(244 244 245);
	text-decoration: none;
	word-break: break-word;
}

.tsc-torrent-title a:hover {
	color: rgb(251 146 60);
}

.tsc-torrent-badges {
	display: flex;
	flex-wrap: wrap;
	gap: 0.25rem;
	width: 100%;
}

.tsc-torrent-badge {
	display: inline-block;
	padding: 0.1rem 0.35rem;
	font-size: 0.5625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	border-radius: 0.25rem;
	background: rgb(63 63 70 / 0.6);
	color: rgb(212 212 216);
}

.tsc-torrent-badge--highlight { background: rgb(239 68 68 / 0.2); color: rgb(252 165 165); }
.tsc-torrent-badge--new { background: rgb(234 179 8 / 0.2); color: rgb(253 224 71); }
.tsc-torrent-badge--gu { background: rgb(239 68 68 / 0.15); color: rgb(252 165 165); }
.tsc-torrent-badge--webseed { background: rgb(13 115 115 / 0.25); color: rgb(94 234 212); }
.tsc-torrent-badge--ou { background: rgb(115 13 30 / 0.25); color: rgb(251 113 133); }
.tsc-torrent-badge--div { background: rgb(115 111 13 / 0.25); color: rgb(250 204 21); }
.tsc-torrent-badge--pilot { background: rgb(255 204 153 / 0.15); color: rgb(255 204 153); }
.tsc-torrent-badge--team { background: rgb(99 102 241 / 0.2); color: rgb(165 180 252); }
.tsc-torrent-badge--busy { background: rgb(239 68 68 / 0.15); color: rgb(252 165 165); }
.tsc-torrent-badge--deadline { background: rgb(251 146 60 / 0.18); color: rgb(253 186 116); }

.tsc-torrent-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 0.3rem;
}

.tsc-torrent-chip {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	padding: 0.2rem 0.45rem;
	font-size: 0.625rem;
	font-weight: 500;
	color: rgb(161 161 170);
	text-decoration: none;
	border-radius: 0.3rem;
	border: 1px solid rgb(63 63 70 / 0.4);
	background: rgb(9 9 11 / 0.5);
	white-space: nowrap;
	transition: color 0.15s ease, border-color 0.15s ease;
}

.tsc-torrent-chip:hover {
	color: rgb(251 146 60);
	border-color: rgb(251 146 60 / 0.35);
}

.tsc-torrent-chip .tsc-icon {
	color: rgb(113 113 122);
}

.tsc-torrent-chip:hover .tsc-icon {
	color: rgb(251 146 60);
}

.tsc-torrent-item-foot {
	display: flex;
	align-items: center;
	gap: 0.35rem;
	font-size: 0.625rem;
	color: rgb(113 113 122);
	margin-top: auto;
}

.tsc-torrent-item-foot .tsc-icon {
	color: rgb(82 82 91);
}

.tsc-torrent-item-actions {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.35rem;
	padding-top: 0.15rem;
}

.tsc-torrent-check input {
	width: 0.875rem;
	height: 0.875rem;
	accent-color: rgb(251 146 60);
	cursor: pointer;
}

.tsc-torrent-action {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2rem;
	height: 2rem;
	border-radius: 0.5rem;
	border: 1px solid rgb(63 63 70 / 0.6);
	background: rgb(24 24 27 / 0.9);
	color: rgb(161 161 170);
	text-decoration: none;
	transition: color 0.15s ease, border-color 0.15s ease, background 0.15s ease, transform 0.15s ease;
}

.tsc-torrent-action:hover {
	color: rgb(251 146 60);
	border-color: rgb(251 146 60 / 0.4);
	background: rgb(39 39 42);
	transform: scale(1.05);
}

.tsc-torrent-action--dl {
	color: rgb(251 146 60);
	border-color: rgb(251 146 60 / 0.35);
	background: rgb(251 146 60 / 0.08);
}

.tsc-torrent-action--disabled {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2rem;
	height: 2rem;
	border-radius: 0.5rem;
	border: 1px solid rgb(63 63 70 / 0.4);
	background: rgb(24 24 27 / 0.5);
	color: rgb(82 82 91);
	opacity: 0.6;
}

@media (max-width: 640px) {
	.tsc-torrent-item {
		grid-template-columns: 3.75rem minmax(0, 1fr) auto;
		gap: 0.5rem;
		padding: 0.625rem;
	}

	.tsc-torrent-sort-btn span {
		display: none;
	}

	.tsc-torrent-meta {
		gap: 0.25rem;
	}

	.tsc-browse-cat-grid {
		grid-template-columns: 1fr;
	}

	.tsc-browse-search-row,
	.tsc-browse-sort-row {
		flex-direction: column;
		align-items: stretch;
	}

	.tsc-browse-field,
	.tsc-browse-field--grow {
		flex: 1 1 100%;
		width: 100%;
	}

	.tsc-browse-submit {
		width: 100%;
		justify-content: center;
	}

	.tsc-index-section-body--browse {
		padding: 0.75rem;
	}

	.tsc-browse-results-inner {
		padding: 0.625rem 0.75rem 0.875rem;
	}
}

@media (max-width: 480px) {
	.tsc-torrent-item {
		grid-template-columns: 3.5rem minmax(0, 1fr);
		grid-template-areas:
			"cover body"
			"actions actions";
	}

	.tsc-torrent-item-cover {
		grid-area: cover;
	}

	.tsc-torrent-item-body {
		grid-area: body;
	}

	.tsc-torrent-item-actions {
		grid-area: actions;
		flex-direction: row;
		justify-content: flex-end;
		width: 100%;
		padding-top: 0.5rem;
		margin-top: 0.25rem;
		border-top: 1px solid rgb(39 39 42 / 0.6);
	}

	.tsc-torrent-chip {
		font-size: 0.5625rem;
		padding: 0.25rem 0.4rem;
	}

	.tsc-torrent-title {
		font-size: 0.75rem;
	}
}

.tsc-page-browse .tsc-pager {
	padding: 0.5rem 0;
}

.tsc-page-browse .tsc-pager p {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0.375rem 0.5rem;
}

/* Browse premium pagination */
.tsc-browse-pagination {
	display: flex;
	flex-direction: column;
	gap: 0.65rem;
	margin: 0.85rem 0;
	padding: 0.75rem 0.85rem;
	border-radius: 0.85rem;
	border: 1px solid rgb(63 63 70 / 0.55);
	background: linear-gradient(160deg, rgb(24 24 27 / 0.88), rgb(9 9 11 / 0.72));
}

.tsc-browse-pagination--top {
	margin-top: 0;
}

.tsc-browse-pagination--bottom {
	margin-bottom: 0;
}

.tsc-browse-pagination-meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.45rem 0.75rem;
	font-size: 0.75rem;
	color: rgb(161 161 170);
}

.tsc-browse-pagination-meta .tsc-icon {
	color: rgb(251 146 60 / 0.9);
}

.tsc-browse-pagination-meta strong {
	color: rgb(254 215 170);
	font-weight: 800;
}

.tsc-browse-pagination-total {
	margin-left: auto;
	padding: 0.15rem 0.5rem;
	border-radius: 999px;
	border: 1px solid rgb(251 146 60 / 0.22);
	background: rgb(251 146 60 / 0.08);
	font-size: 0.6875rem;
	font-weight: 600;
	color: rgb(254 215 170);
}

.tsc-browse-pagination-row {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	align-items: center;
	gap: 0.5rem;
	min-width: 0;
}

.tsc-browse-page-btn,
.tsc-browse-range {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.3rem;
	min-height: 2.15rem;
	padding: 0 0.7rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(9 9 11 / 0.65);
	color: rgb(212 212 216);
	font-size: 0.75rem;
	font-weight: 600;
	text-decoration: none;
	white-space: nowrap;
	transition: border-color 0.15s, background 0.15s, color 0.15s;
}

.tsc-browse-page-btn:hover,
.tsc-browse-range:hover {
	border-color: rgb(251 146 60 / 0.45);
	background: rgb(39 39 42 / 0.85);
	color: rgb(254 215 170);
}

.tsc-browse-page-btn--disabled {
	opacity: 0.4;
	cursor: default;
	pointer-events: none;
}

.tsc-browse-pagination-ranges {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	gap: 0.35rem;
	min-width: 0;
	overflow-x: auto;
	padding: 0.15rem 0;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: thin;
	scrollbar-color: rgb(63 63 70) transparent;
}

.tsc-browse-pagination-ranges::-webkit-scrollbar {
	height: 4px;
}

.tsc-browse-pagination-ranges::-webkit-scrollbar-thumb {
	background: rgb(63 63 70);
	border-radius: 999px;
}

.tsc-browse-range {
	flex-shrink: 0;
	font-size: 0.6875rem;
	font-variant-numeric: tabular-nums;
}

.tsc-browse-range--active {
	border-color: rgb(251 146 60 / 0.55);
	background: linear-gradient(135deg, rgb(251 146 60 / 0.22), rgb(234 88 12 / 0.12));
	color: rgb(254 243 199);
	box-shadow: 0 0 0 1px rgb(251 146 60 / 0.08) inset;
}

.tsc-browse-range--dots {
	border: none;
	background: transparent;
	color: rgb(113 113 122);
	padding: 0 0.15rem;
	min-height: auto;
}

@media (max-width: 767px) {
	.tsc-browse-pagination {
		padding: 0.65rem 0.7rem;
	}

	.tsc-browse-pagination-meta {
		flex-direction: column;
		align-items: flex-start;
	}

	.tsc-browse-pagination-total {
		margin-left: 0;
	}

	.tsc-browse-pagination-row {
		grid-template-columns: 1fr;
		gap: 0.55rem;
	}

	.tsc-browse-page-btn {
		width: 100%;
		justify-content: center;
	}

	.tsc-browse-page-btn span {
		display: inline;
	}

	.tsc-browse-pagination-ranges {
		order: -1;
		flex-wrap: wrap;
		overflow-x: visible;
		justify-content: center;
	}

	.tsc-browse-range {
		flex: 0 1 auto;
	}
}

/* ── Pre-DB (releasedb.php) ── */

.tsc-releasedb-page {
	min-width: 0;
}

.tsc-releasedb-hero {
	position: relative;
	margin-bottom: 1rem;
	padding: clamp(1rem, 3vw, 1.5rem);
	border-radius: 1rem;
	border: 1px solid rgb(251 146 60 / 0.28);
	background:
		radial-gradient(ellipse 80% 60% at 50% -20%, rgb(251 146 60 / 0.12), transparent 60%),
		linear-gradient(160deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.9));
	overflow: hidden;
}

.tsc-releasedb-hero-glow {
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at 85% 15%, rgb(251 146 60 / 0.1), transparent 42%);
	pointer-events: none;
}

.tsc-releasedb-hero-inner {
	position: relative;
}

.tsc-releasedb-hero-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.25rem 0.55rem;
	border-radius: 999px;
	border: 1px solid rgb(251 146 60 / 0.35);
	background: rgb(251 146 60 / 0.1);
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(253 186 116);
	margin-bottom: 0.5rem;
}

.tsc-releasedb-hero-title {
	margin: 0 0 0.35rem;
	font-size: clamp(1.25rem, 3vw, 1.6rem);
	font-weight: 800;
	color: rgb(244 244 245);
}

.tsc-releasedb-hero-sub {
	margin: 0 0 0.75rem;
	font-size: 0.8125rem;
	color: rgb(161 161 170);
	line-height: 1.5;
	max-width: 42rem;
}

.tsc-releasedb-hero-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.tsc-releasedb-chip {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.4rem 0.65rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.45);
	font-size: 0.75rem;
	color: rgb(212 212 216);
}

.tsc-releasedb-chip .tsc-icon {
	color: rgb(251 146 60);
}

.tsc-releasedb-chip strong {
	color: rgb(244 244 245);
	font-weight: 700;
	font-variant-numeric: tabular-nums;
}

.tsc-releasedb-filter {
	padding: 0.25rem 0 0;
}

.tsc-releasedb-form {
	display: flex;
	flex-direction: column;
	gap: 0.85rem;
}

.tsc-releasedb-tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
}

.tsc-releasedb-tab {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	padding: 0.5rem 0.9rem;
	border-radius: 999px;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(24 24 27 / 0.55);
	color: rgb(161 161 170);
	font-size: 0.8125rem;
	font-weight: 700;
	text-decoration: none;
	transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}

.tsc-releasedb-tab:hover {
	border-color: rgb(251 146 60 / 0.45);
	color: rgb(251 146 60);
}

.tsc-releasedb-tab--active {
	border-color: rgb(251 146 60 / 0.55);
	background: rgb(251 146 60 / 0.14);
	color: rgb(251 146 60);
}

.tsc-releasedb-toolbar {
	padding: 0.75rem;
	border-radius: 0.65rem;
	border: 1px solid rgb(39 39 42 / 0.85);
	background: rgb(9 9 11 / 0.45);
}

.tsc-releasedb-source-radios {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
}

.tsc-releasedb-group-banner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0.65rem;
	padding: 0.75rem 0.875rem;
	margin-bottom: 0.75rem;
	border-radius: 0.5rem;
	border: 1px solid rgb(59 130 246 / 0.28);
	background: rgb(9 9 11 / 0.55);
	font-size: 0.8125rem;
	color: rgb(161 161 170);
}

.tsc-releasedb-group-banner strong {
	color: rgb(96 165 250);
}

.tsc-releasedb-group-clear {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	padding: 0.25rem 0.55rem;
	border-radius: 999px;
	border: 1px solid rgb(63 63 70 / 0.65);
	color: rgb(212 212 216);
	text-decoration: none;
	font-size: 0.75rem;
	font-weight: 600;
}

.tsc-releasedb-group-clear:hover {
	border-color: rgb(251 146 60 / 0.45);
	color: rgb(251 146 60);
}

#tsc-releasedb-live-results {
	transition: opacity 0.18s ease;
}

#tsc-releasedb-live-results.is-loading {
	opacity: 0.55;
	pointer-events: none;
}

.tsc-releasedb-list {
	display: flex;
	flex-direction: column;
	gap: 0.65rem;
}

.tsc-releasedb-card {
	display: grid;
	grid-template-columns: auto 1fr auto;
	gap: 0.85rem;
	align-items: center;
	padding: 0.9rem 1rem;
	border-radius: 0.75rem;
	border: 1px solid rgb(39 39 42 / 0.9);
	background: linear-gradient(160deg, rgb(24 24 27 / 0.92), rgb(9 9 11 / 0.88));
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.tsc-releasedb-card:hover {
	border-color: rgb(63 63 70);
	box-shadow: 0 8px 28px -16px rgba(0, 0, 0, 0.65);
}

.tsc-releasedb-card--uploaded {
	border-color: rgb(34 197 94 / 0.28);
}

.tsc-releasedb-card--uploaded:hover {
	border-color: rgb(34 197 94 / 0.45);
}

.tsc-releasedb-card-type {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0.25rem;
	min-width: 3.5rem;
	padding: 0.45rem 0.35rem;
	border-radius: 0.55rem;
	background: rgb(39 39 42 / 0.65);
	color: rgb(161 161 170);
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.tsc-releasedb-card-type .tsc-icon {
	color: rgb(251 146 60);
}

.tsc-releasedb-card-main {
	min-width: 0;
}

.tsc-releasedb-card-head {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.45rem;
	margin-bottom: 0.35rem;
}

.tsc-releasedb-card-badges {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem;
}

.tsc-releasedb-source,
.tsc-releasedb-uploaded-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	padding: 0.15rem 0.45rem;
	border-radius: 999px;
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.03em;
}

.tsc-releasedb-source--scene {
	background: rgb(168 85 247 / 0.14);
	color: rgb(192 132 252);
	border: 1px solid rgb(168 85 247 / 0.25);
}

.tsc-releasedb-source--p2p {
	background: rgb(59 130 246 / 0.14);
	color: rgb(96 165 250);
	border: 1px solid rgb(59 130 246 / 0.25);
}

.tsc-releasedb-uploaded-badge {
	background: rgb(34 197 94 / 0.14);
	color: rgb(74 222 128);
	border: 1px solid rgb(34 197 94 / 0.25);
}

.tsc-releasedb-card-time {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	font-size: 0.75rem;
	color: rgb(113 113 122);
	white-space: nowrap;
}

.tsc-releasedb-card-name {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 0.45rem;
	margin-bottom: 0.35rem;
}

.tsc-releasedb-card-name a,
.tsc-releasedb-card-name-text {
	font-size: 0.875rem;
	font-weight: 700;
	color: rgb(244 244 245);
	text-decoration: none;
	word-break: break-word;
}

.tsc-releasedb-card--uploaded .tsc-releasedb-card-name a {
	color: rgb(74 222 128);
}

.tsc-releasedb-card-name a:hover {
	color: rgb(251 146 60);
	text-decoration: underline;
}

.tsc-releasedb-card-name-text {
	font-style: italic;
	font-weight: 500;
	color: rgb(212 212 216);
}

.tsc-releasedb-card-size {
	font-size: 0.75rem;
	font-weight: 700;
	color: rgb(161 161 170);
	font-variant-numeric: tabular-nums;
}

.tsc-releasedb-card-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
}

.tsc-releasedb-group-link {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	font-size: 0.75rem;
	font-weight: 600;
	color: rgb(161 161 170);
	text-decoration: none;
}

.tsc-releasedb-group-link:hover {
	color: rgb(251 146 60);
}

.tsc-releasedb-card-action {
	display: flex;
	align-items: center;
}

.tsc-releasedb-action-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	padding: 0.5rem 0.8rem;
	border-radius: 0.55rem;
	font-size: 0.75rem;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
	transition: filter 0.15s ease, transform 0.15s ease;
}

.tsc-releasedb-action-btn:hover {
	filter: brightness(1.08);
	transform: translateY(-1px);
}

.tsc-releasedb-action-btn--request {
	background: linear-gradient(135deg, rgb(59 130 246), rgb(37 99 235));
	color: rgb(255 255 255);
	box-shadow: 0 6px 18px rgb(59 130 246 / 0.25);
}

.tsc-releasedb-action-btn--download {
	background: linear-gradient(135deg, rgb(34 197 94), rgb(22 163 74));
	color: rgb(255 255 255);
	box-shadow: 0 6px 18px rgb(34 197 94 / 0.25);
}

@media (max-width: 767px) {
	.tsc-releasedb-card {
		grid-template-columns: auto 1fr;
		grid-template-areas:
			'type main'
			'action action';
	}

	.tsc-releasedb-card-type {
		grid-area: type;
	}

	.tsc-releasedb-card-main {
		grid-area: main;
	}

	.tsc-releasedb-card-action {
		grid-area: action;
		justify-content: stretch;
		padding-top: 0.35rem;
		border-top: 1px solid rgb(39 39 42 / 0.85);
	}

	.tsc-releasedb-action-btn {
		flex: 1;
		justify-content: center;
	}
}


@media (max-width: 480px) {
	.tsc-browse-page-btn span {
		font-size: 0.6875rem;
	}
}

/* ── Upload page — masterpiece wizard ── */

.tsc-index-block--upload {
	border-color: rgb(251 146 60 / 0.32);
	box-shadow:
		0 0 0 1px rgb(251 146 60 / 0.08) inset,
		0 16px 40px rgb(0 0 0 / 0.42);
}

.tsc-index-section-body--upload {
	padding: clamp(0.75rem, 2vw, 1.15rem);
	min-width: 0;
}

.tsc-page-upload .maincontent > br {
	display: none;
}

.tsc-upload-page {
	--tsc-upload-accent: rgb(251 146 60);
	--tsc-upload-accent-soft: rgb(251 146 60 / 0.14);
	--tsc-upload-glow: rgb(251 146 60 / 0.22);
}

.tsc-upload-hero {
	position: relative;
	margin-bottom: 1rem;
	padding: clamp(1rem, 3vw, 1.5rem);
	border-radius: 1rem;
	border: 1px solid rgb(251 146 60 / 0.28);
	background:
		radial-gradient(ellipse 75% 55% at 8% 0%, rgb(251 146 60 / 0.18), transparent 58%),
		linear-gradient(155deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.88));
	box-shadow: 0 20px 50px rgb(0 0 0 / 0.35), inset 0 1px 0 rgb(255 255 255 / 0.04);
	overflow: hidden;
}

.tsc-upload-hero-glow {
	position: absolute;
	inset: -25% -10% auto;
	height: 65%;
	background: radial-gradient(ellipse at center, var(--tsc-upload-glow), transparent 70%);
	pointer-events: none;
}

.tsc-upload-hero-inner {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	gap: 0.55rem;
	min-width: 0;
}

.tsc-upload-hero-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	align-self: flex-start;
	padding: 0.25rem 0.6rem;
	border-radius: 999px;
	border: 1px solid rgb(251 146 60 / 0.35);
	background: rgb(251 146 60 / 0.1);
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: rgb(254 215 170);
}

.tsc-upload-hero-title {
	margin: 0;
	font-size: clamp(1.35rem, 3vw, 1.85rem);
	font-weight: 800;
	color: rgb(244 244 245);
}

.tsc-upload-hero-sub {
	margin: 0;
	font-size: 0.8125rem;
	color: rgb(161 161 170);
	line-height: 1.5;
	max-width: 42rem;
}

.tsc-upload-hero-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
}

.tsc-upload-hero-chip {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	padding: 0.25rem 0.55rem;
	border-radius: 999px;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(24 24 27 / 0.65);
	font-size: 0.625rem;
	font-weight: 600;
	color: rgb(161 161 170);
}

.tsc-upload-hero-chip--link {
	text-decoration: none;
	color: rgb(212 212 216);
	transition: border-color 0.15s, color 0.15s;
}

.tsc-upload-hero-chip--link:hover {
	border-color: rgb(251 146 60 / 0.45);
	color: rgb(251 146 60);
}

.tsc-upload-announce {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.45rem 0.65rem;
	margin-top: 0.35rem;
	padding: 0.55rem 0.75rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.55);
}

.tsc-upload-announce-label {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(113 113 122);
}

.tsc-upload-announce-url {
	flex: 1;
	min-width: 0;
	font-size: 0.75rem;
	color: rgb(96 165 250);
	word-break: break-all;
}

.tsc-upload-announce-copy {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.75rem;
	height: 1.75rem;
	border-radius: 0.4rem;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(24 24 27 / 0.75);
	color: rgb(161 161 170);
	cursor: pointer;
	transition: border-color 0.15s, color 0.15s, background 0.15s;
}

.tsc-upload-announce-copy:hover,
.tsc-upload-announce-copy--ok {
	border-color: rgb(251 146 60 / 0.5);
	color: rgb(251 146 60);
	background: rgb(251 146 60 / 0.1);
}

.tsc-upload-notices {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	margin-bottom: 1rem;
}

.tsc-upload-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 1rem;
	align-items: start;
}

.tsc-upload-page .tsc-upload-layout {
	grid-template-columns: minmax(0, 1fr);
}

.tsc-upload-quick-tips {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: 0.55rem 1.25rem;
	margin: 0 0 1rem;
	padding: 0.7rem 0.9rem;
	border-radius: 0.65rem;
	border: 1px solid rgb(251 146 60 / 0.28);
	background:
		linear-gradient(135deg, rgb(251 146 60 / 0.08), rgb(9 9 11 / 0.45)),
		rgb(24 24 27 / 0.55);
}

.tsc-upload-quick-tips-label {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	flex-shrink: 0;
	font-size: 0.65rem;
	font-weight: 800;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: rgb(251 146 60);
}

.tsc-upload-quick-tips-list {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem 1.25rem;
	margin: 0;
	padding: 0;
	list-style: none;
	flex: 1 1 12rem;
	min-width: 0;
}

.tsc-upload-quick-tips-list li {
	font-size: 0.75rem;
	line-height: 1.45;
	color: rgb(161 161 170);
}

.tsc-upload-quick-tips-list li::before {
	content: '•';
	margin-right: 0.4rem;
	color: rgb(251 146 60 / 0.75);
}

.tsc-upload-progress-panel {
	margin: 0.25rem 0 1rem;
}

.tsc-upload-progress-panel .tsc-upload-checklist {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(9.5rem, 1fr));
	gap: 0.4rem 0.75rem;
}

.tsc-upload-main {
	min-width: 0;
}

.tsc-upload-sidebar {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
	position: sticky;
	top: 1rem;
}

.tsc-upload-sidebar-card {
	padding: 0.85rem 1rem;
	border-radius: 0.75rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.55);
}

.tsc-upload-sidebar-title {
	display: flex;
	align-items: center;
	gap: 0.35rem;
	margin: 0 0 0.65rem;
	font-size: 0.6875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: rgb(161 161 170);
}

.tsc-upload-progress-bar {
	height: 0.35rem;
	border-radius: 999px;
	background: rgb(39 39 42 / 0.75);
	overflow: hidden;
	margin-bottom: 0.35rem;
}

.tsc-upload-progress-fill {
	display: block;
	height: 100%;
	width: 0%;
	border-radius: 999px;
	background: linear-gradient(90deg, rgb(251 146 60), rgb(234 88 12));
	transition: width 0.25s ease;
}

.tsc-upload-progress-label {
	margin: 0 0 0.65rem;
	font-size: 0.75rem;
	font-weight: 600;
	color: rgb(212 212 216);
}

.tsc-upload-checklist {
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
}

.tsc-upload-check-item {
	display: flex;
	align-items: center;
	gap: 0.45rem;
	font-size: 0.75rem;
	color: rgb(113 113 122);
	transition: color 0.15s;
}

.tsc-upload-check-item[hidden] {
	display: none !important;
}

.tsc-upload-check-item--optional {
	opacity: 0.75;
}

.tsc-upload-check-icon {
	width: 1rem;
	height: 1rem;
	border-radius: 999px;
	border: 1px solid rgb(63 63 70 / 0.75);
	background: rgb(24 24 27 / 0.65);
	flex-shrink: 0;
	position: relative;
}

.tsc-upload-check-item--done {
	color: rgb(212 212 216);
}

.tsc-upload-check-item--done .tsc-upload-check-icon {
	border-color: rgb(52 211 153 / 0.55);
	background: rgb(52 211 153 / 0.15);
}

.tsc-upload-check-item--done .tsc-upload-check-icon::after {
	content: '';
	position: absolute;
	inset: 0.2rem;
	border-radius: 999px;
	background: rgb(52 211 153);
}

.tsc-upload-tips {
	margin: 0;
	padding-left: 1rem;
	font-size: 0.6875rem;
	line-height: 1.55;
	color: rgb(113 113 122);
}

.tsc-upload-step {
	margin-bottom: 1rem;
	border-radius: 0.75rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.4);
	overflow: hidden;
}

.tsc-index-block--upload:has(.tsc-cat-picker.is-open),
.tsc-upload-step:has(.tsc-cat-picker.is-open) {
	overflow: visible;
}

.tsc-cat-picker.is-open {
	z-index: 10060;
}

.tsc-upload-step-head {
	display: flex;
	align-items: center;
	gap: 0.65rem;
	padding: 0.7rem 0.9rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.55);
	background: linear-gradient(180deg, rgb(24 24 27 / 0.85), rgb(9 9 11 / 0.7));
}

.tsc-upload-step-num {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.65rem;
	height: 1.65rem;
	border-radius: 999px;
	border: 1px solid rgb(251 146 60 / 0.45);
	background: rgb(251 146 60 / 0.12);
	font-size: 0.75rem;
	font-weight: 800;
	color: rgb(251 146 60);
	flex-shrink: 0;
}

.tsc-upload-step-meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.4rem;
	min-width: 0;
}

.tsc-upload-step-title {
	margin: 0;
	font-size: 0.875rem;
	font-weight: 700;
	color: rgb(228 228 231);
}

.tsc-upload-step-badge {
	padding: 0.12rem 0.4rem;
	border-radius: 999px;
	font-size: 0.5625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
}

.tsc-upload-step-badge--req {
	background: rgb(248 113 113 / 0.15);
	color: rgb(252 165 165);
	border: 1px solid rgb(248 113 113 / 0.35);
}

.tsc-upload-step-badge--opt {
	background: rgb(63 63 70 / 0.45);
	color: rgb(161 161 170);
	border: 1px solid rgb(63 63 70 / 0.65);
}

.tsc-upload-step-body {
	padding: 0.35rem 0.9rem 0.65rem;
}

.tsc-upload-notice {
	display: flex;
	gap: 0.75rem;
	padding: 0.75rem 1rem;
	border-radius: 0.625rem;
	border: 1px solid rgb(63 63 70 / 0.55);
	background: rgb(9 9 11 / 0.45);
	font-size: 0.75rem;
	line-height: 1.55;
	color: rgb(212 212 216);
}

.tsc-upload-notice--info {
	border-color: rgb(96 165 250 / 0.35);
	background: rgb(30 58 138 / 0.15);
}

.tsc-upload-notice--info .tsc-upload-notice-icon {
	color: rgb(96 165 250);
}

.tsc-upload-notice--rules {
	border-color: rgb(251 146 60 / 0.4);
	background: rgb(251 146 60 / 0.08);
}

.tsc-upload-notice--rules .tsc-upload-notice-icon {
	color: rgb(251 146 60);
}

.tsc-upload-notice--warning {
	border-color: rgb(239 68 68 / 0.35);
	background: rgb(39 24 24 / 0.5);
}

.tsc-upload-notice--warning .tsc-upload-notice-icon {
	color: rgb(252 165 165);
}

.tsc-upload-notice-icon {
	flex-shrink: 0;
	padding-top: 0.1rem;
}

.tsc-upload-notice-body a {
	color: rgb(251 146 60);
	text-decoration: none;
}

.tsc-upload-notice-body a:hover {
	text-decoration: underline;
}

.tsc-upload-notice-body strong {
	color: rgb(251 146 60);
	font-weight: 700;
}

.tsc-upload-form {
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
}

.tsc-upload-form--invalid .tsc-upload-step:first-of-type {
	animation: tsc-upload-shake 0.4s ease;
}

@keyframes tsc-upload-shake {
	0%, 100% { transform: translateX(0); }
	25% { transform: translateX(-4px); }
	75% { transform: translateX(4px); }
}

.tsc-upload-row {
	display: grid;
	grid-template-columns: minmax(7rem, 10rem) minmax(0, 1fr);
	gap: 0.75rem 1rem;
	align-items: start;
	padding: 0.65rem 0;
	border-bottom: 1px solid rgb(39 39 42 / 0.35);
}

.tsc-upload-row[hidden] {
	display: none !important;
}

.tsc-upload-row:last-of-type {
	border-bottom: none;
}

.tsc-upload-row--full {
	grid-template-columns: 1fr;
}

.tsc-upload-row--full .tsc-upload-label {
	padding-top: 0;
}

.tsc-upload-editor-block {
	display: flex;
	flex-direction: column;
	gap: 0.55rem;
	width: 100%;
}

.tsc-upload-editor-block .tsc-markdown-editor {
	border-radius: 0.55rem;
	overflow: hidden;
	border: 1px solid rgb(63 63 70 / 0.55);
}

.tsc-upload-editor-block .tsc-markdown-editor__workspace {
	min-height: 18rem;
}

.tsc-upload-row:has(.tsc-upload-editor-block) {
	align-items: start;
}

.tsc-upload-row:has(.tsc-upload-editor-block) .tsc-upload-label {
	align-self: start;
	padding-top: 0.55rem;
}

.tsc-upload-label {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 0.35rem;
	font-size: 0.6875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: rgb(161 161 170);
	padding-top: 0.45rem;
}

.tsc-upload-field-badge {
	font-size: 0.5625rem;
	font-weight: 700;
	padding: 0.1rem 0.3rem;
	border-radius: 999px;
}

.tsc-upload-field-badge--req {
	color: rgb(252 165 165);
	background: rgb(248 113 113 / 0.15);
}

.tsc-upload-field-badge--opt {
	color: rgb(113 113 122);
	background: rgb(39 39 42 / 0.65);
}

.tsc-upload-field {
	font-size: 0.8125rem;
	color: rgb(212 212 216);
	min-width: 0;
}

.tsc-upload-dropzone {
	position: relative;
	border: 2px dashed rgb(63 63 70 / 0.75);
	border-radius: 0.75rem;
	padding: 1.25rem 1rem;
	background: rgb(9 9 11 / 0.45);
	cursor: pointer;
	transition: border-color 0.15s, background 0.15s;
}

.tsc-upload-dropzone--hover,
.tsc-upload-dropzone:hover {
	border-color: rgb(251 146 60 / 0.55);
	background: rgb(251 146 60 / 0.06);
}

.tsc-upload-dropzone--ready {
	border-color: rgb(52 211 153 / 0.55);
	background: rgb(52 211 153 / 0.06);
}

.tsc-upload-dropzone-input {
	position: absolute;
	inset: 0;
	z-index: 2;
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	opacity: 0;
	cursor: pointer;
}

.tsc-upload-dropzone-inner {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.35rem;
	text-align: center;
	position: relative;
	z-index: 1;
	pointer-events: none;
}

.tsc-upload-dropzone-icon {
	color: rgb(251 146 60);
	opacity: 0.85;
}

.tsc-upload-dropzone-label {
	font-size: 0.8125rem;
	font-weight: 700;
	color: rgb(228 228 231);
}

.tsc-upload-dropzone-hint {
	font-size: 0.6875rem;
	color: rgb(113 113 122);
}

.tsc-upload-dropzone-file {
	font-size: 0.75rem;
	font-weight: 600;
	color: rgb(52 211 153);
	max-width: 100%;
	word-break: break-all;
}

.tsc-upload-file-hidden {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
}

.tsc-upload-duplicate-warn {
	display: flex;
	align-items: center;
	gap: 0.35rem;
	margin-top: 0.45rem;
	padding: 0.45rem 0.65rem;
	border-radius: 0.45rem;
	border: 1px solid rgb(248 113 113 / 0.4);
	background: rgb(248 113 113 / 0.1);
	font-size: 0.75rem;
	font-weight: 600;
	color: rgb(252 165 165);
}

.tsc-upload-duplicate-warn[hidden] {
	display: none !important;
}

.tsc-upload-input,
.tsc-upload-textarea,
.tsc-upload-select,
.tsc-upload-file {
	width: 100%;
	max-width: 100%;
	padding: 0.5rem 0.7rem;
	font-size: 0.8125rem;
	color: rgb(228 228 231);
	background: rgb(9 9 11);
	border: 1px solid rgb(63 63 70);
	border-radius: 0.5rem;
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
	box-sizing: border-box;
}

.tsc-upload-input:focus,
.tsc-upload-textarea:focus,
.tsc-upload-select:focus,
.tsc-upload-file:focus {
	outline: none;
	border-color: rgb(251 146 60 / 0.55);
	box-shadow: 0 0 0 2px rgb(251 146 60 / 0.15);
}

.tsc-upload-textarea {
	min-height: 10rem;
	resize: vertical;
	line-height: 1.5;
	font-family: inherit;
}

.tsc-upload-file {
	padding: 0.35rem 0.5rem;
}

.tsc-upload-hint {
	margin: 0.4rem 0 0;
	font-size: 0.6875rem;
	line-height: 1.5;
	color: rgb(113 113 122);
}

.tsc-upload-hint a {
	color: rgb(251 146 60);
	text-decoration: none;
}

.tsc-upload-hint a:hover {
	text-decoration: underline;
}

.tsc-upload-hint strong {
	color: rgb(212 212 216);
}

.tsc-upload-divider {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.4rem;
	margin: 0.5rem 0 0.15rem;
	padding: 0.45rem 0.75rem;
	font-size: 0.6875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	color: rgb(161 161 170);
	border-radius: 0.5rem;
	border: 1px solid rgb(39 39 42 / 0.6);
	background: rgb(9 9 11 / 0.45);
}

.tsc-upload-radio-group {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem 0.5rem;
}

.tsc-upload-radio {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	font-size: 0.75rem;
	color: rgb(212 212 216);
	cursor: pointer;
	padding: 0.3rem 0.55rem;
	border-radius: 0.375rem;
	border: 1px solid rgb(63 63 70 / 0.5);
	background: rgb(24 24 27 / 0.6);
	transition: border-color 0.15s ease, background 0.15s ease;
}

.tsc-upload-radio:hover {
	border-color: rgb(251 146 60 / 0.35);
}

.tsc-upload-radio input {
	accent-color: rgb(251 146 60);
	margin: 0;
}

.tsc-upload-checkbox {
	display: flex;
	align-items: flex-start;
	gap: 0.4rem;
	margin-top: 0.5rem;
	font-size: 0.75rem;
	color: rgb(212 212 216);
	cursor: pointer;
}

.tsc-upload-checkbox input {
	accent-color: rgb(251 146 60);
	margin-top: 0.15rem;
	flex-shrink: 0;
}

.tsc-upload-pic-grid {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}

.tsc-upload-pic-option {
	display: grid;
	grid-template-columns: auto 1fr;
	grid-template-rows: auto auto;
	gap: 0.35rem 0.65rem;
	align-items: center;
	padding: 0.65rem 0.75rem;
	border-radius: 0.5rem;
	border: 1px solid rgb(39 39 42 / 0.6);
	background: rgb(9 9 11 / 0.35);
	cursor: pointer;
	transition: border-color 0.15s ease, background 0.15s ease;
}

.tsc-upload-pic-option:hover,
.tsc-upload-pic-option--active {
	border-color: rgb(251 146 60 / 0.4);
	background: rgb(251 146 60 / 0.06);
}

.tsc-upload-pic-option input[type="radio"] {
	grid-row: 1 / span 2;
	accent-color: rgb(251 146 60);
}

.tsc-upload-pic-option-label {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	font-size: 0.75rem;
	font-weight: 600;
	color: rgb(212 212 216);
}

.tsc-upload-pic-option .tsc-upload-input,
.tsc-upload-pic-option .tsc-upload-file {
	grid-column: 2;
}

.tsc-upload-pic-option--info .tsc-upload-hint {
	grid-column: 2;
	margin: 0;
}

.tsc-upload-actions {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.45rem;
	padding-top: 1rem;
	margin-top: 0.5rem;
	border-top: 1px solid rgb(39 39 42 / 0.6);
}

.tsc-upload-submit {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	padding: 0.75rem 2rem;
	font-size: 0.875rem;
	font-weight: 700;
	color: rgb(0 0 0);
	background: linear-gradient(135deg, rgb(251 146 60), rgb(234 88 12));
	border: 1px solid rgb(251 146 60 / 0.6);
	border-radius: 0.6rem;
	cursor: pointer;
	transition: filter 0.15s ease, transform 0.1s ease, box-shadow 0.15s;
	box-shadow: 0 8px 24px rgb(251 146 60 / 0.25);
}

.tsc-upload-submit:hover {
	filter: brightness(1.08);
	box-shadow: 0 10px 28px rgb(251 146 60 / 0.35);
}

.tsc-upload-submit:active {
	transform: scale(0.98);
}

.tsc-upload-actions-hint {
	margin: 0;
	font-size: 0.6875rem;
	color: rgb(113 113 122);
}

.tsc-upload-sticky {
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 40;
	padding: 0.55rem 0.75rem calc(0.55rem + env(safe-area-inset-bottom, 0px));
	background: linear-gradient(180deg, transparent, rgb(9 9 11 / 0.95) 25%);
	transform: translateY(110%);
	transition: transform 0.2s ease;
	pointer-events: none;
}

.tsc-upload-sticky--visible {
	transform: translateY(0);
	pointer-events: auto;
}

.tsc-upload-sticky-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	padding: 0.55rem 0.75rem;
	border-radius: 0.65rem;
	border: 1px solid rgb(251 146 60 / 0.35);
	background: rgb(24 24 27 / 0.95);
	box-shadow: 0 -8px 30px rgb(0 0 0 / 0.4);
}

.tsc-upload-sticky-pct {
	font-size: 0.875rem;
	font-weight: 800;
	color: rgb(251 146 60);
	min-width: 2.5rem;
}

.tsc-upload-sticky-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.5rem 1rem;
	border-radius: 0.5rem;
	border: 1px solid rgb(251 146 60 / 0.55);
	background: linear-gradient(135deg, rgb(251 146 60), rgb(234 88 12));
	color: rgb(0 0 0);
	font-size: 0.75rem;
	font-weight: 700;
	cursor: pointer;
}

@media (max-width: 1023px) {
	.tsc-upload-progress-panel .tsc-upload-checklist {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	.tsc-upload-row {
		grid-template-columns: 1fr;
		gap: 0.35rem;
	}

	.tsc-upload-label {
		padding-top: 0;
	}

	.tsc-upload-pic-option {
		grid-template-columns: auto 1fr;
	}

	.tsc-upload-hero-chips {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.tsc-upload-checklist {
		grid-template-columns: 1fr;
	}

	.tsc-upload-step-body {
		padding-left: 0.65rem;
		padding-right: 0.65rem;
	}
}

@media (max-width: 480px) {
	.tsc-upload-hero-chips {
		grid-template-columns: 1fr;
	}
}

/* ── Torrent edit page (edit.php) ── */
.tsc-page-edit .maincontent > br,
.tsc-edit-page .maincontent > br {
	display: none;
}

.tsc-edit-page {
	--tsc-edit-danger: rgb(248 113 113);
	--tsc-edit-danger-soft: rgb(248 113 113 / 0.12);
}

.tsc-edit-page .tsc-upload-layout {
	grid-template-columns: 1fr;
}

.tsc-edit-hero-tips {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr));
	gap: 0.65rem 1rem;
	margin: 0 0 1rem;
	padding: 0.7rem 0.9rem;
	border-radius: 0.65rem;
	border: 1px solid rgb(63 63 70 / 0.55);
	background: rgb(24 24 27 / 0.55);
}

.tsc-edit-hero-tips-block {
	min-width: 0;
}

.tsc-edit-hero-tips-label {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	margin-bottom: 0.4rem;
	font-size: 0.65rem;
	font-weight: 800;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: rgb(251 146 60);
}

.tsc-edit-hero-tips-list {
	margin: 0;
	padding: 0 0 0 1.1rem;
	font-size: 0.75rem;
	line-height: 1.55;
	color: rgb(161 161 170);
}

.tsc-edit-hero-tips-list li {
	margin: 0.15rem 0;
}

.tsc-edit-editor-block {
	display: flex;
	flex-direction: column;
	gap: 0.55rem;
	width: 100%;
}

.tsc-edit-editor-block .tsc-markdown-editor {
	border-radius: 0.55rem;
	overflow: hidden;
	border: 1px solid rgb(63 63 70 / 0.55);
}

.tsc-edit-editor-block .tsc-markdown-editor__workspace {
	min-height: 18rem;
}

.tsc-edit-conditional {
	margin-top: 0.55rem;
}

.tsc-edit-conditional[hidden] {
	display: none !important;
}

.tsc-upload-actions.tsc-edit-actions {
	flex-direction: row;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-start;
}

.tsc-upload-live-status {
	margin: 0 0 1rem;
}

.tsc-upload-live-status-card {
	padding: 1rem 1.1rem;
	border-radius: 0.75rem;
	border: 1px solid rgb(251 146 60 / 0.35);
	background:
		linear-gradient(135deg, rgb(251 146 60 / 0.1), rgb(9 9 11 / 0.75)),
		rgb(24 24 27 / 0.85);
	box-shadow: 0 12px 32px rgb(0 0 0 / 0.25);
}

.tsc-upload-live-status--success .tsc-upload-live-status-card {
	border-color: rgb(52 211 153 / 0.45);
	background:
		linear-gradient(135deg, rgb(52 211 153 / 0.12), rgb(9 9 11 / 0.75)),
		rgb(24 24 27 / 0.85);
}

.tsc-upload-live-status--error .tsc-upload-live-status-card {
	border-color: rgb(248 113 113 / 0.45);
	background:
		linear-gradient(135deg, rgb(248 113 113 / 0.1), rgb(9 9 11 / 0.75)),
		rgb(24 24 27 / 0.85);
}

.tsc-upload-live-status-head {
	display: flex;
	align-items: flex-start;
	gap: 0.75rem;
	margin-bottom: 0.85rem;
}

.tsc-upload-live-status-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2rem;
	height: 2rem;
	border-radius: 999px;
	background: rgb(251 146 60 / 0.15);
	color: rgb(251 146 60);
	flex-shrink: 0;
}

.tsc-upload-live-status--success .tsc-upload-live-status-icon {
	background: rgb(52 211 153 / 0.15);
	color: rgb(52 211 153);
}

.tsc-upload-live-status--error .tsc-upload-live-status-icon {
	background: rgb(248 113 113 / 0.15);
	color: rgb(248 113 113);
}

.tsc-upload-live-spin {
	animation: tsc-upload-spin 0.9s linear infinite;
}

@keyframes tsc-upload-spin {
	to { transform: rotate(360deg); }
}

.tsc-upload-live-status-title {
	margin: 0;
	font-size: 0.95rem;
	font-weight: 700;
	color: rgb(244 244 245);
}

.tsc-upload-live-status-sub {
	margin: 0.2rem 0 0;
	font-size: 0.78rem;
	color: rgb(161 161 170);
}

.tsc-upload-live-steps {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem 0.5rem;
	margin-bottom: 0.5rem;
}

.tsc-upload-live-step {
	padding: 0.2rem 0.55rem;
	border-radius: 999px;
	border: 1px solid rgb(63 63 70 / 0.65);
	font-size: 0.65rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: rgb(113 113 122);
}

.tsc-upload-live-step.is-active {
	border-color: rgb(251 146 60 / 0.55);
	color: rgb(251 146 60);
	background: rgb(251 146 60 / 0.1);
}

.tsc-upload-live-step.is-done {
	border-color: rgb(52 211 153 / 0.45);
	color: rgb(52 211 153);
	background: rgb(52 211 153 / 0.08);
}

.tsc-upload-live-result-msg {
	margin: 0 0 0.5rem;
	font-size: 0.82rem;
	color: rgb(212 212 216);
}

.tsc-upload-live-warnings {
	margin: 0 0 0.65rem;
	padding-left: 1.1rem;
	font-size: 0.75rem;
	color: rgb(251 191 36);
}

.tsc-upload-live-hint {
	margin: 0 0 0.75rem;
	font-size: 0.75rem;
	line-height: 1.5;
	color: rgb(161 161 170);
}

.tsc-upload-live-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.tsc-upload-live-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0.45rem 0.85rem;
	border-radius: 0.5rem;
	font-size: 0.75rem;
	font-weight: 700;
	cursor: pointer;
	text-decoration: none;
	border: 1px solid transparent;
}

.tsc-upload-live-btn--primary {
	background: linear-gradient(135deg, rgb(251 146 60), rgb(234 88 12));
	color: rgb(0 0 0);
	border-color: rgb(251 146 60 / 0.55);
}

.tsc-upload-live-btn--ghost {
	background: rgb(39 39 42 / 0.55);
	color: rgb(212 212 216);
	border-color: rgb(63 63 70 / 0.75);
}

.tsc-edit-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.55rem;
	align-items: center;
}

.tsc-edit-reset {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.55rem 0.9rem;
	border-radius: 0.5rem;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(39 39 42 / 0.55);
	color: rgb(161 161 170);
	font-size: 0.75rem;
	font-weight: 700;
	cursor: pointer;
}

.tsc-edit-reset:hover {
	color: rgb(228 228 231);
	border-color: rgb(113 113 122);
}

.tsc-edit-back-link {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	font-size: 0.75rem;
	font-weight: 700;
	color: rgb(161 161 170);
	text-decoration: none;
}

.tsc-edit-back-link:hover {
	color: rgb(251 146 60);
}

.tsc-edit-delete-zone {
	margin-top: 1.25rem;
	padding: 1rem;
	border-radius: 0.75rem;
	border: 1px solid rgb(239 68 68 / 0.35);
	background: linear-gradient(160deg, rgb(24 24 27 / 0.85), rgb(9 9 11 / 0.65));
}

.tsc-edit-delete-head {
	display: flex;
	align-items: flex-start;
	gap: 0.65rem;
	margin-bottom: 0.85rem;
}

.tsc-edit-delete-head .tsc-icon {
	color: var(--tsc-edit-danger);
	flex-shrink: 0;
	margin-top: 0.15rem;
}

.tsc-edit-delete-title {
	margin: 0 0 0.2rem;
	font-size: 0.95rem;
	font-weight: 800;
	color: rgb(254 202 202);
}

.tsc-edit-delete-sub {
	margin: 0;
	font-size: 0.75rem;
	color: rgb(161 161 170);
}

.tsc-edit-delete-reasons {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}

.tsc-edit-delete-reason {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
	padding: 0.55rem 0.65rem;
	border-radius: 0.5rem;
	border: 1px solid rgb(63 63 70 / 0.45);
	background: rgb(9 9 11 / 0.35);
}

.tsc-edit-delete-reason--active {
	border-color: rgb(239 68 68 / 0.45);
	background: rgb(239 68 68 / 0.08);
}

.tsc-edit-delete-reason-head {
	display: flex;
	align-items: center;
	gap: 0.45rem;
}

.tsc-edit-delete-reason-label {
	font-size: 0.78rem;
	font-weight: 700;
	color: rgb(212 212 216);
}

.tsc-edit-delete-reason-hint {
	font-size: 0.72rem;
	color: rgb(113 113 122);
	padding-left: 1.5rem;
}

.tsc-edit-delete-actions {
	margin-top: 0.75rem;
}

.tsc-edit-delete-submit {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	padding: 0.55rem 1rem;
	border-radius: 0.5rem;
	border: 1px solid rgb(239 68 68 / 0.55);
	background: linear-gradient(135deg, rgb(239 68 68), rgb(185 28 28));
	color: rgb(255 255 255);
	font-size: 0.78rem;
	font-weight: 700;
	cursor: pointer;
}

.tsc-edit-delete-submit:hover {
	filter: brightness(1.05);
}

.tsc-edit-success,
.tsc-edit-denied {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.75rem;
	padding: 1.5rem 1rem;
	text-align: center;
}

.tsc-edit-success .tsc-icon {
	color: rgb(74 222 128);
}

.tsc-upload-hint--warn {
	color: rgb(248 113 113);
}

@media (max-width: 767px) {
	.tsc-edit-delete-reason input[type="text"] {
		width: 100%;
	}
}

/* Legacy section aliases (still used elsewhere) */
.tsc-section--upload {
	border: 1px solid rgb(63 63 70 / 0.5);
	box-shadow: 0 20px 50px -20px rgba(0, 0, 0, 0.6);
	background: linear-gradient(145deg, rgb(24 24 27 / 0.85), rgb(9 9 11 / 0.72));
}

.tsc-section-header--upload {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.625rem;
	padding: 0.875rem 1.25rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.7);
	background: linear-gradient(180deg, rgb(24 24 27 / 0.9), rgb(9 9 11 / 0.95));
}

.tsc-section-title--upload {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: rgb(212 212 216);
}

.tsc-section-body--upload {
	padding: 1rem 1.25rem 1.25rem !important;
}

.tsc-upload-page {
	width: 100%;
}

/* ── My.php settings (index schema) ── */

.tsc-my-page {
	min-width: 0;
	padding-bottom: 1.5rem;
}

.tsc-my-toast-area {
	position: fixed;
	top: 1rem;
	right: 1rem;
	z-index: 120;
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	max-width: min(22rem, calc(100vw - 2rem));
	pointer-events: none;
}

.tsc-my-toast-area .tsc-my-toast {
	pointer-events: auto;
	box-shadow: 0 16px 40px rgb(0 0 0 / 0.35);
	animation: tsc-my-toast-in 0.22s ease;
	display: flex;
	align-items: center;
	gap: 0.6rem;
	padding: 0.75rem 1rem;
	border-radius: 0.625rem;
	border: 1px solid rgb(74 222 128 / 0.35);
	background: rgb(20 83 45 / 0.92);
	color: rgb(187 247 208);
	font-size: 0.8125rem;
	font-weight: 600;
}

.tsc-my-toast.is-hiding {
	opacity: 0;
	transform: translateY(-4px);
	transition: opacity 0.2s ease, transform 0.2s ease;
}

@keyframes tsc-my-toast-in {
	from { opacity: 0; transform: translateY(-8px); }
	to { opacity: 1; transform: translateY(0); }
}

.tsc-my-toast--error {
	border-color: rgb(239 68 68 / 0.35);
	background: rgb(69 10 10 / 0.85);
	color: rgb(254 202 202);
}

.tsc-page-my .maincontent > br {
	display: none;
}

.tsc-my-hero {
	position: relative;
	margin-bottom: 1rem;
	padding: clamp(1rem, 3vw, 1.5rem);
	border-radius: 1rem;
	border: 1px solid rgb(251 146 60 / 0.28);
	background:
		radial-gradient(ellipse 80% 60% at 50% -20%, rgb(251 146 60 / 0.12), transparent 60%),
		linear-gradient(160deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.9));
	overflow: hidden;
}

.tsc-my-hero-glow {
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at 85% 15%, rgb(251 146 60 / 0.1), transparent 42%);
	pointer-events: none;
}

.tsc-my-hero-inner {
	position: relative;
}

.tsc-my-hero-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.25rem 0.55rem;
	border-radius: 999px;
	border: 1px solid rgb(251 146 60 / 0.35);
	background: rgb(251 146 60 / 0.1);
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(253 186 116);
	margin-bottom: 0.5rem;
}

.tsc-my-hero-title {
	margin: 0 0 0.35rem;
	font-size: clamp(1.25rem, 3vw, 1.6rem);
	font-weight: 800;
	color: rgb(244 244 245);
}

.tsc-my-hero-sub {
	margin: 0 0 0.75rem;
	font-size: 0.8125rem;
	color: rgb(161 161 170);
	line-height: 1.5;
	max-width: 42rem;
}

.tsc-my-hero-sub a {
	text-decoration: none;
}

.tsc-my-hero-sub a:hover {
	text-decoration: underline;
}

.tsc-my-hero-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.tsc-my-chip {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.4rem 0.65rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.45);
	font-size: 0.75rem;
	color: rgb(212 212 216);
}

.tsc-my-chip .tsc-icon {
	color: rgb(251 146 60);
}

.tsc-my-chip strong {
	color: rgb(244 244 245);
	font-weight: 700;
}

.tsc-mytorrents-empty {
	padding: 2.5rem 1rem;
	text-align: center;
}

.tsc-mytorrents-empty-icon {
	color: rgb(251 146 60);
	opacity: 0.75;
	margin-bottom: 0.5rem;
}

.tsc-mytorrents-empty-title {
	margin: 0 0 0.35rem;
	font-size: 1rem;
	font-weight: 800;
	color: rgb(228 228 231);
}

.tsc-mytorrents-empty-text {
	margin: 0 0 1rem;
	font-size: 0.8125rem;
	color: rgb(113 113 122);
	max-width: 28rem;
	margin-inline: auto;
}

.tsc-mytorrents-empty-cta {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	padding: 0.55rem 1rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(251 146 60 / 0.45);
	background: rgb(251 146 60 / 0.12);
	font-size: 0.8125rem;
	font-weight: 700;
	color: rgb(253 186 116);
	text-decoration: none;
	transition: border-color 0.15s, background 0.15s, color 0.15s;
}

.tsc-mytorrents-empty-cta:hover {
	border-color: rgb(251 146 60 / 0.65);
	background: rgb(251 146 60 / 0.2);
	color: rgb(254 215 170);
}

.tsc-my-form {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	min-width: 0;
}

.tsc-my-fields {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.85rem 1.1rem;
}

.tsc-my-fields--torrents {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

@media (max-width: 1100px) {
	.tsc-my-fields--torrents {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.tsc-my-field {
	display: flex;
	flex-direction: column;
	gap: 0.45rem;
	min-width: 0;
}

.tsc-my-field--wide {
	grid-column: 1 / -1;
}

.tsc-my-field-label {
	font-size: 0.6875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: rgb(161 161 170);
}

.tsc-my-field-control {
	font-size: 0.8125rem;
	color: rgb(212 212 216);
}


.tsc-my-card {
	border-radius: 0.875rem;
	border: 1px solid rgb(63 63 70 / 0.5);
	background: linear-gradient(160deg, rgb(24 24 27 / 0.82), rgb(9 9 11 / 0.6));
	box-shadow: 0 20px 50px -28px rgba(0, 0, 0, 0.65);
	overflow: hidden;
	scroll-margin-top: 1rem;
}

.tsc-my-card-header {
	display: flex;
	align-items: center;
	gap: 0.6rem;
	padding: 0.85rem 1.15rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.65);
	background: linear-gradient(180deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.9));
}

.tsc-my-card-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2rem;
	height: 2rem;
	border-radius: 0.5rem;
	background: rgb(251 146 60 / 0.12);
	color: rgb(251 146 60);
}

.tsc-my-card-title {
	margin: 0;
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: rgb(212 212 216);
}

.tsc-my-card-body {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.85rem 1.25rem;
	padding: 1.15rem;
}

.tsc-my-input,
.tsc-my-textarea,
.tsc-my-select {
	width: 100%;
	padding: 0.5rem 0.7rem;
	font-size: 0.8125rem;
	color: rgb(228 228 231);
	background: rgb(9 9 11);
	border: 1px solid rgb(63 63 70);
	border-radius: 0.5rem;
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.tsc-my-input:focus,
.tsc-my-textarea:focus,
.tsc-my-select:focus {
	outline: none;
	border-color: rgb(251 146 60 / 0.55);
	box-shadow: 0 0 0 2px rgb(251 146 60 / 0.12);
}

.tsc-my-textarea {
	min-height: 5rem;
	resize: vertical;
	font-family: inherit;
	line-height: 1.5;
}

.tsc-my-hint {
	margin: 0.4rem 0 0;
	font-size: 0.6875rem;
	line-height: 1.5;
	color: rgb(113 113 122);
}

.tsc-my-hint a {
	color: rgb(251 146 60);
	text-decoration: none;
}

.tsc-my-hint a:hover {
	text-decoration: underline;
}

.tsc-my-switch {
	display: flex;
	align-items: flex-start;
	gap: 0.65rem;
	margin-bottom: 0.45rem;
	cursor: pointer;
}

.tsc-my-switch:last-child {
	margin-bottom: 0;
}

.tsc-my-switch input {
	position: absolute;
	opacity: 0;
	width: 0;
	height: 0;
}

.tsc-my-switch-track {
	position: relative;
	flex-shrink: 0;
	width: 2.25rem;
	height: 1.25rem;
	margin-top: 0.1rem;
	border-radius: 9999px;
	background: rgb(63 63 70);
	transition: background 0.15s ease;
}

.tsc-my-switch-track::after {
	content: '';
	position: absolute;
	top: 2px;
	left: 2px;
	width: 1rem;
	height: 1rem;
	border-radius: 9999px;
	background: rgb(228 228 231);
	transition: transform 0.15s ease;
}

.tsc-my-switch input:checked + .tsc-my-switch-track {
	background: rgb(251 146 60);
}

.tsc-my-switch input:checked + .tsc-my-switch-track::after {
	transform: translateX(1rem);
}

.tsc-my-switch-label {
	font-size: 0.75rem;
	line-height: 1.45;
	color: rgb(212 212 216);
}

.tsc-my-switch-label a {
	color: rgb(251 146 60);
}

.tsc-my-choice-group {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
}

.tsc-my-choice {
	display: inline-flex;
	align-items: center;
	cursor: pointer;
}

.tsc-my-choice input {
	position: absolute;
	opacity: 0;
}

.tsc-my-choice span {
	display: inline-flex;
	padding: 0.35rem 0.65rem;
	font-size: 0.75rem;
	color: rgb(212 212 216);
	border-radius: 0.5rem;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(24 24 27 / 0.7);
	transition: border-color 0.15s ease, background 0.15s ease, color 0.15s ease;
}

.tsc-my-choice input:checked + span {
	color: rgb(251 146 60);
	border-color: rgb(251 146 60 / 0.45);
	background: rgb(251 146 60 / 0.1);
}

.tsc-my-choice:hover span {
	border-color: rgb(113 113 122);
}

.tsc-my-cat-panel {
	margin-top: 0.85rem;
	padding: 0.85rem;
	border-radius: 0.75rem;
	border: 1px solid rgb(63 63 70 / 0.55);
	background: rgb(9 9 11 / 0.35);
}

.tsc-my-cat-panel-head {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
	gap: 0.75rem 1rem;
	margin-bottom: 0.85rem;
	padding-bottom: 0.75rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.65);
}

.tsc-my-cat-panel-title {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	margin: 0 0 0.35rem;
	font-size: 0.8125rem;
	font-weight: 700;
	color: rgb(228 228 231);
}

.tsc-my-cat-panel-lead {
	margin: 0 0 0.45rem;
	font-size: 0.75rem;
	color: rgb(161 161 170);
}

.tsc-my-cat-panel-uses {
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem 1rem;
}

.tsc-my-cat-panel-uses li {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	font-size: 0.75rem;
	color: rgb(161 161 170);
}

.tsc-my-cat-panel-uses strong {
	color: rgb(212 212 216);
	font-weight: 600;
}

.tsc-my-cat-panel-tools {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
}

.tsc-my-cat-tool {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	padding: 0.4rem 0.65rem;
	border-radius: 0.5rem;
	border: 1px solid rgb(63 63 70 / 0.75);
	background: rgb(24 24 27 / 0.85);
	color: rgb(212 212 216);
	font-size: 0.6875rem;
	font-weight: 600;
	cursor: pointer;
}

.tsc-my-cat-tool:hover {
	border-color: rgb(251 146 60 / 0.45);
	color: rgb(253 186 116);
}

.tsc-my-cat-matrix {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(15.5rem, 1fr));
	gap: 0.65rem;
}

.tsc-my-cat-group {
	display: flex;
	flex-direction: column;
	gap: 0.45rem;
	padding: 0.65rem 0.7rem;
	border-radius: 0.65rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(0 0 0 / 0.22);
	border-top: 2px solid var(--tsc-my-cat-color, rgb(251 146 60));
	min-width: 0;
}

.tsc-my-cat-group-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.35rem;
}

.tsc-my-cat-group-title {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	margin: 0;
	font-size: 0.6875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: rgb(212 212 216);
	min-width: 0;
}

.tsc-my-cat-group-dot {
	width: 0.5rem;
	height: 0.5rem;
	border-radius: 999px;
	background: var(--tsc-my-cat-color, rgb(251 146 60));
	flex-shrink: 0;
}

.tsc-my-cat-group-count {
	flex-shrink: 0;
	padding: 0.1rem 0.4rem;
	border-radius: 999px;
	border: 1px solid rgb(63 63 70 / 0.65);
	font-size: 0.5625rem;
	font-weight: 700;
	color: rgb(113 113 122);
}

.tsc-my-cat-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.3rem;
}

.tsc-my-cat-chip {
	display: inline-flex;
	cursor: pointer;
}

.tsc-my-cat-chip input {
	position: absolute;
	opacity: 0;
}

.tsc-my-cat-chip span {
	display: inline-flex;
	padding: 0.25rem 0.55rem;
	font-size: 0.6875rem;
	font-weight: 600;
	color: rgb(161 161 170);
	border-radius: 9999px;
	border: 1px solid rgb(63 63 70 / 0.55);
	background: rgb(24 24 27 / 0.8);
	transition: all 0.15s ease;
}

.tsc-my-cat-chip input:checked + span {
	color: rgb(0 0 0);
	background: rgb(251 146 60);
	border-color: rgb(251 146 60);
}

.tsc-my-cat-chip:hover span {
	border-color: rgb(251 146 60 / 0.4);
}

.tsc-my-warning {
	grid-column: 1 / -1;
	display: flex;
	align-items: flex-start;
	gap: 0.6rem;
	padding: 0.75rem 1rem;
	border-radius: 0.625rem;
	border: 1px solid rgb(239 68 68 / 0.35);
	background: rgb(39 24 24 / 0.45);
	color: rgb(252 165 165);
	font-size: 0.75rem;
	line-height: 1.5;
}

.tsc-my-submit-bar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	flex-wrap: wrap;
	margin-top: 0.25rem;
	padding: 1rem 0 0.25rem;
	border-top: 1px solid rgb(39 39 42 / 0.6);
}

.tsc-my-submit-status {
	font-size: 0.75rem;
	color: rgb(161 161 170);
	min-height: 1.1rem;
}

.tsc-my-submit-status--warn { color: rgb(251 191 36); }
.tsc-my-submit-status--ok { color: rgb(74 222 128); }
.tsc-my-submit-status--error { color: rgb(248 113 113); }
.tsc-my-submit-status--busy { color: rgb(251 146 60); }

.tsc-my-submit-actions {
	display: flex;
	gap: 0.5rem;
	flex-wrap: wrap;
}

.tsc-my-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	padding: 0.6rem 1.35rem;
	font-size: 0.8125rem;
	font-weight: 700;
	border-radius: 0.5rem;
	border: 1px solid transparent;
	cursor: pointer;
	transition: filter 0.15s ease, background 0.15s ease;
}

.tsc-my-btn--primary {
	color: rgb(0 0 0);
	background: linear-gradient(135deg, rgb(251 146 60), rgb(234 88 12));
	border-color: rgb(251 146 60 / 0.6);
}

.tsc-my-btn--primary:hover {
	filter: brightness(1.08);
}

.tsc-my-btn--primary:disabled {
	opacity: 0.65;
	cursor: wait;
}

.tsc-my-btn--ghost {
	color: rgb(212 212 216);
	background: rgb(24 24 27 / 0.8);
	border-color: rgb(63 63 70 / 0.65);
}

.tsc-my-btn--ghost:hover {
	background: rgb(39 39 42);
	border-color: rgb(113 113 122);
}

@media (max-width: 1024px) {
	.tsc-my-fields,
	.tsc-my-fields--torrents,
	.tsc-my-card-body {
		grid-template-columns: 1fr;
	}

	.tsc-my-cat-matrix {
		grid-template-columns: repeat(auto-fill, minmax(13rem, 1fr));
	}
}

@media (max-width: 640px) {
	.tsc-my-submit-bar {
		flex-direction: column;
		align-items: stretch;
	}

	.tsc-my-submit-actions {
		width: 100%;
	}

	.tsc-my-submit-actions .tsc-my-btn {
		flex: 1 1 auto;
		justify-content: center;
	}
}

/* ── Messages (PM) page ── */

.tsc-pm-page {
	width: 100%;
	padding-bottom: 1.5rem;
}

.tsc-pm-layout {
	display: grid;
	grid-template-columns: 13.5rem minmax(0, 1fr);
	gap: 1rem;
	align-items: start;
}

.tsc-pm-sidebar {
	position: sticky;
	top: 1rem;
	display: flex;
	flex-direction: column;
	border-radius: 0.875rem;
	border: 1px solid rgb(63 63 70 / 0.55);
	background: linear-gradient(160deg, rgb(24 24 27 / 0.9), rgb(9 9 11 / 0.75));
	box-shadow: 0 20px 50px -28px rgba(0, 0, 0, 0.7);
	overflow: hidden;
}

.tsc-pm-sidebar-head {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	padding: 0.85rem 1rem;
	font-size: 0.75rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	color: rgb(212 212 216);
	border-bottom: 1px solid rgb(39 39 42 / 0.65);
	background: linear-gradient(180deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.9));
}

.tsc-pm-folder-list {
	display: flex;
	flex-direction: column;
	gap: 0.15rem;
	padding: 0.5rem;
	max-height: 24rem;
	overflow: auto;
}

.tsc-pm-folder {
	display: flex;
	align-items: center;
	gap: 0.45rem;
	padding: 0.5rem 0.6rem;
	padding-left: calc(0.6rem + var(--pm-indent, 0) * 0.75rem);
	border-radius: 0.5rem;
	font-size: 0.75rem;
	font-weight: 600;
	color: rgb(161 161 170);
	text-decoration: none;
	transition: background 0.15s ease, color 0.15s ease;
}

.tsc-pm-folder:hover {
	color: rgb(228 228 231);
	background: rgb(39 39 42 / 0.55);
}

.tsc-pm-folder.is-active {
	color: rgb(251 146 60);
	background: rgb(251 146 60 / 0.1);
	border: 1px solid rgb(251 146 60 / 0.25);
}

.tsc-pm-folder.has-unread .tsc-pm-folder-name {
	color: rgb(228 228 231);
}

.tsc-pm-folder-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 1.5rem;
	height: 1.5rem;
	border-radius: 0.375rem;
	background: rgb(39 39 42 / 0.7);
	color: rgb(161 161 170);
	flex-shrink: 0;
}

.tsc-pm-folder.is-active .tsc-pm-folder-icon {
	background: rgb(251 146 60 / 0.15);
	color: rgb(251 146 60);
}

.tsc-pm-folder-name {
	flex: 1;
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.tsc-pm-folder-badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 1.25rem;
	height: 1.25rem;
	padding: 0 0.3rem;
	font-size: 0.625rem;
	font-weight: 800;
	color: rgb(0 0 0);
	background: rgb(251 146 60);
	border-radius: 9999px;
}

.tsc-pm-sidebar-foot {
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
	padding: 0.65rem;
	border-top: 1px solid rgb(39 39 42 / 0.65);
}

.tsc-pm-side-link {
	display: flex;
	align-items: center;
	gap: 0.4rem;
	padding: 0.4rem 0.5rem;
	font-size: 0.6875rem;
	font-weight: 600;
	color: rgb(161 161 170);
	text-decoration: none;
	border-radius: 0.375rem;
}

.tsc-pm-side-link:hover {
	color: rgb(251 146 60);
	background: rgb(39 39 42 / 0.45);
}

.tsc-pm-side-link--danger:hover {
	color: rgb(248 113 113);
}

.tsc-pm-form-shell {
	min-width: 0;
	display: block;
}

.tsc-pm-main {
	border-radius: 0.875rem;
	border: 1px solid rgb(63 63 70 / 0.5);
	background: linear-gradient(160deg, rgb(24 24 27 / 0.82), rgb(9 9 11 / 0.6));
	box-shadow: 0 20px 50px -28px rgba(0, 0, 0, 0.65);
	overflow: hidden;
	min-width: 0;
}

.tsc-pm-main--dialog {
	padding: 0;
}

.tsc-pm-main--dialog .tsc-pm-view {
	border: none;
	border-radius: 0;
	box-shadow: none;
	background: transparent;
}

.tsc-pm-notice--error {
	border-color: rgb(248 113 113 / 0.35);
	background: rgb(248 113 113 / 0.08);
}

.tsc-pm-notice--success {
	border-color: rgb(74 222 128 / 0.35);
	background: rgb(74 222 128 / 0.08);
}

.tsc-pm-notice--md .tsc-markdown-body {
	margin: 0;
}

.tsc-pm-notice--md .tsc-markdown-body p:last-child {
	margin-bottom: 0;
}

.tsc-pm-result-body .tsc-markdown-body {
	margin: 0 0 0.85rem;
	font-size: 0.8125rem;
	line-height: 1.55;
	color: rgb(228 228 231);
}

.tsc-pm-result-body .tsc-markdown-body a,
.tsc-pm-notice--md .tsc-markdown-body a {
	color: rgb(251 146 60);
	text-decoration: none;
}

.tsc-pm-result-body .tsc-markdown-body a:hover,
.tsc-pm-notice--md .tsc-markdown-body a:hover {
	text-decoration: underline;
}

.tsc-page-messages .tableinborder {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	border-radius: 0.875rem;
	border: 1px solid rgb(63 63 70 / 0.5);
	background: linear-gradient(160deg, rgb(24 24 27 / 0.82), rgb(9 9 11 / 0.6));
	box-shadow: 0 20px 50px -28px rgba(0, 0, 0, 0.65);
	overflow: hidden;
}

.tsc-page-messages .tableinborder .tabletitle,
.tsc-page-messages .tableinborder .tablea {
	background: transparent !important;
	border: none !important;
	color: rgb(228 228 231) !important;
	padding: 0.85rem 1.15rem !important;
}

.tsc-page-messages .tableinborder .tabletitle {
	border-bottom: 1px solid rgb(39 39 42 / 0.65) !important;
	font-size: 0.8125rem;
	text-transform: uppercase;
	letter-spacing: 0.08em;
}

.tsc-page-messages .tableinborder .tablea a {
	color: rgb(251 146 60);
}

.tsc-pm-main-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	padding: 0.85rem 1.15rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.65);
	background: linear-gradient(180deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.9));
}

.tsc-pm-main-title {
	display: flex;
	align-items: center;
	gap: 0.5rem;
}

.tsc-pm-main-title h1 {
	margin: 0;
	font-size: 0.875rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: rgb(212 212 216);
}

.tsc-pm-main-count {
	font-size: 0.6875rem;
	font-weight: 600;
	color: rgb(113 113 122);
}

.tsc-pm-list {
	display: flex;
	flex-direction: column;
}

.tsc-pm-list-head,
.tsc-pm-row {
	display: grid;
	grid-template-columns: 2.25rem 2rem minmax(0, 1fr) 8.5rem;
	gap: 0.5rem;
	align-items: center;
	padding: 0.55rem 1rem;
}

.tsc-pm-list-head {
	border-bottom: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.55);
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(113 113 122);
}

.tsc-pm-head-cols,
.tsc-pm-row-cols {
	display: grid;
	grid-template-columns: minmax(0, 2fr) minmax(0, 1fr) minmax(0, 1fr) 6.5rem;
	gap: 0.65rem;
	align-items: center;
	min-width: 0;
}

.tsc-pm-sort-link {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	color: inherit;
	text-decoration: none;
}

.tsc-pm-sort-link:hover,
.tsc-pm-sort-link.is-active {
	color: rgb(251 146 60);
}

.tsc-pm-list-body .tsc-pm-row {
	border-bottom: 1px solid rgb(39 39 42 / 0.4);
	transition: background 0.15s ease;
}

.tsc-pm-list-body .tsc-pm-row:hover {
	background: rgb(39 39 42 / 0.35);
}

.tsc-pm-row--unread {
	background: rgb(251 146 60 / 0.05);
}

.tsc-pm-row--unread .tsc-pm-row-subject {
	color: rgb(244 244 245);
	font-weight: 700;
}

.tsc-pm-row-check input,
.tsc-pm-head-check input {
	accent-color: rgb(251 146 60);
}

.tsc-pm-row-status {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 1.75rem;
	height: 1.75rem;
	border-radius: 0.375rem;
	color: rgb(113 113 122);
	text-decoration: none;
}

.tsc-pm-row--unread .tsc-pm-row-status {
	color: rgb(251 146 60);
	background: rgb(251 146 60 / 0.12);
}

.tsc-pm-row-subject {
	color: rgb(212 212 216);
	text-decoration: none;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.tsc-pm-row-subject:hover {
	color: rgb(251 146 60);
}

.tsc-pm-row-sender,
.tsc-pm-row-receiver,
.tsc-pm-row-date {
	font-size: 0.75rem;
	color: rgb(161 161 170);
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.tsc-pm-row-sender a,
.tsc-pm-row-receiver a {
	color: rgb(212 212 216);
	text-decoration: none;
}

.tsc-pm-row-sender a:hover,
.tsc-pm-row-receiver a:hover {
	color: rgb(251 146 60);
}

.tsc-pm-row-date {
	color: rgb(113 113 122);
	font-size: 0.6875rem;
}

.tsc-pm-row-actions {
	display: flex;
	gap: 0.25rem;
	justify-content: flex-end;
}

.tsc-pm-action {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.65rem;
	height: 1.65rem;
	border-radius: 0.375rem;
	color: rgb(161 161 170);
	text-decoration: none;
	border: 1px solid transparent;
}

.tsc-pm-action:hover {
	color: rgb(251 146 60);
	border-color: rgb(251 146 60 / 0.3);
	background: rgb(251 146 60 / 0.08);
}

.tsc-pm-action--danger:hover {
	color: rgb(248 113 113);
	border-color: rgb(239 68 68 / 0.3);
	background: rgb(239 68 68 / 0.08);
}

.tsc-pm-action.is-disabled {
	opacity: 0.35;
	pointer-events: none;
}

.tsc-pm-empty {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0.35rem;
	padding: 3rem 1.5rem;
	color: rgb(113 113 122);
}

.tsc-pm-empty-icon {
	color: rgb(63 63 70);
	margin-bottom: 0.25rem;
}

.tsc-pm-empty-title {
	margin: 0;
	font-size: 0.875rem;
	font-weight: 700;
	color: rgb(161 161 170);
}

.tsc-pm-empty-text {
	margin: 0;
	font-size: 0.75rem;
}

.tsc-pm-toolbar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.65rem;
	padding: 0.85rem 1rem;
	border-top: 1px solid rgb(39 39 42 / 0.6);
	background: rgb(9 9 11 / 0.45);
}

.tsc-pm-toolbar-label {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	font-size: 0.6875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: rgb(113 113 122);
	margin-right: 0.25rem;
}

.tsc-pm-toolbar-actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.45rem;
}

.tsc-pm-move {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	flex-wrap: wrap;
}

.tsc-pm-move-label {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	font-size: 0.6875rem;
	color: rgb(161 161 170);
}

.tsc-pm-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0.4rem 0.75rem;
	font-size: 0.6875rem;
	font-weight: 600;
	color: rgb(212 212 216);
	background: rgb(24 24 27 / 0.85);
	border: 1px solid rgb(63 63 70 / 0.65);
	border-radius: 0.5rem;
	cursor: pointer;
	text-decoration: none;
	transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.tsc-pm-btn:hover {
	border-color: rgb(251 146 60 / 0.4);
	color: rgb(251 146 60);
}

.tsc-pm-btn--primary {
	color: rgb(0 0 0);
	background: linear-gradient(135deg, rgb(251 146 60), rgb(234 88 12));
	border-color: rgb(251 146 60 / 0.55);
}

.tsc-pm-btn--primary:hover {
	filter: brightness(1.06);
	color: rgb(0 0 0);
}

.tsc-pm-btn--danger:hover {
	border-color: rgb(239 68 68 / 0.4);
	color: rgb(248 113 113);
}

.tsc-pm-btn--ghost {
	background: transparent;
}

.tsc-pm-select,
.tsc-pm-input,
.tsc-pm-textarea {
	padding: 0.4rem 0.55rem;
	font-size: 0.75rem;
	color: rgb(228 228 231);
	background: rgb(9 9 11);
	border: 1px solid rgb(63 63 70);
	border-radius: 0.5rem;
}

.tsc-pm-select--tall {
	min-height: 9rem;
}

.tsc-pm-form {
	display: grid;
	gap: 0.85rem;
}

.tsc-pm-field {
	display: grid;
	grid-template-columns: 8.5rem minmax(0, 1fr);
	gap: 0.65rem;
	align-items: start;
}

.tsc-pm-field--wide {
	grid-template-columns: 1fr;
}

.tsc-pm-field-label {
	padding-top: 0.45rem;
	font-size: 0.6875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: rgb(161 161 170);
}

.tsc-pm-field--wide .tsc-pm-field-label {
	padding-top: 0;
}

.tsc-pm-field-control {
	min-width: 0;
}

.tsc-pm-field-control .tsc-pm-input {
	width: 100%;
}

.tsc-pm-inline-fields {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.tsc-pm-inline-fields .tsc-pm-select {
	min-width: 8rem;
}

.tsc-pm-hint {
	margin: 0.35rem 0 0;
	font-size: 0.6875rem;
	color: rgb(113 113 122);
}

.tsc-pm-notice {
	margin: 0 0 0.85rem;
	padding: 0.75rem 0.9rem;
	border-radius: 0.5rem;
	border: 1px solid rgb(251 146 60 / 0.35);
	background: rgb(251 146 60 / 0.08);
	font-size: 0.75rem;
	line-height: 1.5;
	color: rgb(228 228 231);
}

.tsc-pm-choice-stack {
	display: flex;
	flex-direction: column;
	gap: 0.55rem;
}

.tsc-pm-move-option {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.5rem;
}

.tsc-pm-checkbox,
.tsc-pm-radio {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	font-size: 0.75rem;
	color: rgb(212 212 216);
	cursor: pointer;
}

.tsc-pm-checkbox input,
.tsc-pm-radio input {
	accent-color: rgb(251 146 60);
}

.tsc-pm-editor textarea,
.tsc-pm-editor input[type="text"] {
	width: 100%;
}

.tsc-pm-editor table {
	width: 100%;
}

.tsc-pm-editor .tablea,
.tsc-pm-editor .tableb {
	background: transparent !important;
	border: none !important;
	padding: 0 !important;
}

.tsc-pm-view {
	border-radius: 0.875rem;
	border: 1px solid rgb(63 63 70 / 0.5);
	background: linear-gradient(160deg, rgb(24 24 27 / 0.82), rgb(9 9 11 / 0.6));
	box-shadow: 0 20px 50px -28px rgba(0, 0, 0, 0.65);
	overflow: hidden;
}

.tsc-pm-view-head {
	display: flex;
	align-items: center;
	gap: 0.6rem;
	padding: 0.85rem 1.15rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.65);
	background: linear-gradient(180deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.9));
}

.tsc-pm-view-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2rem;
	height: 2rem;
	border-radius: 0.5rem;
	background: rgb(251 146 60 / 0.12);
	color: rgb(251 146 60);
}

.tsc-pm-view-title {
	margin: 0;
	font-size: 0.875rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: rgb(212 212 216);
}

.tsc-pm-view-body {
	padding: 1.15rem;
}

.tsc-pm-read-subject {
	font-size: 1.125rem;
	font-weight: 700;
	color: rgb(244 244 245);
	margin-bottom: 0.85rem;
	line-height: 1.35;
}

.tsc-pm-read-meta {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0.65rem;
	margin-bottom: 1rem;
}

.tsc-pm-meta-row {
	display: flex;
	flex-direction: column;
	gap: 0.2rem;
	padding: 0.55rem 0.65rem;
	border-radius: 0.5rem;
	border: 1px solid rgb(39 39 42 / 0.55);
	background: rgb(9 9 11 / 0.45);
}

.tsc-pm-meta-label {
	font-size: 0.5625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(113 113 122);
}

.tsc-pm-meta-value {
	font-size: 0.75rem;
	color: rgb(212 212 216);
}

.tsc-pm-meta-value a {
	color: rgb(251 146 60);
	text-decoration: none;
}

.tsc-pm-message-body {
	padding: 1rem;
	border-radius: 0.625rem;
	border: 1px solid rgb(39 39 42 / 0.55);
	background: rgb(0 0 0 / 0.35);
	font-size: 0.8125rem;
	line-height: 1.6;
	color: rgb(212 212 216);
}

.tsc-pm-form-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin-top: 1rem;
	padding-top: 1rem;
	border-top: 1px solid rgb(39 39 42 / 0.55);
}

@media (max-width: 1024px) {
	.tsc-pm-layout {
		grid-template-columns: 1fr;
	}
	.tsc-pm-sidebar {
		position: static;
	}
	.tsc-pm-folder-list {
		flex-direction: row;
		flex-wrap: wrap;
		max-height: none;
	}
	.tsc-pm-list-head {
		display: none;
	}
	.tsc-pm-row {
		grid-template-columns: 2.25rem 2rem minmax(0, 1fr) auto;
	}
	.tsc-pm-row-cols {
		grid-template-columns: 1fr;
		gap: 0.2rem;
	}
	.tsc-pm-read-meta {
		grid-template-columns: 1fr;
	}
	.tsc-pm-field {
		grid-template-columns: 1fr;
	}
	.tsc-pm-field-label {
		padding-top: 0;
	}
}

/* ── User profile page ── */

.tsc-user-page {
	width: 100%;
	padding-bottom: 0.5rem;
}

.tsc-user-profile-panel {
	position: relative;
}

.tsc-user-profile-panel > .tsc-stats-panel-glow {
	top: 0;
}

.tsc-user-alert {
	display: flex;
	gap: 0.75rem;
	padding: 0.875rem 1rem;
	border-radius: 0.625rem;
	border: 1px solid rgb(239 68 68 / 0.35);
	background: rgb(39 24 24 / 0.6);
	margin-bottom: 0.75rem;
}

.tsc-user-alert-icon {
	color: rgb(252 165 165);
	flex-shrink: 0;
	padding-top: 0.1rem;
}

.tsc-user-alert-title {
	margin: 0 0 0.35rem;
	font-size: 0.8125rem;
	font-weight: 700;
	color: rgb(252 165 165);
}

.tsc-user-alert-content {
	font-size: 0.75rem;
	color: rgb(212 212 216);
}

.tsc-user-alert-content a {
	color: rgb(251 146 60);
}

.tsc-user-alert-account {
	padding: 0.35rem 0;
	border-bottom: 1px solid rgb(63 63 70 / 0.35);
}

.tsc-user-alert-account:last-child {
	border-bottom: none;
}

.tsc-user-alert-account a {
	color: rgb(251 146 60);
}

.tsc-user-hero {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	gap: 1.25rem;
	align-items: center;
	padding: 0 0 1.25rem;
	margin-bottom: 0.25rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.5);
}

.tsc-user-hero-avatar-wrap {
	position: relative;
	flex-shrink: 0;
}

.tsc-user-hero-avatar {
	width: 7.5rem;
	height: 7.5rem;
	object-fit: cover;
	border-radius: 1rem;
	border: 2px solid rgb(63 63 70 / 0.8);
	box-shadow: 0 8px 32px rgb(0 0 0 / 0.45);
}

.tsc-user-hero-avatar-shine {
	position: absolute;
	inset: 0;
	border-radius: 1rem;
	background: linear-gradient(135deg, rgb(251 146 60 / 0.12), transparent 55%);
	pointer-events: none;
}

.tsc-user-hero-avatar-ring {
	position: absolute;
	inset: -3px;
	border-radius: 1.1rem;
	border: 1px solid rgb(251 146 60 / 0.3);
	pointer-events: none;
}

.tsc-user-hero-name {
	margin: 0;
	font-size: 1.375rem;
	font-weight: 800;
	letter-spacing: 0.02em;
	line-height: 1.2;
}

.tsc-user-hero-class {
	margin: 0.25rem 0 0.5rem;
	font-size: 0.75rem;
	color: rgb(161 161 170);
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
}

.tsc-user-badges {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem;
	margin-top: 0.35rem;
}

.tsc-user-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	padding: 0.2rem 0.5rem;
	font-size: 0.625rem;
	font-weight: 700;
	border-radius: 0.3rem;
	border: 1px solid rgb(63 63 70 / 0.5);
	background: rgb(9 9 11 / 0.6);
	color: rgb(212 212 216);
}

.tsc-user-badge--warn { color: rgb(252 165 165); border-color: rgb(239 68 68 / 0.35); }
.tsc-user-badge--disabled { color: rgb(161 161 170); }
.tsc-user-badge--webseed { color: rgb(94 234 212); }
.tsc-user-badge--vdsl { color: rgb(250 204 21); }
.tsc-user-badge--donor { color: rgb(250 204 21); }
.tsc-user-badge--donor-1 { color: rgb(251 191 36); }
.tsc-user-badge--donor-2 { color: rgb(250 204 21); }
.tsc-user-badge--donor-3 { color: rgb(251 146 60); }
.tsc-user-badge--donor-4 { color: rgb(244 114 182); }
.tsc-user-badge--donor-5 { color: rgb(192 132 252); }
.tsc-user-badge--love { color: rgb(251 113 133); }

/* Spender icons (global + profile) */
.tsc-donor-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	vertical-align: middle;
	margin-left: 0.15rem;
}
.tsc-donor-icon--big { margin-left: 0.25rem; }
.tsc-donor-icon--1 { color: rgb(251 191 36); }
.tsc-donor-icon--2 { color: rgb(250 204 21); }
.tsc-donor-icon--3 { color: rgb(251 146 60); }
.tsc-donor-icon--4 { color: rgb(244 114 182); }
.tsc-donor-icon--5 { color: rgb(192 132 252); }

.tsc-user-badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-left: 0.15rem;
	vertical-align: middle;
	line-height: 1;
}

.tsc-user-badge--big { margin-left: 0.25rem; }

.tsc-user-badge--warned { color: rgb(250 204 21); }
.tsc-user-badge--disabled { color: rgb(248 113 113); }
.tsc-user-badge--newbie { color: rgb(96 165 250); }
.tsc-user-badge--afk { color: rgb(161 161 170); }
.tsc-user-badge--loveduser { color: rgb(244 114 182); }
.tsc-user-badge--radiodj { color: rgb(192 132 252); }
.tsc-user-badge--baduser { color: rgb(239 68 68); }
.tsc-user-badge--webseed { color: rgb(74 222 128); }
.tsc-user-badge--vdsl { color: rgb(56 189 248); }
.tsc-user-badge--upload-10 { color: rgb(134 239 172); }
.tsc-user-badge--upload-25 { color: rgb(74 222 128); }
.tsc-user-badge--upload-60 { color: rgb(52 211 153); }
.tsc-user-badge--upload-100 { color: rgb(251 191 36); }
.tsc-user-badge--upload-150 { color: rgb(251 146 60); }

/* Wochen-Ranking-Badges (Top 100 … Platz 1) */
.tsc-user-badge--rank {
	padding: 0.35rem 0.7rem;
	font-size: 0.72rem;
	font-weight: 800;
	letter-spacing: 0.02em;
	box-shadow: 0 0 0 1px rgb(255 255 255 / 0.06), 0 4px 18px rgb(0 0 0 / 0.35);
	animation: tsc-rank-badge-glow 2.8s ease-in-out infinite;
}

.tsc-user-badge-rank-pos {
	opacity: 0.85;
	font-weight: 700;
	font-size: 0.68rem;
}

@keyframes tsc-rank-badge-glow {
	0%, 100% { filter: brightness(1); }
	50% { filter: brightness(1.15); }
}

.tsc-user-badge--rank-top100 {
	color: rgb(134 239 172);
	border-color: rgb(34 197 94 / 0.45);
	background: linear-gradient(135deg, rgb(20 83 45 / 0.55), rgb(9 9 11 / 0.75));
}

.tsc-user-badge--rank-top50 {
	color: rgb(186 230 253);
	border-color: rgb(56 189 248 / 0.45);
	background: linear-gradient(135deg, rgb(12 74 110 / 0.55), rgb(9 9 11 / 0.75));
}

.tsc-user-badge--rank-top25 {
	color: rgb(196 181 253);
	border-color: rgb(167 139 250 / 0.45);
	background: linear-gradient(135deg, rgb(76 29 149 / 0.45), rgb(9 9 11 / 0.75));
}

.tsc-user-badge--rank-top10 {
	color: rgb(253 224 71);
	border-color: rgb(234 179 8 / 0.5);
	background: linear-gradient(135deg, rgb(113 63 18 / 0.55), rgb(9 9 11 / 0.75));
}

.tsc-user-badge--rank-top3 {
	color: rgb(251 207 232);
	border-color: rgb(236 72 153 / 0.5);
	background: linear-gradient(135deg, rgb(131 24 67 / 0.5), rgb(9 9 11 / 0.75));
}

.tsc-user-badge--rank-crown {
	color: rgb(252 211 77);
	border-color: rgb(245 158 11 / 0.55);
	background: linear-gradient(135deg, rgb(120 53 15 / 0.6), rgb(9 9 11 / 0.75));
	box-shadow: 0 0 0 1px rgb(245 158 11 / 0.25), 0 0 22px rgb(245 158 11 / 0.2);
}

.tsc-user-hero-name .tsc-user-badge--rank-crown,
.tsc-user-hero-name .tsc-user-badge--rank-top3,
.tsc-user-hero-name .tsc-user-badge--rank-top10 {
	filter: drop-shadow(0 0 6px rgb(250 204 21 / 0.35));
}

/* Spender picker (mod form) */
.tsc-user-donor-panel {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
}
.tsc-user-donor-intro {
	display: flex;
	align-items: center;
	gap: 0.4rem;
	margin: 0;
	font-size: 0.75rem;
	color: rgb(161 161 170);
	line-height: 1.45;
}
.tsc-user-donor-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0.5rem;
	align-items: stretch;
}
.tsc-user-donor-radio {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}
.tsc-user-donor-card {
	cursor: pointer;
	display: flex;
	min-height: 100%;
}
.tsc-user-donor-card-inner {
	display: flex;
	flex: 1;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
	gap: 0.2rem;
	width: 100%;
	min-height: 6.75rem;
	padding: 0.65rem 0.45rem;
	border-radius: 0.625rem;
	border: 1px solid rgb(63 63 70 / 0.55);
	background: rgb(24 24 27 / 0.55);
	text-align: center;
	transition: border-color 0.15s, background 0.15s, box-shadow 0.15s, transform 0.15s;
}
.tsc-user-donor-card:hover .tsc-user-donor-card-inner {
	border-color: rgb(251 146 60 / 0.45);
	background: rgb(39 39 42 / 0.65);
}
.tsc-user-donor-card--active .tsc-user-donor-card-inner,
.tsc-user-donor-radio:checked + .tsc-user-donor-card-inner {
	border-color: rgb(251 146 60 / 0.65);
	background: rgb(251 146 60 / 0.08);
	box-shadow: 0 0 0 1px rgb(251 146 60 / 0.2), 0 8px 20px rgb(0 0 0 / 0.2);
}
.tsc-user-donor-card-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2rem;
	height: 2rem;
	border-radius: 999px;
	background: rgb(9 9 11 / 0.55);
	font-size: 1rem;
	line-height: 1;
	flex-shrink: 0;
}
.tsc-user-donor-card-icon .tsc-icon {
	font-size: 1rem;
	line-height: 1;
}
.tsc-user-donor-card--0 .tsc-user-donor-card-icon { color: rgb(161 161 170); }
.tsc-user-donor-card--1 .tsc-user-donor-card-icon { color: rgb(251 191 36); }
.tsc-user-donor-card--2 .tsc-user-donor-card-icon { color: rgb(250 204 21); }
.tsc-user-donor-card--3 .tsc-user-donor-card-icon { color: rgb(251 146 60); }
.tsc-user-donor-card--4 .tsc-user-donor-card-icon { color: rgb(244 114 182); }
.tsc-user-donor-card--5 .tsc-user-donor-card-icon { color: rgb(192 132 252); }
.tsc-user-donor-card-level {
	font-size: 0.625rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: rgb(113 113 122);
}
.tsc-user-donor-card-label {
	font-size: 0.6875rem;
	font-weight: 700;
	color: rgb(228 228 231);
	line-height: 1.25;
}
.tsc-user-donor-card-amount {
	font-size: 0.625rem;
	font-weight: 600;
	color: rgb(251 146 60);
	min-height: 1.1em;
	line-height: 1.1;
}
.tsc-user-donor-card-amount--empty {
	visibility: hidden;
}
.tsc-user-donor-card--0 .tsc-user-donor-card-label { color: rgb(161 161 170); }

@media (max-width: 720px) {
	.tsc-user-donor-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.tsc-user-bio {
	padding: 1rem 0 0;
	border-top: 1px solid rgb(39 39 42 / 0.6);
	margin-top: 0.5rem;
}

.tsc-user-bio-header {
	display: flex;
	align-items: center;
	gap: 0.35rem;
	font-size: 0.6875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(161 161 170);
	margin-bottom: 0.5rem;
}

.tsc-user-bio-body {
	font-size: 0.8125rem;
	line-height: 1.6;
	color: rgb(212 212 216);
}

.tsc-user-actions {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.5rem;
	padding: 0.75rem 0 0;
	border-top: 1px solid rgb(39 39 42 / 0.6);
	margin-top: 0.5rem;
}

.tsc-user-action-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.35rem;
	min-height: 2.75rem;
	padding: 0.5rem 0.75rem;
	font-size: 0.75rem;
	font-weight: 600;
	color: rgb(212 212 216);
	text-decoration: none;
	border-radius: 0.5rem;
	border: 1px solid rgb(63 63 70 / 0.55);
	background: rgb(9 9 11 / 0.55);
	transition: color 0.15s ease, border-color 0.15s ease, background 0.15s ease;
}

.tsc-user-action-btn:hover {
	color: rgb(251 146 60);
	border-color: rgb(251 146 60 / 0.4);
	background: rgb(39 39 42);
}

.tsc-user-action-btn--wide {
	grid-column: 1 / -1;
	justify-content: center;
}

.tsc-user-partner {
	padding: 0.75rem 0 0;
	text-align: center;
}

.tsc-user-partner img {
	max-width: 100%;
	border-radius: 0.5rem;
}

.tsc-user-rallye {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
	padding: 0.75rem 0;
	border-top: 1px solid rgb(39 39 42 / 0.5);
}

.tsc-user-rallye-title {
	display: flex;
	align-items: center;
	gap: 0.35rem;
	font-size: 0.6875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(161 161 170);
	margin-bottom: 0.25rem;
}

.tsc-user-rallye-item {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	font-size: 0.75rem;
	color: rgb(212 212 216);
	padding: 0.35rem 0.5rem;
	border-radius: 0.375rem;
	border: 1px solid rgb(39 39 42 / 0.5);
	background: rgb(9 9 11 / 0.35);
}

.tsc-user-rallye-cup {
	width: 1.25rem;
	height: auto;
}

.tsc-user-rallye-del {
	color: rgb(248 113 113);
	margin-left: auto;
}

.tsc-user-toggle {
	display: none;
}

.tsc-user-table-wrap {
	overflow-x: auto;
	margin: 0;
	-webkit-overflow-scrolling: touch;
}

.tsc-user-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.6875rem;
	min-width: 36rem;
}

.tsc-data-table--user-torrents thead th {
	font-size: 0.6875rem;
}

.tsc-user-table tbody td {
	padding: 0.45rem 0.5rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.45);
	color: rgb(212 212 216);
	vertical-align: top;
}

.tsc-user-table tbody tr:hover td {
	background: rgb(39 39 42 / 0.35);
}

.tsc-user-table tbody a {
	color: rgb(228 228 231);
	text-decoration: none;
}

.tsc-user-table tbody a:hover {
	color: rgb(251 146 60);
}

.tsc-user-cat-pill {
	display: inline-block;
	padding: 0.15rem 0.4rem;
	font-size: 0.5625rem;
	font-weight: 700;
	border-radius: 0.25rem;
	background: color-mix(in srgb, var(--cat-color, #3f3f46) 75%, black);
	color: rgb(255 255 255);
	white-space: nowrap;
}

.tsc-user-anon-notice {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.35rem;
	padding: 1rem 0 0;
	font-size: 0.8125rem;
	color: rgb(161 161 170);
	border-top: 1px solid rgb(39 39 42 / 0.6);
	margin-top: 0.5rem;
}

.tsc-user-mod-body {
	padding: 1rem 1.25rem;
}

.tsc-user-mod-row {
	display: grid;
	grid-template-columns: minmax(8rem, 11rem) minmax(0, 1fr);
	gap: 0.75rem;
	align-items: start;
	padding: 0.5rem 0;
	border-bottom: 1px solid rgb(39 39 42 / 0.4);
}

.tsc-user-mod-label {
	display: flex;
	align-items: center;
	gap: 0.35rem;
	font-size: 0.6875rem;
	font-weight: 600;
	color: rgb(161 161 170);
	padding-top: 0.35rem;
}

.tsc-user-mod-field {
	font-size: 0.75rem;
	color: rgb(212 212 216);
}

.tsc-user-mod-field input[type="text"],
.tsc-user-mod-field input[type="password"],
.tsc-user-mod-field input[type="number"],
.tsc-user-mod-field textarea,
.tsc-user-mod-field select {
	width: 100%;
	max-width: 28rem;
	padding: 0.4rem 0.55rem;
	font-size: 0.75rem;
	color: rgb(228 228 231);
	background: rgb(9 9 11);
	border: 1px solid rgb(63 63 70);
	border-radius: 0.375rem;
}

.tsc-user-mod-field textarea {
	min-height: 6rem;
	resize: vertical;
}

.tsc-user-mod-submit {
	padding: 0.75rem 1.25rem 1.25rem;
	border-top: 1px solid rgb(39 39 42 / 0.6);
	background: rgb(9 9 11 / 0.35);
}

.tsc-user-mod-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	padding: 0.5rem 1.25rem;
	font-size: 0.8125rem;
	font-weight: 700;
	color: rgb(251 146 60);
	background: rgb(251 146 60 / 0.12);
	border: 1px solid rgb(251 146 60 / 0.4);
	border-radius: 0.5rem;
	cursor: pointer;
	transition: background 0.15s ease;
}

.tsc-user-mod-btn:hover {
	background: rgb(251 146 60 / 0.22);
}

/* Legacy mod table inside premium section */
.tsc-page-user .tsc-user-mod-legacy {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	font-size: 0.75rem;
}

.tsc-page-user .tsc-user-mod-legacy > tbody > tr > td.tableb {
	padding: 0.65rem 0.75rem;
	font-weight: 600;
	font-size: 0.6875rem;
	color: rgb(161 161 170);
	vertical-align: top;
	width: 11rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.45);
	background: rgb(9 9 11 / 0.25);
}

.tsc-page-user .tsc-user-mod-legacy > tbody > tr > td.tablea {
	padding: 0.65rem 0.75rem;
	color: rgb(212 212 216);
	border-bottom: 1px solid rgb(39 39 42 / 0.45);
	background: rgb(24 24 27 / 0.2);
}

.tsc-page-user .tsc-user-mod-legacy > tbody > tr:hover > td {
	background: rgb(39 39 42 / 0.35);
}

.tsc-page-user .tsc-user-mod-legacy input[type="text"],
.tsc-page-user .tsc-user-mod-legacy input[type="password"],
.tsc-page-user .tsc-user-mod-legacy input[type="number"],
.tsc-page-user .tsc-user-mod-legacy textarea,
.tsc-page-user .tsc-user-mod-legacy select {
	padding: 0.4rem 0.55rem;
	font-size: 0.75rem;
	color: rgb(228 228 231);
	background: rgb(9 9 11);
	border: 1px solid rgb(63 63 70);
	border-radius: 0.375rem;
}

.tsc-page-user .tsc-user-mod-legacy textarea {
	min-height: 4rem;
	resize: vertical;
}

.tsc-page-user .tsc-user-mod-legacy input[type="radio"],
.tsc-page-user .tsc-user-mod-legacy input[type="checkbox"] {
	accent-color: rgb(251 146 60);
	margin-right: 0.25rem;
}

.tsc-page-user .tsc-user-mod-legacy a {
	color: rgb(251 146 60);
	text-decoration: none;
}

.tsc-page-user .tsc-user-mod-legacy a:hover {
	text-decoration: underline;
}

.tsc-page-user .tsc-user-mod-legacy font {
	color: inherit;
}

.tsc-page-user .tsc-user-mod-legacy font[color="#66CC33"],
.tsc-page-user .tsc-user-mod-legacy font[color="#66cc33"] {
	color: rgb(74 222 128) !important;
}

.tsc-page-user .tsc-user-mod-legacy font[color="#CC0000"],
.tsc-page-user .tsc-user-mod-legacy font[color="#cc0000"],
.tsc-page-user .tsc-user-mod-legacy font[color="#dc1422"] {
	color: rgb(248 113 113) !important;
}

.tsc-page-user .tsc-user-mod-legacy font[color="blue"] {
	color: rgb(96 165 250) !important;
}

.tsc-page-user .tsc-user-mod-legacy img[id="uppic"],
.tsc-page-user .tsc-user-mod-legacy img[id="downpic"] {
	cursor: pointer;
	vertical-align: middle;
	filter: brightness(1.2);
}

.tsc-user-mod-comments {
	border-radius: 0.5rem;
	border: 1px solid rgb(39 39 42 / 0.6);
	background: rgb(0 0 0 / 0.35);
	overflow: hidden;
}

.tsc-user-mod-comments-title {
	display: none;
}

.tsc-user-mod-comments-scroll {
	max-height: 10rem;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
}

.tsc-page-user .tsc-user-mod-legacy .tsc-user-mod-comments table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.6875rem;
}

.tsc-page-user .tsc-user-mod-legacy .tsc-user-mod-comments .tabletitle,
.tsc-page-user .tsc-user-mod-legacy .tsc-user-mod-comments .tablecat {
	padding: 0.4rem 0.5rem;
	font-size: 0.5625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: rgb(161 161 170);
	background: rgb(9 9 11 / 0.6);
	border-bottom: 1px solid rgb(39 39 42 / 0.5);
}

.tsc-page-user .tsc-user-mod-legacy .tsc-user-mod-comments .tablea,
.tsc-page-user .tsc-user-mod-legacy .tsc-user-mod-comments .tableb {
	padding: 0.4rem 0.5rem;
	color: rgb(212 212 216);
	border-bottom: 1px solid rgb(39 39 42 / 0.35);
	vertical-align: top;
}

.tsc-page-user .tsc-user-mod-legacy .tsc-user-mod-comments .tableb {
	color: rgb(161 161 170);
}

.tsc-page-user .tsc-user-mod-legacy .tsc-user-mod-comments td[bgcolor="#FF0000"],
.tsc-page-user .tsc-user-mod-legacy .tsc-user-mod-comments td[bgcolor="#ff0000"] {
	background: rgb(127 29 29 / 0.4) !important;
}

.tsc-page-user .tsc-user-mod-legacy .tsc-user-mod-comments a {
	color: rgb(251 146 60);
}

/* Warning level bar in mod form */
.tsc-page-user .tsc-user-mod-legacy .tablea > div[style*="border: 1px solid"] {
	border-color: rgb(63 63 70) !important;
	border-radius: 0.375rem;
	overflow: hidden;
	background: rgb(9 9 11);
}

.tsc-page-user .tsc-user-mod-legacy .tablea > div[style*="border: 1px solid"] > div[style*="background-color"] {
	border-radius: 0.25rem;
}

.tsc-page-user .tsc-user-mod-legacy .tablea > div[style*="border: 1px solid"] div[style*="color: #000000"] {
	color: rgb(9 9 11) !important;
	font-weight: 700;
	font-size: 0.625rem;
}

.tsc-page-user .tsc-user-mod-editor-wrap {
	width: 100%;
	max-width: 100%;
	margin: 0.25rem 0;
}

.tsc-page-user .tsc-user-mod-editor-wrap .tsc-markdown-editor {
	width: 100%;
	max-width: 100%;
}

.tsc-page-user .tsc-user-mod-editor-wrap .tsc-markdown-editor__workspace {
	min-height: 8rem;
}

.tsc-page-user .tsc-user-mod-editor-wrap .tsc-markdown-editor__textarea {
	width: 100%;
	min-height: 8rem;
	resize: vertical;
}

.tsc-page-user .tsc-user-mod-editor-wrap .tsc-markdown-editor__preview {
	min-height: 8rem;
	max-height: 20rem;
	overflow: auto;
}

@media (max-width: 900px) {
	.tsc-page-user .tsc-user-mod-editor-wrap .tsc-markdown-editor__workspace {
		min-height: 8rem;
	}
}

.tsc-page-user .tsc-index-block {
	overflow-x: auto;
	overflow-y: hidden;
	-webkit-overflow-scrolling: touch;
}

.tsc-page-user .tsc-user-table-wrap,
.tsc-page-user .tsc-table-scroll {
	display: block;
	width: 100%;
	max-width: 100%;
	overflow-x: auto;
	overflow-y: hidden;
	-webkit-overflow-scrolling: touch;
	overscroll-behavior-x: contain;
}

.tsc-page-user .tsc-user-mod-body {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	max-width: 100%;
}

.tsc-page-user .tsc-user-mod-legacy {
	min-width: 40rem;
}

.tsc-page-user .tsc-user-mod-comments-scroll {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	max-width: 100%;
}

.tsc-page-user .tsc-stats-list-value {
	min-width: 0;
	max-width: 100%;
	overflow-x: auto;
	word-break: break-word;
	-webkit-overflow-scrolling: touch;
}

.tsc-page-user .tsc-user-alert-content,
.tsc-page-user .tsc-user-bio-body {
	max-width: 100%;
	overflow-x: auto;
	word-break: break-word;
	-webkit-overflow-scrolling: touch;
}

.tsc-page-user .tsc-index-section-body--user .tsc-stats-panel {
	margin: 0;
	border: 1px solid rgb(39 39 42 / 0.55);
	border-radius: 0.625rem;
	background: rgb(9 9 11 / 0.45);
	max-width: 100%;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.tsc-page-user .tsc-index-section-body--flush .tsc-user-table-wrap {
	padding: 0.75rem 1rem 1rem;
}

@media (max-width: 768px) {
	.tsc-user-hero {
		grid-template-columns: 1fr;
		text-align: center;
		justify-items: center;
		gap: 1rem;
		padding-bottom: 1rem;
	}

	.tsc-user-badges {
		justify-content: center;
	}

	.tsc-user-actions {
		grid-template-columns: 1fr;
	}

	.tsc-index-section-body--user {
		padding: 0.75rem;
	}

	.tsc-page-user .tsc-index-section-body--flush .tsc-user-table-wrap {
		padding: 0.625rem 0.75rem 0.875rem;
	}

	.tsc-user-table {
		min-width: 32rem;
	}

	.tsc-page-user .tsc-user-mod-legacy > tbody > tr > td.tableb {
		display: block;
		width: 100%;
		border-bottom: none;
		padding-bottom: 0.25rem;
	}

	.tsc-page-user .tsc-user-mod-legacy > tbody > tr > td.tablea {
		display: block;
		width: 100%;
	}

	.tsc-user-mod-row {
		grid-template-columns: 1fr;
	}

	.tsc-stats-list-row {
		flex-direction: column;
		align-items: flex-start;
		gap: 0.25rem;
	}

	.tsc-stats-list-value {
		text-align: left;
	}

	.tsc-user-bio-body {
		font-size: 0.8125rem;
	}

	.tsc-user-rallye-item {
		flex-wrap: wrap;
	}
}

@media (max-width: 480px) {
	.tsc-user-hero-avatar {
		width: 5.5rem;
		height: 5.5rem;
	}

	.tsc-user-hero-name {
		font-size: 1.125rem;
	}

	.tsc-user-action-btn {
		width: 100%;
	}
}

/* ═══════════════════════════════════════════════════════════
   Details page — cinematic showcase
   ═══════════════════════════════════════════════════════════ */

.tsc-details-page {
	--tsc-details-accent: rgb(251 146 60);
	--tsc-details-glow: rgb(251 146 60 / 0.18);
}

.tsc-index-block--details {
	border-color: rgb(251 146 60 / 0.2);
	box-shadow:
		0 0 0 1px rgb(251 146 60 / 0.04) inset,
		0 12px 40px rgb(0 0 0 / 0.35);
}

.tsc-index-section-body--details {
	min-width: 0;
	padding: 1rem;
}

.tsc-details-alert {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	gap: 0.85rem;
	padding: 0.9rem 1rem;
	margin-bottom: 1rem;
	border-radius: 0.75rem;
	border: 1px solid rgb(63 63 70 / 0.55);
	background: linear-gradient(135deg, rgb(24 24 27 / 0.9), rgb(9 9 11 / 0.75));
}

.tsc-details-alert--success { border-color: rgb(34 197 94 / 0.35); }
.tsc-details-alert--success .tsc-details-alert-icon { color: rgb(74 222 128); }
.tsc-details-alert--search .tsc-details-alert-icon { color: rgb(96 165 250); }
.tsc-details-alert--rating .tsc-details-alert-icon { color: rgb(250 204 21); }

.tsc-details-alert-title {
	margin: 0 0 0.25rem;
	font-size: 0.8125rem;
	font-weight: 700;
	color: rgb(244 244 245);
}

.tsc-details-alert-content {
	font-size: 0.75rem;
	color: rgb(212 212 216);
	line-height: 1.5;
}

.tsc-details-alert-content a { color: var(--tsc-details-accent); }

.tsc-details-hero {
	position: relative;
	overflow: hidden;
	border-radius: 1rem;
	margin-bottom: 1rem;
	border: 1px solid rgb(63 63 70 / 0.55);
	background: rgb(9 9 11);
	min-height: 18rem;
}

.tsc-details-hero-backdrop {
	position: absolute;
	inset: 0;
	background-image: var(--tsc-details-cover);
	background-size: cover;
	background-position: center top;
	filter: blur(28px) saturate(1.2);
	transform: scale(1.15);
	opacity: 0.45;
}

.tsc-details-hero-overlay {
	position: absolute;
	inset: 0;
	background:
		linear-gradient(105deg, rgb(9 9 11 / 0.97) 0%, rgb(9 9 11 / 0.82) 42%, rgb(9 9 11 / 0.55) 100%),
		linear-gradient(0deg, rgb(9 9 11 / 0.9) 0%, transparent 45%);
}

.tsc-details-hero-inner {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	gap: 1.5rem;
	align-items: start;
	padding: 1.5rem;
}

.tsc-details-hero-poster {
	flex-shrink: 0;
	align-self: start;
}

.tsc-details-poster-link {
	display: block;
	position: relative;
	width: 11rem;
	border-radius: 0.75rem;
	overflow: hidden;
	aspect-ratio: 2 / 3;
	box-shadow:
		0 20px 50px rgb(0 0 0 / 0.65),
		0 0 0 1px rgb(255 255 255 / 0.06) inset;
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.tsc-details-poster-link:hover {
	transform: translateY(-3px) scale(1.02);
	box-shadow:
		0 28px 60px rgb(0 0 0 / 0.7),
		0 0 24px var(--tsc-details-glow);
}

.tsc-details-poster-img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.tsc-details-poster-shine {
	position: absolute;
	inset: 0;
	background: linear-gradient(135deg, rgb(255 255 255 / 0.12), transparent 50%);
	pointer-events: none;
}

.tsc-details-poster-frame {
	position: absolute;
	inset: -2px;
	border-radius: 0.8rem;
	border: 1px solid rgb(251 146 60 / 0.35);
	pointer-events: none;
}

.tsc-details-hero-main {
	min-width: 0;
	padding-bottom: 0.25rem;
}

.tsc-details-hero-meta-top {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
	margin-bottom: 0.65rem;
}

.tsc-details-cat-pill {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.25rem 0.6rem;
	font-size: 0.6875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	border-radius: 999px;
	border: 1px solid rgb(251 146 60 / 0.3);
	background: rgb(251 146 60 / 0.1);
	color: rgb(251 191 36);
}

.tsc-details-badge {
	display: inline-flex;
	align-items: center;
	padding: 0.2rem 0.5rem;
	font-size: 0.625rem;
	font-weight: 700;
	border-radius: 0.3rem;
	border: 1px solid rgb(63 63 70 / 0.55);
	background: rgb(9 9 11 / 0.6);
	color: rgb(212 212 216);
}

.tsc-details-badge--gu { color: rgb(248 113 113); border-color: rgb(239 68 68 / 0.35); }
.tsc-details-badge--ou { color: rgb(94 234 212); border-color: rgb(45 212 191 / 0.35); }
.tsc-details-badge--dead { color: rgb(161 161 170); }

.tsc-details-hero-title {
	margin: 0;
	font-size: clamp(0.9rem, 1.8vw, 1.2rem);
	font-weight: 800;
	line-height: 1.35;
	letter-spacing: 0.01em;
	color: rgb(250 250 250);
	text-shadow: 0 2px 20px rgb(0 0 0 / 0.5);
	word-break: break-word;
	overflow-wrap: anywhere;
	hyphens: auto;
	max-width: 100%;
}

.tsc-details-hero-lang {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	margin-top: 0.5rem;
	font-size: 0.75rem;
	color: rgb(161 161 170);
}

.tsc-details-hero-lang .tsc-torrent-flag,
.tsc-details-hero-lang .tsc-flag-unicode {
	margin-top: 0;
}

.tsc-details-stat-strip {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
	margin-top: 1rem;
}

.tsc-details-stat {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	padding: 0.45rem 0.65rem;
	border-radius: 0.5rem;
	border: 1px solid rgb(63 63 70 / 0.5);
	background: rgb(24 24 27 / 0.65);
	min-width: 5.5rem;
}

.tsc-details-stat-icon {
	color: var(--tsc-details-accent);
}

.tsc-details-stat-body {
	display: flex;
	flex-direction: column;
	gap: 0.1rem;
}

.tsc-details-stat-label {
	font-size: 0.5625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(113 113 122);
}

.tsc-details-stat-value {
	font-size: 0.8125rem;
	font-weight: 700;
	color: rgb(244 244 245);
}

.tsc-details-stat--seed .tsc-details-stat-icon { color: rgb(74 222 128); }
.tsc-details-stat--leech .tsc-details-stat-icon { color: rgb(248 113 113); }

.tsc-details-hero-cta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.65rem;
	margin-top: 0.85rem;
	margin-bottom: 0.15rem;
}

.tsc-details-download-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.55rem;
	padding: 0.7rem 1.25rem;
	font-size: 0.875rem;
	font-weight: 700;
	color: rgb(9 9 11);
	text-decoration: none;
	border-radius: 0.6rem;
	background: linear-gradient(135deg, rgb(251 146 60), rgb(234 88 12));
	box-shadow: 0 8px 24px rgb(251 146 60 / 0.35);
	transition: filter 0.15s ease, transform 0.15s ease;
}

.tsc-details-download-btn--secondary {
	color: rgb(9 9 11);
	background: linear-gradient(135deg, rgb(96 165 250), rgb(37 99 235));
	box-shadow: 0 8px 24px rgb(59 130 246 / 0.35);
	border: none;
}

.tsc-details-download-btn--secondary:hover {
	filter: brightness(1.08);
	transform: translateY(-1px);
	color: rgb(9 9 11);
}

.tsc-details-download-btn:hover {
	filter: brightness(1.08);
	transform: translateY(-1px);
	color: rgb(9 9 11);
}

.tsc-details-actions-wrap {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	grid-template-areas:
		"actions thanks-btn"
		"thanks-list thanks-list";
	align-items: center;
	gap: 0.5rem 1rem;
	margin-bottom: 0.5rem;
	padding-bottom: 0.85rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.6);
}

.tsc-details-actions {
	grid-area: actions;
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	align-items: center;
	padding: 0.85rem 0 0;
}

.tsc-details-thanks {
	display: contents;
}

.tsc-details-thanks-form {
	display: contents;
}

.tsc-details-thanks-toolbar {
	grid-area: thanks-btn;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-end;
	gap: 0.5rem;
	padding-top: 0.85rem;
}

#tsc-details-thanks-list {
	grid-area: thanks-list;
	width: 100%;
}

.tsc-details-action-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.45rem 0.75rem;
	font-size: 0.75rem;
	font-weight: 600;
	color: rgb(212 212 216);
	text-decoration: none;
	border-radius: 0.5rem;
	border: 1px solid rgb(63 63 70 / 0.55);
	background: rgb(9 9 11 / 0.55);
	transition: color 0.15s ease, border-color 0.15s ease, background 0.15s ease;
}

.tsc-details-action-btn:hover {
	color: var(--tsc-details-accent);
	border-color: rgb(251 146 60 / 0.4);
	background: rgb(39 39 42);
}

.tsc-details-action-btn--accent:hover { color: rgb(251 191 36); }
.tsc-details-action-btn--danger:hover { color: rgb(248 113 113); border-color: rgb(239 68 68 / 0.4); }

.tsc-details-thanks-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.45rem 0.85rem;
	font-size: 0.75rem;
	font-weight: 700;
	color: rgb(255 228 230);
	background: linear-gradient(135deg, rgb(225 29 72), rgb(190 18 60));
	border: 1px solid rgb(251 113 133 / 0.45);
	border-radius: 999px;
	cursor: pointer;
	box-shadow: 0 6px 20px rgb(225 29 72 / 0.28);
	transition: transform 0.15s ease, box-shadow 0.15s ease, filter 0.15s ease;
}

.tsc-details-thanks-btn:hover {
	filter: brightness(1.06);
	transform: translateY(-1px);
	box-shadow: 0 8px 24px rgb(225 29 72 / 0.35);
}

.tsc-details-thanks-panel {
	width: 100%;
	padding: 0.8rem 0.95rem;
	border-radius: 0.75rem;
	border: 1px solid rgb(251 113 133 / 0.28);
	background:
		linear-gradient(135deg, rgb(251 113 133 / 0.1), rgb(9 9 11 / 0.45)),
		radial-gradient(ellipse 80% 120% at 0% 0%, rgb(251 113 133 / 0.14), transparent 55%);
	box-shadow: 0 10px 32px -18px rgb(225 29 72 / 0.45);
}

.tsc-details-thanks-panel--empty {
	border-style: dashed;
	border-color: rgb(63 63 70 / 0.65);
	background: rgb(9 9 11 / 0.35);
	box-shadow: none;
}

.tsc-details-thanks-head {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.45rem;
	margin-bottom: 0.65rem;
	padding-bottom: 0.55rem;
	border-bottom: 1px solid rgb(251 113 133 / 0.2);
}

.tsc-details-thanks-head-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.65rem;
	height: 1.65rem;
	border-radius: 50%;
	color: rgb(251 113 133);
	background: rgb(251 113 133 / 0.16);
	box-shadow: 0 0 18px rgb(251 113 133 / 0.25);
	animation: tsc-details-thanks-heartbeat 2.4s ease-in-out infinite;
}

@keyframes tsc-details-thanks-heartbeat {
	0%, 100% { transform: scale(1); }
	14% { transform: scale(1.12); }
	28% { transform: scale(1); }
}

.tsc-details-thanks-head-label {
	font-size: 0.8125rem;
	font-weight: 800;
	letter-spacing: 0.02em;
	text-transform: uppercase;
	color: rgb(251 113 133);
}

.tsc-details-thanks-count {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 1.45rem;
	height: 1.45rem;
	padding: 0 0.4rem;
	border-radius: 999px;
	font-size: 0.6875rem;
	font-weight: 800;
	color: rgb(255 241 242);
	background: rgb(225 29 72);
	box-shadow: 0 0 12px rgb(225 29 72 / 0.35);
}

.tsc-details-thanks-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
}

.tsc-details-thanks-chip {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.38rem 0.72rem 0.38rem 0.55rem;
	border-radius: 999px;
	border: 1px solid rgb(251 113 133 / 0.3);
	background: rgb(24 24 27 / 0.72);
	text-decoration: none;
	transition: transform 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
}

.tsc-details-thanks-chip:hover {
	transform: translateY(-1px);
	border-color: rgb(251 113 133 / 0.55);
	background: rgb(39 39 42 / 0.88);
	box-shadow: 0 6px 18px rgb(225 29 72 / 0.2);
}

.tsc-details-thanks-chip-heart {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: rgb(251 113 133);
	filter: drop-shadow(0 0 6px rgb(251 113 133 / 0.45));
}

.tsc-details-thanks-chip-name {
	font-size: 0.8125rem;
	font-weight: 700;
}

.tsc-details-thanks-chip--new {
	animation: tsc-details-thanks-chip-pop 0.65s ease-out;
}

@keyframes tsc-details-thanks-chip-pop {
	0% { transform: scale(0.85); opacity: 0.4; }
	60% { transform: scale(1.05); }
	100% { transform: scale(1); opacity: 1; }
}

.tsc-details-thanks-empty {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	font-size: 0.8125rem;
	font-style: italic;
	color: rgb(113 113 122);
	text-align: center;
}

.tsc-details-thanks-empty .tsc-icon {
	color: rgb(82 82 91);
}

#tsc-details-thanks-list.tsc-details-thanks-list--updated .tsc-details-thanks-panel--active {
	animation: tsc-details-thanks-flash 1.8s ease-out;
}

@keyframes tsc-details-thanks-flash {
	0% { box-shadow: 0 0 0 2px rgb(251 113 133 / 0.65), 0 0 28px rgb(251 113 133 / 0.25); }
	100% { box-shadow: 0 10px 32px -18px rgb(225 29 72 / 0.45); }
}

.tsc-details-thanks-btn.is-loading {
	opacity: 0.65;
	pointer-events: none;
}

.tsc-details-wget {
	margin-bottom: 1rem;
}

.tsc-details-wget-label {
	display: flex;
	align-items: center;
	gap: 0.35rem;
	font-size: 0.6875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: rgb(161 161 170);
	margin-bottom: 0.35rem;
}

.tsc-details-wget-input {
	width: 100%;
	padding: 0.5rem 0.65rem;
	font-size: 0.6875rem;
	font-family: ui-monospace, monospace;
	color: rgb(212 212 216);
	background: rgb(9 9 11);
	border: 1px solid rgb(63 63 70);
	border-radius: 0.5rem;
}

.tsc-details-hash {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.65rem;
	padding: 0.65rem 0.85rem;
	margin-bottom: 1rem;
	border-radius: 0.5rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.55);
}

.tsc-details-hash-label {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	font-size: 0.6875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: rgb(161 161 170);
}

.tsc-details-hash-value {
	font-size: 0.6875rem;
	font-family: ui-monospace, monospace;
	color: rgb(212 212 216);
	word-break: break-all;
}

.tsc-details-mod-panel,
.tsc-details-pending {
	padding: 1rem;
	margin-bottom: 1rem;
	border-radius: 0.75rem;
	border: 1px solid rgb(239 68 68 / 0.3);
	background: rgb(239 68 68 / 0.06);
}

.tsc-details-pending {
	display: flex;
	align-items: flex-start;
	gap: 0.75rem;
	border-color: rgb(250 204 21 / 0.3);
	background: rgb(250 204 21 / 0.06);
	color: rgb(212 212 216);
	font-size: 0.8125rem;
}

.tsc-details-mod-title {
	display: flex;
	align-items: center;
	gap: 0.35rem;
	font-size: 0.75rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: rgb(252 165 165);
	margin-bottom: 0.5rem;
}

.tsc-details-mod-body {
	font-size: 0.8125rem;
	color: rgb(212 212 216);
}

.tsc-details-mod-link {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	margin-right: 0.75rem;
	font-size: 0.75rem;
	font-weight: 600;
	color: rgb(251 146 60);
	text-decoration: none;
}

.tsc-details-mod-link--primary { color: rgb(74 222 128); }

.tsc-details-meta-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(14rem, 1fr));
	gap: 0.65rem;
}

.tsc-details-meta-item {
	padding: 0.65rem 0.75rem;
	border-radius: 0.5rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: linear-gradient(160deg, rgb(24 24 27 / 0.55), rgb(9 9 11 / 0.35));
}

.tsc-details-meta-label {
	display: flex;
	align-items: center;
	gap: 0.35rem;
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(113 113 122);
	margin-bottom: 0.3rem;
}

.tsc-details-meta-label .tsc-icon { color: var(--tsc-details-accent); }

.tsc-details-meta-value {
	font-size: 0.8125rem;
	color: rgb(228 228 231);
	line-height: 1.45;
	word-break: break-word;
}

.tsc-details-meta-value a { color: rgb(251 146 60); }

.tsc-details-accent { color: rgb(251 146 60); }
.tsc-details-ok { color: rgb(74 222 128); }
.tsc-details-bad { color: rgb(248 113 113); }
.tsc-details-muted { color: rgb(113 113 122); }

.tsc-details-team-banner {
	max-width: 100%;
	border-radius: 0.375rem;
	margin-bottom: 0.35rem;
}

.tsc-details-collapsible {
	border: 1px solid rgb(39 39 42 / 0.65);
	border-radius: 0.6rem;
	margin-bottom: 0.65rem;
	overflow: hidden;
	background: rgb(9 9 11 / 0.4);
}

.tsc-details-accordion {
	border: 1px solid rgb(39 39 42 / 0.65);
	border-radius: 0.65rem;
	margin-top: 0.5rem;
	overflow: visible;
	background: rgb(9 9 11 / 0.35);
}

.tsc-details-accordion-summary {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	padding: 0.8rem 0.95rem;
	font-size: 0.8125rem;
	font-weight: 600;
	color: rgb(212 212 216);
	cursor: pointer;
	list-style: none;
	user-select: none;
	transition: background 0.15s ease, color 0.15s ease;
}

.tsc-details-accordion-summary::-webkit-details-marker {
	display: none;
}

.tsc-details-accordion-summary:hover {
	background: rgb(39 39 42 / 0.45);
	color: rgb(251 146 60);
}

.tsc-details-accordion[open] > .tsc-details-accordion-summary {
	border-bottom: 1px solid rgb(39 39 42 / 0.55);
	background: rgb(24 24 27 / 0.55);
	color: rgb(251 191 36);
}

.tsc-details-accordion-chevron {
	margin-left: auto;
	transition: transform 0.2s ease;
	opacity: 0.7;
}

.tsc-details-accordion[open] .tsc-details-accordion-chevron {
	transform: rotate(180deg);
}

.tsc-details-accordion-body {
	padding: 0.85rem 0.75rem 1rem;
	overflow: visible;
	min-width: 0;
}

.tsc-details-accordion-body .tsc-details-files,
.tsc-details-accordion-body .tsc-details-peers,
.tsc-details-accordion-body .tsc-details-legacy-wrap {
	margin-top: 0;
}

.tsc-details-mod-tools {
	margin: 0.75rem 0 0;
	padding-top: 0.65rem;
	border-top: 1px solid rgb(39 39 42 / 0.45);
}

.tsc-page-details .tsc-index-block--details {
	overflow: hidden;
}

.tsc-page-details .tsc-index-section-body--details {
	overflow: visible;
}

.tsc-page-details .tsc-index-section-header,
.tsc-page-comment .tsc-index-section-header {
	border-top-left-radius: 0.75rem;
	border-top-right-radius: 0.75rem;
}

.tsc-page-details .tsc-index-block--details > .tsc-index-section-body:last-child,
.tsc-page-comment .tsc-index-block--details > .tsc-index-section-body:last-child {
	border-bottom-left-radius: 0.75rem;
	border-bottom-right-radius: 0.75rem;
}

.tsc-details-collapsible-trigger {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	padding: 0.7rem 0.9rem;
	font-size: 0.8125rem;
	font-weight: 600;
	color: rgb(212 212 216);
	cursor: pointer;
	list-style: none;
	user-select: none;
}

.tsc-details-collapsible-trigger::-webkit-details-marker { display: none; }

.tsc-details-collapsible-chevron {
	margin-left: auto;
	transition: transform 0.2s ease;
	opacity: 0.6;
}

.tsc-details-collapsible[open] .tsc-details-collapsible-chevron {
	transform: rotate(180deg);
}

.tsc-details-collapsible-body {
	padding: 0 0.9rem 0.9rem;
	font-size: 0.8125rem;
	line-height: 1.6;
	color: rgb(212 212 216);
}

.tsc-details-descr-inner {
	max-height: 28rem;
	overflow-y: auto;
	padding-right: 0.25rem;
}

.tsc-details-youtube {
	position: relative;
	width: 100%;
	aspect-ratio: 16 / 9;
	border-radius: 0.5rem;
	overflow: hidden;
	background: rgb(0 0 0);
}

.tsc-details-youtube iframe {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	border: 0;
}

.tsc-details-description-panel {
	border-radius: 0.75rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: linear-gradient(160deg, rgb(24 24 27 / 0.65), rgb(9 9 11 / 0.45));
	overflow: hidden;
}

.tsc-details-description-header {
	display: flex;
	align-items: center;
	gap: 0.4rem;
	padding: 0.65rem 0.9rem;
	font-size: 0.6875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(161 161 170);
	border-bottom: 1px solid rgb(39 39 42 / 0.55);
	background: rgb(9 9 11 / 0.35);
}

.tsc-details-description-body {
	padding: 1rem 0.9rem;
	font-size: 0.8125rem;
	line-height: 1.65;
	color: rgb(212 212 216);
	max-height: none;
}

.tsc-details-description-body .tsc-markdown-body--vorlage {
	font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "TSC LineDraw", monospace;
	font-size: 0.8125rem;
	line-height: 1.55;
}

.tsc-details-description-body .tsc-md-vorlage-section {
	margin: 0.85rem 0 0.4rem;
	padding: 0.35rem 0.55rem;
	font-size: 0.75rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(251 146 60);
	border-left: 3px solid rgb(251 146 60 / 0.55);
	background: rgb(251 146 60 / 0.08);
	border-radius: 0 0.35rem 0.35rem 0;
}

.tsc-details-description-body .tsc-md-vorlage-field {
	margin: 0.12rem 0;
	color: rgb(161 161 170);
	white-space: pre-wrap;
	word-break: break-word;
}

.tsc-details-description-body .tsc-markdown-body--vorlage p {
	margin: 0.2rem 0;
}

.tsc-details-description-body img {
	max-width: min(100%, 280px);
	border-radius: 0.375rem;
}

.tsc-details-files {
	border-radius: 0.75rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: linear-gradient(160deg, rgb(24 24 27 / 0.72), rgb(9 9 11 / 0.5));
	overflow: hidden;
	box-shadow: 0 16px 40px rgb(0 0 0 / 0.28);
}

.tsc-details-files-stats {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	padding: 0.75rem 0.9rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.55);
	background: rgb(9 9 11 / 0.4);
}

.tsc-details-files-stat {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.35rem 0.6rem;
	font-size: 0.6875rem;
	color: rgb(161 161 170);
	border-radius: 0.35rem;
	border: 1px solid rgb(63 63 70 / 0.45);
	background: rgb(24 24 27 / 0.55);
}

.tsc-details-files-stat strong {
	color: rgb(244 244 245);
}

.tsc-details-files-head {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 5.5rem 6.5rem;
	gap: 0.65rem;
	padding: 0.55rem 0.9rem;
	font-size: 0.5625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: rgb(113 113 122);
	border-bottom: 1px solid rgb(39 39 42 / 0.55);
	background: rgb(9 9 11 / 0.55);
	border-top-left-radius: 0.75rem;
	border-top-right-radius: 0.75rem;
}

.tsc-details-files-list {
	max-height: 28rem;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
}

.tsc-details-file-row {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 5.5rem 6.5rem;
	gap: 0.65rem;
	align-items: center;
	padding: 0.55rem 0.9rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.35);
	transition: background 0.15s ease;
}

.tsc-details-file-row:hover {
	background: rgb(39 39 42 / 0.35);
}

.tsc-details-file-row:last-child {
	border-bottom: none;
	border-bottom-left-radius: 0.75rem;
	border-bottom-right-radius: 0.75rem;
}

.tsc-details-file-main {
	display: flex;
	align-items: flex-start;
	gap: 0.45rem;
	min-width: 0;
}

.tsc-details-file-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 1.5rem;
	height: 1.5rem;
	flex-shrink: 0;
	border-radius: 0.35rem;
	background: rgb(251 146 60 / 0.12);
	color: rgb(251 146 60);
}

.tsc-details-file-path-wrap {
	min-width: 0;
	font-size: 0.75rem;
	line-height: 1.4;
	color: rgb(212 212 216);
	word-break: break-all;
}

.tsc-details-file-dir {
	color: rgb(113 113 122);
	font-size: 0.6875rem;
}

.tsc-details-file-name {
	font-weight: 600;
	color: rgb(228 228 231);
}

.tsc-details-file-size {
	font-size: 0.6875rem;
	font-weight: 600;
	color: rgb(161 161 170);
	text-align: right;
	white-space: nowrap;
}

.tsc-details-file-share {
	display: flex;
	align-items: center;
	gap: 0.35rem;
}

.tsc-details-file-bar {
	flex: 1;
	height: 0.35rem;
	border-radius: 999px;
	background: rgb(39 39 42);
	overflow: hidden;
}

.tsc-details-file-bar span {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, rgb(251 146 60), rgb(234 88 12));
}

.tsc-details-file-pct {
	font-size: 0.5625rem;
	font-weight: 700;
	color: rgb(113 113 122);
	min-width: 2.25rem;
	text-align: right;
}

/* File tree showcase */
.tsc-details-files--tree .tsc-details-files-toolbar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.65rem;
	padding: 0.7rem 0.9rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.55);
	background: rgb(9 9 11 / 0.35);
}

.tsc-details-files-search-wrap {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	flex: 1 1 14rem;
	min-width: 0;
	padding: 0.45rem 0.7rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(24 24 27 / 0.75);
	color: rgb(113 113 122);
}

.tsc-details-files-search {
	flex: 1;
	min-width: 0;
	border: none;
	background: transparent;
	color: rgb(228 228 231);
	font-size: 0.75rem;
	outline: none;
}

.tsc-details-files-search::placeholder {
	color: rgb(113 113 122);
}

.tsc-details-files-toolbar-actions {
	display: inline-flex;
	flex-wrap: wrap;
	gap: 0.4rem;
}

.tsc-details-files-tree-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	padding: 0.4rem 0.65rem;
	border-radius: 0.5rem;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(39 39 42 / 0.65);
	color: rgb(212 212 216);
	font-size: 0.6875rem;
	font-weight: 600;
	cursor: pointer;
	transition: color 0.15s ease, border-color 0.15s ease, background 0.15s ease, transform 0.15s ease;
}

.tsc-details-files-tree-btn:hover {
	color: rgb(251 191 36);
	border-color: rgb(251 146 60 / 0.45);
	background: rgb(251 146 60 / 0.1);
	transform: translateY(-1px);
}

.tsc-details-files-head--tree {
	grid-template-columns: minmax(0, 1fr) 5.5rem 7.5rem;
}

/* ASCII file tree (WoT-style, TSC themed) */
.tsc-ftree-viewport {
	max-height: 32rem;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
	padding: 0;
	background:
		linear-gradient(180deg, rgb(9 9 11 / 0.35), transparent 2.5rem),
		radial-gradient(120% 80% at 0% 0%, rgb(251 146 60 / 0.04), transparent 55%);
}

.tsc-ftree {
	--tsc-ftree-row-h: 1.5rem;
	--tsc-ftree-cols: auto 1.25rem minmax(0, 1fr) 5.75rem 8.25rem 4.5rem 1.35rem;
	min-width: min(100%, 48rem);
	font-size: 0.8125rem;
	line-height: var(--tsc-ftree-row-h);
}

.tsc-ftree-head,
.tsc-ftree-line {
	display: grid;
	grid-template-columns: var(--tsc-ftree-cols);
	align-items: stretch;
	column-gap: 0;
}

.tsc-ftree-head {
	position: sticky;
	top: 0;
	z-index: 2;
	height: var(--tsc-ftree-row-h);
	padding: 0 0.5rem 0 0;
	margin-bottom: 0;
	border-bottom: 1px solid rgb(63 63 70 / 0.55);
	background: rgb(9 9 11 / 0.94);
	backdrop-filter: blur(8px);
	font-size: 0.5625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: rgb(113 113 122);
}

.tsc-ftree-head-icon,
.tsc-ftree-head-name,
.tsc-ftree-head-meta,
.tsc-ftree-head-toggle,
.tsc-ftree-name,
.tsc-ftree-meta,
.tsc-ftree-toggle {
	padding-left: 0.5rem;
}

.tsc-ftree-head-icon,
.tsc-ftree-icon {
	padding-left: 0;
}

.tsc-ftree-head-meta,
.tsc-ftree-meta {
	justify-self: end;
	text-align: right;
}

.tsc-ftree-head-meta--count,
.tsc-ftree-meta--count {
	justify-self: center;
	text-align: center;
}

.tsc-ftree-line {
	height: var(--tsc-ftree-row-h);
	min-height: 0;
	padding: 0;
	margin: 0;
	border-radius: 0;
	transition: background 0.12s ease, color 0.12s ease;
}

.tsc-ftree-line:hover {
	background: rgb(39 39 42 / 0.42);
}

.tsc-ftree-line--folder {
	list-style: none;
	cursor: pointer;
	padding: 0;
	margin: 0;
}

.tsc-ftree-line--folder::-webkit-details-marker {
	display: none;
}

.tsc-ftree-folder[open] > .tsc-ftree-line--folder {
	background: rgb(251 146 60 / 0.08);
	color: rgb(253 186 116);
}

/* Monospace ASCII tree (WoT-style) */
.tsc-ftree-head-glyphs {
	margin: 0;
	padding: 0;
}

.tsc-ftree-glyphs {
	display: inline-block;
	flex-shrink: 0;
	align-self: stretch;
	height: var(--tsc-ftree-row-h);
	margin: 0;
	padding: 0;
	font-family: ui-monospace, "Cascadia Mono", "Segoe UI Mono", "SF Mono", Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
	font-size: 0.8125rem;
	font-weight: 400;
	font-variant-numeric: tabular-nums;
	line-height: var(--tsc-ftree-row-h);
	letter-spacing: 0;
	white-space: pre;
	color: rgb(113 113 122);
	user-select: none;
	vertical-align: top;
}

.tsc-ftree-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.25rem;
	height: 1.25rem;
	align-self: center;
	flex-shrink: 0;
	border-radius: 0.25rem;
	color: rgb(251 146 60);
}

.tsc-ftree-icon--folder {
	position: relative;
	color: rgb(250 204 21);
}

.tsc-ftree-icon--folder .tsc-ftree-icon-open {
	display: none;
}

.tsc-ftree-folder[open] .tsc-ftree-icon--folder .tsc-ftree-icon-closed {
	display: none;
}

.tsc-ftree-folder[open] .tsc-ftree-icon--folder .tsc-ftree-icon-open {
	display: inline-flex;
}

.tsc-ftree-name {
	display: block;
	min-width: 0;
	max-width: 100%;
	align-self: center;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	font-weight: 600;
	color: rgb(228 228 231);
}

.tsc-ftree-line--file .tsc-ftree-name {
	font-weight: 500;
}

.tsc-ftree-meta {
	display: inline-flex;
	align-items: center;
	justify-content: flex-end;
	align-self: center;
	height: calc(var(--tsc-ftree-row-h) - 0.25rem);
	padding: 0 0.35rem;
	border-radius: 0.3rem;
	white-space: nowrap;
	font-variant-numeric: tabular-nums;
}

.tsc-ftree-meta--count {
	justify-content: center;
	font-size: 0.625rem;
	font-weight: 600;
	color: rgb(161 161 170);
	background: rgb(39 39 42 / 0.72);
	border: 1px solid rgb(63 63 70 / 0.55);
}

.tsc-ftree-line--file .tsc-ftree-meta--count {
	color: rgb(82 82 91);
	background: transparent;
	border-color: transparent;
}

.tsc-ftree-meta--size {
	font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
	font-size: 0.6875rem;
	font-weight: 600;
	color: rgb(212 212 216);
	background: rgb(24 24 27 / 0.65);
	border: 1px solid rgb(63 63 70 / 0.45);
}

.tsc-ftree-meta--pct {
	font-size: 0.625rem;
	font-weight: 700;
	color: rgb(251 191 36);
	background: rgb(251 146 60 / 0.12);
	border: 1px solid rgb(251 146 60 / 0.24);
	min-width: 3.25rem;
	justify-content: center;
}

.tsc-ftree-line--folder .tsc-ftree-meta--pct {
	color: rgb(82 82 91);
	background: transparent;
	border-color: transparent;
}

.tsc-ftree-toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.25rem;
	height: 1.25rem;
	align-self: center;
	justify-self: end;
	color: rgb(113 113 122);
	transition: transform 0.18s ease, color 0.15s ease;
}

.tsc-ftree-toggle--spacer {
	visibility: hidden;
	pointer-events: none;
}

.tsc-ftree-folder[open] > .tsc-ftree-line--folder .tsc-ftree-toggle {
	transform: rotate(90deg);
	color: rgb(251 146 60);
}

.tsc-ftree-children {
	margin: 0;
	padding: 0;
}

.tsc-ftree-folder {
	margin: 0;
	padding: 0;
}

.tsc-ftree-folder > summary {
	margin: 0;
	padding: 0;
}

.tsc-ftree-folder + .tsc-ftree-folder,
.tsc-ftree-folder + .tsc-ftree-line,
.tsc-ftree-line + .tsc-ftree-folder,
.tsc-ftree-line + .tsc-ftree-line {
	margin: 0;
}

.tsc-details-files-tree {
	padding: 0;
}

/* Legacy tree (fallback) */
.tsc-details-tree-folder,
.tsc-details-tree-file {
	margin: 0;
}

.tsc-details-tree-folder {
	border-bottom: 1px solid rgb(39 39 42 / 0.22);
}

.tsc-details-tree-folder:last-child {
	border-bottom: none;
}

.tsc-details-tree-folder-head {
	padding-right: 0.75rem;
	grid-template-columns: auto minmax(0, 1fr) auto auto;
}

.tsc-details-tree-file-head {
	grid-template-columns: auto minmax(0, 1fr) 5.5rem 7.5rem auto;
}

.tsc-details-tree-folder-head,
.tsc-details-tree-file-head {
	display: grid;
	gap: 0.45rem;
	align-items: center;
	padding: 0.5rem 0.9rem 0.5rem calc(0.9rem + var(--tree-depth, 0rem));
	list-style: none;
	cursor: pointer;
	transition: background 0.15s ease, color 0.15s ease;
}

.tsc-details-tree-folder-head:hover,
.tsc-details-tree-file-head:hover {
	background: rgb(39 39 42 / 0.38);
}

.tsc-details-tree-folder[open] > .tsc-details-tree-folder-head {
	background: rgb(251 146 60 / 0.08);
	color: rgb(251 191 36);
}

.tsc-details-tree-folder-head::-webkit-details-marker,
.tsc-details-tree-file-head::-webkit-details-marker {
	display: none;
}

.tsc-details-tree-folder-icon,
.tsc-details-tree-file-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.45rem;
	height: 1.45rem;
	border-radius: 0.35rem;
	flex-shrink: 0;
}

.tsc-details-tree-folder-icon {
	background: rgb(251 146 60 / 0.12);
	color: rgb(251 146 60);
}

.tsc-details-tree-folder-icon--open {
	display: none;
}

.tsc-details-tree-folder[open] .tsc-details-tree-folder-icon--closed {
	display: none;
}

.tsc-details-tree-folder[open] .tsc-details-tree-folder-icon--open {
	display: inline-flex;
}

.tsc-details-tree-file-icon {
	background: rgb(96 165 250 / 0.12);
	color: rgb(96 165 250);
}

.tsc-details-tree-folder-name,
.tsc-details-tree-file-name {
	min-width: 0;
	font-size: 0.75rem;
	font-weight: 600;
	color: rgb(228 228 231);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.tsc-details-tree-folder-meta {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	font-size: 0.625rem;
	color: rgb(113 113 122);
}

.tsc-details-tree-folder-count {
	padding: 0.12rem 0.4rem;
	border-radius: 999px;
	background: rgb(39 39 42 / 0.75);
}

.tsc-details-tree-folder-size {
	font-weight: 700;
	color: rgb(161 161 170);
}

.tsc-details-tree-folder-chevron,
.tsc-details-tree-file-chevron {
	display: inline-flex;
	color: rgb(113 113 122);
	transition: transform 0.2s ease, color 0.15s ease;
}

.tsc-details-tree-folder[open] .tsc-details-tree-folder-chevron {
	transform: rotate(90deg);
	color: rgb(251 146 60);
}

.tsc-details-tree-file-size {
	font-size: 0.6875rem;
	font-weight: 600;
	color: rgb(161 161 170);
	text-align: right;
	white-space: nowrap;
}

.tsc-details-tree-file-share {
	display: flex;
	align-items: center;
	gap: 0.35rem;
}

.tsc-details-tree-file[open] > .tsc-details-tree-file-head {
	background: rgb(96 165 250 / 0.08);
}

.tsc-details-tree-file[open] .tsc-details-tree-file-chevron {
	transform: rotate(180deg);
	color: rgb(96 165 250);
}

.tsc-details-tree-children {
	border-left: 1px dashed rgb(63 63 70 / 0.45);
	margin-left: calc(1.15rem + var(--tree-depth, 0rem));
}

.tsc-details-tree-file-inspect {
	padding: 0.55rem 0.9rem 0.8rem calc(1.2rem + var(--tree-depth, 0rem));
	border-top: 1px solid rgb(39 39 42 / 0.35);
	background: linear-gradient(180deg, rgb(9 9 11 / 0.35), rgb(9 9 11 / 0.15));
	animation: tsc-tree-inspect-in 0.25s ease;
}

@keyframes tsc-tree-inspect-in {
	from { opacity: 0; transform: translateY(-4px); }
	to { opacity: 1; transform: translateY(0); }
}

.tsc-details-tree-inspect-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.55rem 0.85rem;
}

.tsc-details-tree-inspect-item {
	display: flex;
	flex-direction: column;
	gap: 0.2rem;
	min-width: 0;
}

.tsc-details-tree-inspect-label {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	font-size: 0.5625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(113 113 122);
}

.tsc-details-tree-inspect-value {
	font-size: 0.6875rem;
	color: rgb(212 212 216);
	line-height: 1.45;
	word-break: break-all;
}

.tsc-details-tree-inspect-value code {
	font-family: ui-monospace, monospace;
	font-size: 0.625rem;
	color: rgb(228 228 231);
}

.tsc-details-files-empty--filter {
	margin: 0;
	padding: 1rem 0.9rem 1.2rem;
	text-align: center;
	font-size: 0.75rem;
	color: rgb(161 161 170);
}

/* Similar torrents showcase */
.tsc-details-similar-summary {
	margin: 0 0 0.65rem;
	font-size: 0.8125rem;
	color: rgb(212 212 216);
}

.tsc-details-similar {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
}

.tsc-details-similar-stats {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.tsc-details-similar-stat {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.35rem 0.6rem;
	font-size: 0.6875rem;
	color: rgb(161 161 170);
	border-radius: 0.35rem;
	border: 1px solid rgb(63 63 70 / 0.45);
	background: rgb(24 24 27 / 0.55);
}

.tsc-details-similar-stat strong {
	color: rgb(244 244 245);
}

.tsc-details-similar-table {
	min-width: 42rem;
}

.tsc-details-similar-name a {
	color: rgb(228 228 231);
	text-decoration: none;
	font-weight: 600;
}

.tsc-details-similar-name a:hover {
	color: rgb(251 146 60);
}

.tsc-details-similar-pill {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 1.65rem;
	padding: 0.12rem 0.4rem;
	border-radius: 999px;
	font-size: 0.625rem;
	font-weight: 700;
}

.tsc-details-similar-pill--seed {
	color: rgb(74 222 128);
	background: rgb(34 197 94 / 0.12);
	border: 1px solid rgb(34 197 94 / 0.25);
}

.tsc-details-similar-pill--leech {
	color: rgb(251 191 36);
	background: rgb(251 146 60 / 0.12);
	border: 1px solid rgb(251 146 60 / 0.25);
}

.tsc-details-similar-health {
	display: flex;
	align-items: center;
	gap: 0.4rem;
	min-width: 6.5rem;
}

.tsc-details-similar-health-bar {
	flex: 1;
	height: 0.35rem;
	border-radius: 999px;
	background: rgb(39 39 42);
	overflow: hidden;
}

.tsc-details-similar-health-bar span {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, rgb(34 197 94), rgb(74 222 128));
	box-shadow: 0 0 10px rgb(34 197 94 / 0.35);
}

.tsc-details-similar-health-label {
	font-size: 0.5625rem;
	font-weight: 700;
	color: rgb(113 113 122);
	min-width: 2rem;
	text-align: right;
}

.tsc-details-similar-row:hover td {
	background: rgb(39 39 42 / 0.32);
}

.tsc-details-peers {
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.tsc-details-peer-group {
	border-radius: 0.75rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: linear-gradient(160deg, rgb(24 24 27 / 0.72), rgb(9 9 11 / 0.5));
	overflow: hidden;
	box-shadow: 0 16px 40px rgb(0 0 0 / 0.28);
}

.tsc-details-peer-group--seed {
	border-color: rgb(34 197 94 / 0.22);
}

.tsc-details-peer-group--leech {
	border-color: rgb(248 113 113 / 0.22);
}

.tsc-details-peer-group-head {
	display: flex;
	align-items: center;
	gap: 0.45rem;
	padding: 0.7rem 0.9rem;
	font-size: 0.8125rem;
	font-weight: 700;
	color: rgb(212 212 216);
	border-bottom: 1px solid rgb(39 39 42 / 0.55);
	background: rgb(9 9 11 / 0.45);
}

.tsc-details-peer-group--seed .tsc-details-peer-group-head .tsc-icon {
	color: rgb(74 222 128);
}

.tsc-details-peer-group--leech .tsc-details-peer-group-head .tsc-icon {
	color: rgb(248 113 113);
}

.tsc-details-peer-count {
	margin-left: auto;
	padding: 0.15rem 0.45rem;
	font-size: 0.625rem;
	font-weight: 700;
	border-radius: 999px;
	background: rgb(39 39 42);
	color: rgb(161 161 170);
}

.tsc-details-peer-empty {
	padding: 1.25rem;
	text-align: center;
	font-size: 0.8125rem;
	color: rgb(113 113 122);
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.4rem;
}

.tsc-details-peer-table-wrap {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.tsc-details-table-shell {
	border-radius: 0.65rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.45);
	overflow: hidden;
	box-shadow: inset 0 1px 0 rgb(255 255 255 / 0.03);
}

.tsc-details-table-shell .tsc-details-peer-table-wrap {
	margin: 0;
}

.tsc-details-peer-table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	font-size: 0.6875rem;
	min-width: 52rem;
	background: transparent;
	border: none;
	border-radius: 0;
	margin: 0;
	box-shadow: none;
}

.tsc-details-peer-table thead tr th {
	padding: 0.6rem 0.65rem;
	font-size: 0.5625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(113 113 122);
	text-align: left;
	border-bottom: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.75);
	white-space: nowrap;
}

.tsc-details-peer-table thead tr th .tsc-icon {
	color: rgb(251 146 60 / 0.85);
	margin-right: 0.2rem;
}

.tsc-details-peer-table thead tr:first-child th:first-child {
	border-top-left-radius: 0.65rem;
}

.tsc-details-peer-table thead tr:first-child th:last-child {
	border-top-right-radius: 0.65rem;
}

.tsc-details-peer-table tbody tr:last-child td:first-child {
	border-bottom-left-radius: 0.65rem;
}

.tsc-details-peer-table tbody tr:last-child td:last-child {
	border-bottom-right-radius: 0.65rem;
}

.tsc-details-mod-traffic {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
}

.tsc-details-mod-table {
	min-width: 36rem;
}

.tsc-details-mod-user {
	min-width: 10rem;
}

.tsc-details-mod-user a {
	text-decoration: none;
}

.tsc-details-mod-master {
	display: inline-flex;
	align-items: center;
	gap: 0.2rem;
	margin-left: 0.35rem;
	font-size: 0.5625rem;
	font-weight: 700;
	color: rgb(250 204 21);
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.tsc-details-mod-row--low td,
.tsc-details-mod-low {
	color: rgb(248 113 113) !important;
}

.tsc-details-mod-totals {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.65rem;
}

.tsc-details-mod-total {
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
	padding: 0.75rem 0.9rem;
	border-radius: 0.6rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: linear-gradient(160deg, rgb(24 24 27 / 0.65), rgb(9 9 11 / 0.45));
}

.tsc-details-mod-total-label {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(113 113 122);
}

.tsc-details-mod-total-label .tsc-icon {
	color: rgb(251 146 60 / 0.85);
}

.tsc-details-mod-total-value {
	font-size: 1rem;
	font-weight: 800;
	color: rgb(244 244 245);
}

.tsc-page-details .tsc-table-scroll {
	border-radius: 0.65rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	overflow: hidden;
	background: rgb(9 9 11 / 0.45);
}

.tsc-page-details .tsc-table-scroll .tsc-data-table {
	border-radius: 0;
	border: none;
	margin: 0;
	box-shadow: none;
	background: transparent;
	border-collapse: separate;
	border-spacing: 0;
}

.tsc-page-details .tsc-data-table thead tr th {
	background: rgb(9 9 11 / 0.75);
	border-bottom: 1px solid rgb(39 39 42 / 0.65);
}

.tsc-page-details .tsc-data-table thead tr:first-child th:first-child {
	border-top-left-radius: 0.65rem;
}

.tsc-page-details .tsc-data-table thead tr:first-child th:last-child {
	border-top-right-radius: 0.65rem;
}

.tsc-page-details .tsc-data-table tbody tr:last-child td:first-child {
	border-bottom-left-radius: 0.65rem;
}

.tsc-page-details .tsc-data-table tbody tr:last-child td:last-child {
	border-bottom-right-radius: 0.65rem;
}

.tsc-details-peer-table tbody td {
	padding: 0.5rem 0.55rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.35);
	color: rgb(161 161 170);
	vertical-align: middle;
}

.tsc-details-peer-row:hover td {
	background: rgb(39 39 42 / 0.3);
}

.tsc-details-peer-row--self td {
	background: rgb(251 146 60 / 0.08);
}

.tsc-details-peer-user {
	min-width: 8rem;
}

.tsc-details-peer-user a {
	text-decoration: none;
}

.tsc-details-peer-ip {
	display: block;
	font-size: 0.5625rem;
	color: rgb(113 113 122);
	margin-top: 0.15rem;
	font-family: ui-monospace, monospace;
}

.tsc-details-peer-badge {
	display: inline-block;
	padding: 0.1rem 0.35rem;
	font-size: 0.5625rem;
	font-weight: 700;
	border-radius: 0.25rem;
}

.tsc-details-peer-badge--yes {
	color: rgb(74 222 128);
	background: rgb(34 197 94 / 0.12);
}

.tsc-details-peer-badge--no {
	color: rgb(248 113 113);
	background: rgb(239 68 68 / 0.1);
}

.tsc-details-peer-rate,
.tsc-details-peer-time {
	white-space: nowrap;
	font-size: 0.625rem;
}

.tsc-details-peer-progress {
	width: 3rem;
	height: 0.35rem;
	border-radius: 999px;
	background: rgb(39 39 42);
	overflow: hidden;
	margin: 0 auto;
}

.tsc-details-peer-progress span {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, rgb(74 222 128), rgb(34 197 94));
}

.tsc-details-peer-client {
	max-width: 10rem;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	font-size: 0.625rem;
	color: rgb(113 113 122);
}

.tsc-details-gallery {
	display: flex;
	flex-wrap: wrap;
	gap: 0.65rem;
	margin-bottom: 0.85rem;
	padding-bottom: 0.85rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.5);
}

.tsc-details-gallery img,
.tsc-details-gallery-img {
	width: 7.5rem;
	height: auto;
	border-radius: 0.5rem;
	border: 1px solid rgb(63 63 70 / 0.55);
	box-shadow: 0 8px 24px rgb(0 0 0 / 0.4);
	transition: transform 0.15s ease;
}

.tsc-details-gallery a:hover img {
	transform: scale(1.04);
}

.tsc-details-empty-hint {
	display: flex;
	align-items: center;
	gap: 0.4rem;
	margin: 0;
	font-size: 0.8125rem;
	color: rgb(113 113 122);
}

.tsc-details-toggle-link {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	margin-left: 0.35rem;
	font-size: 0.6875rem;
	font-weight: 600;
	color: rgb(251 146 60);
	text-decoration: none;
}

.tsc-details-reseed,
.tsc-details-snatchers,
.tsc-details-uploader {
	padding: 0.75rem 0;
	border-bottom: 1px solid rgb(39 39 42 / 0.45);
}

.tsc-details-reseed:last-child,
.tsc-details-snatchers:last-child,
.tsc-details-uploader:last-child { border-bottom: none; }

.tsc-details-reseed-label,
.tsc-details-snatchers-head {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.35rem;
	font-size: 0.75rem;
	font-weight: 700;
	color: rgb(161 161 170);
	margin-bottom: 0.4rem;
}

.tsc-details-snatchers-body,
.tsc-details-reseed-users {
	font-size: 0.8125rem;
	color: rgb(212 212 216);
	line-height: 1.55;
}

.tsc-details-reseed-form { margin-top: 0.5rem; }

.tsc-details-reseed-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.45rem 0.75rem;
	font-size: 0.75rem;
	font-weight: 600;
	color: rgb(212 212 216);
	background: rgb(39 39 42);
	border: 1px solid rgb(63 63 70);
	border-radius: 0.5rem;
	cursor: pointer;
}

.tsc-details-reseed-btn:disabled {
	opacity: 0.45;
	cursor: not-allowed;
}

.tsc-details-uploader {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.35rem;
	font-size: 0.8125rem;
	color: rgb(161 161 170);
}

.tsc-details-uploader a { color: rgb(251 146 60); }

.tsc-details-rating {
	padding: 0.5rem 0 0.75rem;
	border-bottom: none;
}

.tsc-details-rating-panel {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 0.85rem;
	padding: 1rem 1.1rem 1.1rem;
	border-radius: 0.85rem;
	border: 1px solid rgb(251 146 60 / 0.28);
	background:
		linear-gradient(145deg, rgb(39 39 42 / 0.55), rgb(9 9 11 / 0.82)),
		radial-gradient(circle at top right, rgb(251 146 60 / 0.12), transparent 55%);
	box-shadow:
		0 0 0 1px rgb(251 146 60 / 0.06) inset,
		0 18px 42px rgb(0 0 0 / 0.32);
	overflow: hidden;
}

.tsc-details-rating-panel-glow {
	position: absolute;
	inset: -40% auto auto -20%;
	width: 14rem;
	height: 14rem;
	border-radius: 50%;
	background: radial-gradient(circle, rgb(251 146 60 / 0.18), transparent 68%);
	pointer-events: none;
	animation: tsc-rating-glow-drift 8s ease-in-out infinite;
}

@keyframes tsc-rating-glow-drift {
	0%, 100% { transform: translate(0, 0) scale(1); opacity: 0.75; }
	50% { transform: translate(1.5rem, 0.75rem) scale(1.08); opacity: 1; }
}

.tsc-details-rating-head {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	gap: 0.75rem;
	align-items: center;
}

.tsc-details-rating-head-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2.35rem;
	height: 2.35rem;
	border-radius: 0.65rem;
	border: 1px solid rgb(251 146 60 / 0.35);
	background: linear-gradient(160deg, rgb(251 146 60 / 0.18), rgb(251 146 60 / 0.05));
	color: rgb(251 191 36);
	box-shadow: 0 0 18px rgb(251 146 60 / 0.15);
}

.tsc-details-rating-head-copy {
	display: flex;
	flex-direction: column;
	gap: 0.15rem;
	min-width: 0;
}

.tsc-details-rating-head-title {
	font-size: 0.8125rem;
	font-weight: 800;
	letter-spacing: 0.03em;
	color: rgb(244 244 245);
}

.tsc-details-rating-head-hint {
	font-size: 0.6875rem;
	color: rgb(161 161 170);
	line-height: 1.35;
}

.tsc-details-rating-score-ring {
	--rating-pct: 0%;
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 4.25rem;
	height: 4.25rem;
	border-radius: 50%;
	background:
		radial-gradient(circle at center, rgb(9 9 11 / 0.2) 58%, transparent 59%),
		conic-gradient(rgb(251 146 60) 0 var(--rating-pct), rgb(39 39 42) var(--rating-pct) 100%);
	padding: 0.2rem;
	box-shadow: 0 0 20px rgb(251 146 60 / 0.2);
	animation: tsc-rating-ring-pulse 4s ease-in-out infinite;
}

.tsc-details-rating-score-ring::before {
	content: "";
	position: absolute;
	inset: 0.28rem;
	border-radius: 50%;
	background: rgb(9 9 11 / 0.92);
	border: 1px solid rgb(63 63 70 / 0.65);
}

.tsc-details-rating-value,
.tsc-details-rating-max {
	position: relative;
	z-index: 1;
	line-height: 1;
}

.tsc-details-rating-value {
	font-size: 1.35rem;
	font-weight: 800;
	background: linear-gradient(135deg, rgb(253 224 71), rgb(251 146 60));
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}

.tsc-details-rating-max {
	margin-top: 0.1rem;
	font-size: 0.625rem;
	font-weight: 700;
	color: rgb(113 113 122);
}

@keyframes tsc-rating-ring-pulse {
	0%, 100% { box-shadow: 0 0 16px rgb(251 146 60 / 0.16); }
	50% { box-shadow: 0 0 26px rgb(251 146 60 / 0.32); }
}

.tsc-details-rating-meta {
	position: relative;
	z-index: 1;
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
}

.tsc-details-rating-chip {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	padding: 0.35rem 0.65rem;
	border-radius: 999px;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(24 24 27 / 0.75);
	font-size: 0.6875rem;
	font-weight: 600;
	color: rgb(212 212 216);
}

.tsc-details-rating-chip--ratio {
	border-color: rgb(251 146 60 / 0.28);
	color: rgb(251 191 36);
	background: rgb(251 146 60 / 0.08);
}

.tsc-details-rating-bar {
	position: relative;
	z-index: 1;
}

.tsc-details-rating-bar-track {
	position: relative;
	height: 0.45rem;
	border-radius: 999px;
	background: rgb(39 39 42);
	overflow: hidden;
	border: 1px solid rgb(63 63 70 / 0.55);
}

.tsc-details-rating-bar-fill {
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, rgb(234 88 12), rgb(251 191 36));
	box-shadow: 0 0 14px rgb(251 146 60 / 0.45);
	transition: width 0.55s cubic-bezier(0.22, 1, 0.36, 1);
}

.tsc-details-rating-bar-shine {
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, transparent, rgb(255 255 255 / 0.22), transparent);
	transform: translateX(-120%);
	animation: tsc-rating-bar-shine 3.5s ease-in-out infinite;
	pointer-events: none;
}

@keyframes tsc-rating-bar-shine {
	0%, 100% { transform: translateX(-120%); opacity: 0; }
	45% { opacity: 1; }
	70% { transform: translateX(120%); opacity: 0; }
}

.tsc-details-rating-interactive {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.35rem;
	padding: 0.55rem 0.35rem 0.2rem;
	border-radius: 0.65rem;
	border: 1px solid rgb(63 63 70 / 0.45);
	background: rgb(9 9 11 / 0.45);
}

.tsc-details-rating-stars-wrap {
	position: relative;
	width: min(100%, 13rem);
	height: 2.2rem;
	flex-shrink: 0;
}

.tsc-details-rating-stars {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.4rem;
	width: 100%;
	height: 100%;
	pointer-events: none;
}

.tsc-details-rating-stars--interactive {
	pointer-events: auto;
	cursor: default;
}

button.tsc-details-rating-star {
	border: none;
	background: none;
	padding: 0;
	margin: 0;
	line-height: 1;
	cursor: pointer;
	appearance: none;
	-webkit-appearance: none;
	color: inherit;
}

button.tsc-details-rating-star:disabled {
	cursor: default;
	pointer-events: none;
}

.tsc-details-rating-vote-meter {
	position: absolute;
	width: 0;
	height: 0;
	overflow: hidden;
	pointer-events: none;
}

.tsc-details-rating-star {
	position: relative;
	display: inline-flex;
	color: rgb(63 63 70);
	transition: transform 0.2s ease, color 0.2s ease, filter 0.2s ease;
}

.tsc-details-rating-star .tsc-icon {
	font-size: 1.35rem;
}

.tsc-details-rating-star.is-full {
	color: rgb(251 191 36);
	filter: drop-shadow(0 0 8px rgb(251 146 60 / 0.55));
}

.tsc-details-rating-star.is-hover {
	color: rgb(253 224 71);
	transform: scale(1.14) translateY(-3px);
	filter: drop-shadow(0 0 12px rgb(251 146 60 / 0.75));
}

.tsc-details-rating-star.is-partial {
	color: rgb(63 63 70);
}

.tsc-details-rating-star.is-partial .tsc-icon {
	background: linear-gradient(90deg, rgb(251 191 36) var(--star-fill, 50%), rgb(63 63 70) var(--star-fill, 50%));
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	filter: drop-shadow(0 0 6px rgb(251 146 60 / 0.35));
}

.tsc-details-rating-stars--interactive .tsc-details-rating-star {
	animation: tsc-rating-star-idle 2.8s ease-in-out infinite;
}

.tsc-details-rating-stars--interactive .tsc-details-rating-star:nth-child(2) { animation-delay: 0.15s; }
.tsc-details-rating-stars--interactive .tsc-details-rating-star:nth-child(3) { animation-delay: 0.3s; }
.tsc-details-rating-stars--interactive .tsc-details-rating-star:nth-child(4) { animation-delay: 0.45s; }
.tsc-details-rating-stars--interactive .tsc-details-rating-star:nth-child(5) { animation-delay: 0.6s; }

@keyframes tsc-rating-star-idle {
	0%, 100% { transform: translateY(0); }
	50% { transform: translateY(-2px); }
}

.tsc-details-star-rating,
.tsc-details-star-rating.star-rating,
.tsc-details-star-rating.star-rating2 {
	position: absolute;
	inset: 0;
	top: 0;
	left: 0;
	transform: none;
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	list-style: none;
	overflow: hidden;
	background: none !important;
}

.tsc-details-star-rating li {
	display: block;
	margin: 0;
	padding: 0;
}

.tsc-details-star-rating a,
.tsc-details-star-rating button,
.tsc-details-star-rating .current-rating,
.tsc-details-star-rating.star-rating a,
.tsc-details-star-rating.star-rating button,
.tsc-details-star-rating.star-rating2 a,
.tsc-details-star-rating.star-rating2 button,
.tsc-details-star-rating.star-rating2 .current-rating {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	line-height: 1;
	text-indent: -9999px;
	font-size: 0;
	color: transparent;
	overflow: hidden;
	border: none;
	background: none !important;
	outline: none;
	padding: 0;
	margin: 0;
	appearance: none;
	-webkit-appearance: none;
}

.tsc-details-star-rating a,
.tsc-details-star-rating button {
	cursor: pointer;
	z-index: 2;
	transition: filter 0.15s ease;
}

.tsc-details-star-rating button:disabled {
	cursor: default;
	pointer-events: none;
}

.tsc-details-star-rating a:hover,
.tsc-details-star-rating button:hover:not(:disabled) {
	filter: drop-shadow(0 0 10px rgb(251 191 36 / 0.85));
}

.tsc-details-star-rating a.one-star,
.tsc-details-star-rating button.one-star { width: 20%; z-index: 6; }
.tsc-details-star-rating a.two-stars,
.tsc-details-star-rating button.two-stars { width: 40%; z-index: 5; }
.tsc-details-star-rating a.three-stars,
.tsc-details-star-rating button.three-stars { width: 60%; z-index: 4; }
.tsc-details-star-rating a.four-stars,
.tsc-details-star-rating button.four-stars { width: 80%; z-index: 3; }
.tsc-details-star-rating a.five-stars,
.tsc-details-star-rating button.five-stars { width: 100%; z-index: 2; }

.tsc-details-star-rating .current-rating,
.tsc-details-star-rating .tsc-details-star-fill {
	z-index: 1;
	pointer-events: none;
}

.tsc-details-rating-scale {
	display: flex;
	justify-content: space-between;
	width: min(100%, 13rem);
	padding: 0 0.1rem;
	font-size: 0.5625rem;
	font-weight: 700;
	color: rgb(113 113 122);
	letter-spacing: 0.02em;
}

.tsc-details-rating-feedback {
	min-height: 0;
	font-size: 0.75rem;
	text-align: center;
}

.tsc-details-rating-feedback .voted,
.tsc-details-rating-feedback .voted_twice {
	width: auto;
	max-width: 100%;
	margin: 0.35rem auto 0;
	padding: 0.55rem 0.85rem 0.55rem 2rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(63 63 70 / 0.55);
	background: rgb(24 24 27 / 0.9) url(/pic/ratio/rating_tick.gif) no-repeat 0.65rem 50%;
	font-family: inherit;
	font-size: 0.75rem;
	color: rgb(212 212 216);
	animation: tsc-rating-feedback-in 0.35s ease;
}

.tsc-details-rating-feedback .voted_twice {
	background-image: url(/pic/ratio/rating_warning.gif);
	border-color: rgb(239 68 68 / 0.35);
	color: rgb(252 165 165);
}

@keyframes tsc-rating-feedback-in {
	from { opacity: 0; transform: translateY(6px); }
	to { opacity: 1; transform: translateY(0); }
}

.tsc-details-rating-body { min-width: 0; }

.tsc-page-details .tsc-details-rating-panel .rated_text,
.tsc-page-details .tsc-details-rating-panel .star-rating:not(.tsc-details-star-rating),
.tsc-page-details .tsc-details-rating-panel .star-rating2:not(.tsc-details-star-rating) {
	display: none;
}

.tsc-details-inline-link {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	font-size: 0.75rem;
	font-weight: 600;
	color: rgb(251 146 60);
	text-decoration: none;
}

.tsc-details-peer-summary {
	margin: 0;
	font-size: 0.8125rem;
	color: rgb(212 212 216);
}

.tsc-details-peer-title {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.35rem;
	margin: 1rem 0 0.5rem;
	font-size: 0.8125rem;
	font-weight: 700;
	color: rgb(212 212 216);
}

.tsc-details-legacy-wrap {
	margin: 0.5rem 0 1rem;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.tsc-details-legacy-wrap .tableinborder {
	min-width: 48rem;
}

.tsc-details-mod-alert {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.5rem;
	padding: 0.75rem;
	margin-bottom: 0.75rem;
	border-radius: 0.5rem;
	border: 1px solid rgb(239 68 68 / 0.35);
	background: rgb(239 68 68 / 0.08);
	font-size: 0.8125rem;
	color: rgb(212 212 216);
}

.tsc-details-file-path {
	font-family: ui-monospace, monospace;
	font-size: 0.6875rem;
	word-break: break-all;
}

.tsc-td-center { text-align: center; }
.tsc-td-right { text-align: right; }

.tsc-details-comment-bar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0.65rem;
	padding: 0.65rem 0;
}

.tsc-details-comment-add,
.tsc-details-comment-add-alt {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	padding: 0.55rem 1rem;
	border-radius: 0.5rem;
	font-size: 0.8125rem;
	font-weight: 700;
	text-decoration: none;
	transition: filter 0.15s ease, background 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}

.tsc-details-comment-add {
	color: rgb(9 9 11);
	border: none;
	background: linear-gradient(135deg, rgb(251 146 60), rgb(234 88 12));
	box-shadow: 0 6px 20px rgb(251 146 60 / 0.25);
	cursor: pointer;
}

.tsc-details-comment-add:hover {
	filter: brightness(1.06);
	color: rgb(9 9 11);
}

.tsc-details-comment-add-alt {
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(24 24 27 / 0.55);
	color: rgb(161 161 170);
	box-shadow: none;
}

.tsc-details-comment-add-alt:hover {
	border-color: rgb(82 82 91);
	color: rgb(212 212 216);
	filter: none;
}

.tsc-details-comments-live-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	margin-left: 0.5rem;
	padding: 0.2rem 0.55rem;
	border-radius: 999px;
	font-size: 0.7rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: rgb(74 222 128);
	background: rgb(74 222 128 / 0.1);
	border: 1px solid rgb(74 222 128 / 0.25);
}

.tsc-details-comments-live-dot {
	width: 0.45rem;
	height: 0.45rem;
	border-radius: 50%;
	background: rgb(74 222 128);
	box-shadow: 0 0 0 0 rgb(74 222 128 / 0.55);
	animation: tsc-details-comments-live-pulse 2s ease-out infinite;
}

@keyframes tsc-details-comments-live-pulse {
	0% { box-shadow: 0 0 0 0 rgb(74 222 128 / 0.55); }
	70% { box-shadow: 0 0 0 0.45rem rgb(74 222 128 / 0); }
	100% { box-shadow: 0 0 0 0 rgb(74 222 128 / 0); }
}

.tsc-details-comment-compose {
	margin: 0 0 1rem;
	padding: 1rem;
	border-radius: 0.85rem;
	border: 1px solid rgb(63 63 70 / 0.55);
	background: rgb(9 9 11 / 0.55);
}

.tsc-details-comment-compose[hidden] {
	display: none !important;
}

.tsc-details-comment-card--highlight {
	animation: tsc-details-comment-highlight 2.2s ease-out;
}

@keyframes tsc-details-comment-highlight {
	0% {
		box-shadow: 0 0 0 2px rgb(251 146 60 / 0.85), 0 0 24px rgb(251 146 60 / 0.25);
		transform: translateY(-1px);
	}
	100% {
		box-shadow: none;
		transform: none;
	}
}

.tsc-details-comments {
	display: flex;
	flex-direction: column;
	gap: 0.85rem;
}

.tsc-details-comment-card {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	gap: 0.85rem;
	padding: 1rem;
	border-radius: 0.75rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: linear-gradient(160deg, rgb(24 24 27 / 0.75), rgb(9 9 11 / 0.5));
	box-shadow: 0 12px 32px rgb(0 0 0 / 0.25);
}

.tsc-details-comment-side {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 0.55rem;
	width: 11.5rem;
	min-width: 11.5rem;
	flex-shrink: 0;
}

.tsc-details-comment-avatar-link {
	position: relative;
	display: block;
	align-self: center;
}

.tsc-details-comment-avatar {
	width: 5.5rem;
	height: 5.5rem;
	object-fit: cover;
	border-radius: 0.75rem;
	border: 2px solid rgb(63 63 70 / 0.7);
	box-shadow: 0 8px 24px rgb(0 0 0 / 0.4);
}

.tsc-details-comment-avatar-ring {
	position: absolute;
	inset: -2px;
	border-radius: 0.8rem;
	border: 1px solid rgb(251 146 60 / 0.25);
	pointer-events: none;
}

.tsc-details-comment-side-meta {
	display: flex;
	flex-direction: column;
	gap: 0.28rem;
	width: 100%;
	padding: 0.45rem 0.5rem;
	border-radius: 0.5rem;
	border: 1px solid rgb(39 39 42 / 0.55);
	background: rgb(9 9 11 / 0.35);
}

.tsc-details-comment-stat {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 0.5rem;
	min-height: 1.1rem;
}

.tsc-details-comment-stat-label {
	flex: 0 0 auto;
	font-size: 0.58rem;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: rgb(161 161 170);
	white-space: nowrap;
}

.tsc-details-comment-stat-value-wrap {
	flex: 1 1 auto;
	min-width: 0;
	display: flex;
	justify-content: flex-end;
	text-align: right;
}

.tsc-details-comment-stat-value {
	display: block;
	font-size: 0.65rem;
	font-weight: 600;
	font-variant-numeric: tabular-nums;
	color: rgb(212 212 216);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	line-height: 1.2;
	text-align: right;
	max-width: 100%;
}

.tsc-details-comment-stat-value--up {
	color: rgb(74 222 128);
}

.tsc-details-comment-stat-value--down {
	color: rgb(248 113 113);
}

.tsc-details-comment-stat-value--flag {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	margin-left: auto;
}

.tsc-details-comment-ratio--good {
	color: rgb(74 222 128);
}

.tsc-details-comment-ratio--mid {
	color: rgb(251 191 36);
}

.tsc-details-comment-ratio--low {
	color: rgb(248 113 113);
}

.tsc-details-comment-ratio--inf {
	color: rgb(96 165 250);
}

.tsc-details-comment-ratio--na {
	color: rgb(113 113 122);
}

/* legacy alias */
.tsc-details-comment-side-label {
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: rgb(113 113 122);
}

.tsc-details-comment-main {
	min-width: 0;
}

.tsc-details-comment-head {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
	gap: 0.35rem 0.75rem;
	margin-bottom: 0.35rem;
}

.tsc-details-comment-author {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.35rem;
}

.tsc-details-comment-name {
	font-size: 0.875rem;
	font-weight: 800;
	text-decoration: none;
}

.tsc-details-comment-name--deleted {
	color: rgb(113 113 122);
}

.tsc-details-comment-rank {
	font-size: 0.6875rem;
	color: rgb(113 113 122);
}

.tsc-details-comment-meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.5rem;
	font-size: 0.6875rem;
	color: rgb(113 113 122);
}

.tsc-details-comment-time {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
}

.tsc-details-comment-id {
	padding: 0.1rem 0.35rem;
	border-radius: 0.25rem;
	background: rgb(39 39 42);
	font-family: ui-monospace, monospace;
}

.tsc-details-comment-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem;
	margin-bottom: 0.5rem;
}

.tsc-details-comment-action {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	padding: 0.2rem 0.45rem;
	font-size: 0.625rem;
	font-weight: 600;
	color: rgb(161 161 170);
	text-decoration: none;
	border-radius: 0.3rem;
	border: 1px solid rgb(63 63 70 / 0.45);
	background: rgb(9 9 11 / 0.45);
	transition: color 0.15s ease, border-color 0.15s ease;
}

.tsc-details-comment-action:hover {
	color: rgb(251 146 60);
	border-color: rgb(251 146 60 / 0.35);
}

.tsc-details-comment-action--danger:hover {
	color: rgb(248 113 113);
	border-color: rgb(239 68 68 / 0.35);
}

.tsc-details-comment-body {
	font-size: 0.8125rem;
	line-height: 1.65;
	color: rgb(212 212 216);
	word-break: break-word;
}

/* Markdown inline media in comments, descriptions, messages */
.tsc-details-comment-body .tsc-markdown-body .tsc-inline-smilie,
.tsc-details-description-body .tsc-markdown-body .tsc-inline-smilie,
.tsc-markdown-body .tsc-inline-smilie {
	display: inline !important;
	vertical-align: -0.2em;
	width: auto;
	height: auto;
	max-width: none;
	max-height: 1.35em;
	margin: 0 0.06em;
	padding: 0;
	border: 0;
	border-radius: 0;
	object-fit: contain;
}

.tsc-details-comment-body .tsc-markdown-body a:has(> img),
.tsc-details-description-body .tsc-markdown-body a:has(> img),
.tsc-markdown-body a:has(> img) {
	display: inline;
	line-height: inherit;
	vertical-align: baseline;
}

.tsc-details-comment-body .tsc-markdown-body img:not(.tsc-inline-smilie),
.tsc-details-description-body .tsc-markdown-body img:not(.tsc-inline-smilie),
.tsc-markdown-body img:not(.tsc-inline-smilie) {
	display: inline-block;
	vertical-align: middle;
	width: auto;
	height: auto;
	max-width: min(100%, 280px);
	max-height: 280px;
	object-fit: contain;
	border-radius: 0.375rem;
	margin: 0 0.15em 0.15em 0;
}

.tsc-details-comment-body .tsc-markdown-body p:has(> img.tsc-inline-smilie:only-child),
.tsc-details-comment-body .tsc-markdown-body p:has(> a:only-child > img),
.tsc-details-description-body .tsc-markdown-body p:has(> img.tsc-inline-smilie:only-child),
.tsc-details-description-body .tsc-markdown-body p:has(> a:only-child > img),
.tsc-markdown-body p:has(> img.tsc-inline-smilie:only-child),
.tsc-markdown-body p:has(> a:only-child > img) {
	display: inline;
	margin: 0;
}

.tsc-details-comment-body img {
	max-width: min(100%, 280px);
	border-radius: 0.375rem;
}

.tsc-details-comment-edited {
	margin: 0.65rem 0 0;
	font-size: 0.625rem;
	color: rgb(113 113 122);
	font-style: italic;
}

.tsc-user-badge--flag .tsc-flag-unicode {
	margin-top: 0;
	font-size: 1rem;
	line-height: 1;
}

.tsc-details-comment-flag,
.tsc-details-comment-stat-value--flag .tsc-flag-unicode {
	margin-top: 0;
	vertical-align: middle;
}

.tsc-topten-flag-wrap .tsc-flag-unicode {
	margin-top: 0;
}

.tsc-friends-hero-sub .tsc-flag-unicode {
	margin-top: 0;
	vertical-align: middle;
}

.tsc-details-comments-empty {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.5rem;
	padding: 2.5rem 1rem;
	color: rgb(113 113 122);
	text-align: center;
}

.tsc-details-comments-empty .tsc-icon { color: rgb(63 63 70); }

.tsc-details-comments-empty-hint {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	font-size: 0.8125rem;
	font-weight: 600;
	color: rgb(251 146 60);
	text-decoration: none;
}

.tsc-details-pager {
	padding: 0.5rem 0;
}

.tsc-details-pager .pager,
.tsc-details-pager font {
	font-size: 0.75rem;
	color: rgb(161 161 170);
}

.tsc-page-details .maincontent .tableinborder {
	margin-left: 0;
	margin-right: 0;
	width: 100%;
	max-width: none;
}

.tsc-page-details .tsc-index-page {
	min-width: 0;
}

.tsc-page-details .tsc-index-block,
.tsc-page-comment .tsc-index-block {
	overflow: hidden;
}

.tsc-page-details .tsc-index-section-body--flush .tsc-details-comments,
.tsc-page-details .tsc-index-section-body--flush .tsc-table-scroll {
	margin: 0;
}

@media (max-width: 768px) {
	.tsc-details-hero-inner {
		grid-template-columns: 1fr;
		justify-items: center;
		text-align: center;
		padding: 1.15rem;
	}

	.tsc-details-hero-meta-top,
	.tsc-details-hero-lang,
	.tsc-details-stat-strip {
		justify-content: center;
	}

	.tsc-details-poster-link {
		width: 9rem;
	}

	.tsc-details-actions-wrap {
		grid-template-columns: 1fr;
		grid-template-areas:
			"actions"
			"thanks-btn"
			"thanks-list";
		justify-items: center;
		text-align: center;
	}

	.tsc-details-actions {
		justify-content: center;
		padding-top: 0.65rem;
	}

	.tsc-details-thanks-toolbar {
		justify-content: center;
		padding-top: 0;
	}

	#tsc-details-thanks-list {
		padding-bottom: 0.75rem;
	}

	.tsc-details-thanks-toolbar,
	.tsc-details-thanks-chips {
		justify-content: center;
	}

	.tsc-details-thanks-head {
		justify-content: center;
		text-align: center;
	}

	.tsc-details-meta-grid {
		grid-template-columns: 1fr;
	}

	.tsc-details-comment-card {
		grid-template-columns: 1fr;
	}

	.tsc-details-comment-side {
		flex-direction: row;
		align-items: flex-start;
		width: 100%;
		min-width: 0;
		gap: 0.75rem;
	}

	.tsc-details-comment-avatar-link {
		align-self: flex-start;
		flex-shrink: 0;
	}

	.tsc-details-comment-avatar {
		width: 3.5rem;
		height: 3.5rem;
	}

	.tsc-details-comment-side-meta {
		flex: 1;
		min-width: 0;
	}

	.tsc-details-files-head--tree,
	.tsc-details-tree-file-head {
		display: none;
	}

	.tsc-ftree-viewport {
		max-height: none;
		padding: 0;
	}

	.tsc-ftree {
		--tsc-ftree-cols: auto 1.1rem minmax(0, 1fr) 4.75rem 7rem 3.75rem 1.1rem;
		--tsc-ftree-row-h: 1.75rem;
		font-size: 0.75rem;
	}

	.tsc-ftree-head {
		display: none;
	}

	.tsc-ftree-line {
		row-gap: 0;
		padding: 0;
	}

	.tsc-ftree-glyphs,
	.tsc-ftree-icon,
	.tsc-ftree-name {
		grid-row: 1;
	}

	.tsc-ftree-name {
		grid-column: 3 / -2;
	}

	.tsc-ftree-meta--count {
		grid-column: 4;
		grid-row: 1;
		justify-self: stretch;
	}

	.tsc-ftree-meta--size {
		grid-column: 5;
		grid-row: 1;
		justify-self: stretch;
	}

	.tsc-ftree-meta--pct {
		grid-column: 6;
		grid-row: 1;
		justify-self: stretch;
		min-width: 0;
	}

	.tsc-ftree-toggle,
	.tsc-ftree-toggle--spacer {
		grid-column: 7;
		grid-row: 1;
	}

	.tsc-details-tree-folder-head,
	.tsc-details-tree-file-head {
		grid-template-columns: auto minmax(0, 1fr) auto;
	}

	.tsc-details-tree-folder-meta,
	.tsc-details-tree-file-size,
	.tsc-details-tree-file-share {
		display: none;
	}

	.tsc-details-tree-inspect-grid {
		grid-template-columns: 1fr;
	}

	.tsc-details-similar-table {
		min-width: 34rem;
	}

	.tsc-details-peer-table {
		min-width: 40rem;
	}

	.tsc-details-mod-totals {
		grid-template-columns: 1fr;
	}

	.tsc-details-mod-table {
		min-width: 28rem;
	}

	.tsc-details-rating-head {
		grid-template-columns: auto minmax(0, 1fr);
	}

	.tsc-details-rating-score-ring {
		grid-column: 1 / -1;
		justify-self: center;
	}
}

@media (max-width: 480px) {
	.tsc-details-hero {
		min-height: auto;
		border-radius: 0.75rem;
	}

	.tsc-details-stat {
		min-width: calc(50% - 0.25rem);
		flex: 1 1 calc(50% - 0.25rem);
	}

	.tsc-details-download-btn {
		width: 100%;
		justify-content: center;
	}

	.tsc-details-hero-title {
		font-size: 0.95rem;
		line-height: 1.4;
	}

	.tsc-details-action-btn {
		flex: 1 1 calc(50% - 0.25rem);
		justify-content: center;
	}
}

/* Comment form page (comment.php) */
.tsc-page-comment .tsc-details-comment-form-shell {
	padding: 0.25rem 0;
}

.tsc-details-comment-form-torrent {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.35rem;
	margin-bottom: 1rem;
	padding: 0.65rem 0.85rem;
	border-radius: 0.5rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.45);
	font-size: 0.8125rem;
	color: rgb(161 161 170);
}

.tsc-details-comment-form-torrent a {
	color: rgb(251 146 60);
	font-weight: 600;
	text-decoration: none;
	word-break: break-word;
}

.tsc-details-comment-form-torrent a:hover {
	text-decoration: underline;
}

.tsc-details-comment-form {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	min-width: 0;
}

.tsc-details-comment-editor {
	min-width: 0;
	border-radius: 0.75rem;
	border: 1px solid rgb(63 63 70 / 0.55);
	background: rgb(9 9 11 / 0.55);
	padding: 0.75rem;
	overflow: hidden;
}

.tsc-details-comment-editor table {
	width: 100%;
	border-collapse: collapse;
}

.tsc-details-comment-editor > table > tbody > tr:first-child td {
	padding-bottom: 0.65rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.55);
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.tsc-details-comment-editor > table > tbody > tr:first-child table {
	min-width: 28rem;
}

.tsc-details-comment-editor > table > tbody > tr:last-child > td {
	vertical-align: top;
}

.tsc-details-comment-editor > table > tbody > tr:last-child > td:first-child {
	width: 100%;
	padding-right: 0.75rem;
}

.tsc-details-comment-editor > table > tbody > tr:last-child > td:last-child {
	width: auto;
	min-width: 8.5rem;
}

.tsc-details-comment-editor input[type="button"] {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2.1rem;
	padding: 0.3rem 0.45rem;
	font-size: 0.6875rem;
	font-weight: 700;
	color: rgb(212 212 216);
	background: rgb(24 24 27);
	border: 1px solid rgb(63 63 70);
	border-radius: 0.35rem;
	cursor: pointer;
	transition: color 0.15s ease, border-color 0.15s ease, background 0.15s ease;
}

.tsc-details-comment-editor input[type="button"]:hover {
	color: rgb(251 146 60);
	border-color: rgb(251 146 60 / 0.4);
	background: rgb(39 39 42);
}

.tsc-details-comment-editor table table tr td {
	padding: 0.15rem;
}

.tsc-details-comment-editor a {
	font-size: 0.6875rem;
	font-weight: 600;
	color: rgb(251 146 60);
	text-decoration: none;
}

.tsc-details-comment-editor a:hover {
	text-decoration: underline;
}

.tsc-details-comment-editor textarea,
.tsc-details-comment-editor #bbcode_field {
	width: 100%;
	min-height: 14rem;
	padding: 0.75rem;
	font-size: 0.8125rem;
	line-height: 1.55;
	font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
	color: rgb(228 228 231);
	background: rgb(9 9 11);
	border: 1px solid rgb(63 63 70);
	border-radius: 0.5rem;
	resize: vertical;
	box-sizing: border-box;
}

.tsc-details-comment-editor textarea:focus,
.tsc-details-comment-editor #bbcode_field:focus {
	outline: none;
	border-color: rgb(251 146 60 / 0.5);
	box-shadow: 0 0 0 2px rgb(251 146 60 / 0.12);
}

.tsc-details-comment-editor img {
	border-radius: 0.25rem;
	transition: transform 0.15s ease;
}

.tsc-details-comment-editor a:hover img {
	transform: scale(1.08);
}

.tsc-details-comment-form-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	align-items: center;
	padding-top: 0.25rem;
}

.tsc-details-comment-submit,
.tsc-details-comment-smilies,
.tsc-details-comment-back {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	padding: 0.55rem 1rem;
	font-size: 0.8125rem;
	font-weight: 700;
	text-decoration: none;
	border-radius: 0.5rem;
	border: 1px solid transparent;
	cursor: pointer;
	transition: filter 0.15s ease, background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.tsc-details-comment-submit {
	color: rgb(9 9 11);
	background: linear-gradient(135deg, rgb(251 146 60), rgb(234 88 12));
	box-shadow: 0 6px 20px rgb(251 146 60 / 0.25);
}

.tsc-details-comment-submit:hover {
	filter: brightness(1.06);
}

.tsc-details-comment-submit--danger {
	color: rgb(252 165 165);
	background: rgb(239 68 68 / 0.12);
	border-color: rgb(239 68 68 / 0.35);
	box-shadow: none;
}

.tsc-details-comment-submit--danger:hover {
	background: rgb(239 68 68 / 0.2);
	filter: none;
}

.tsc-details-comment-smilies {
	color: rgb(212 212 216);
	background: rgb(24 24 27);
	border-color: rgb(63 63 70 / 0.55);
}

.tsc-details-comment-smilies:hover {
	color: rgb(251 146 60);
	border-color: rgb(251 146 60 / 0.35);
	background: rgb(39 39 42);
}

.tsc-details-comment-back {
	color: rgb(161 161 170);
	background: transparent;
	border-color: rgb(63 63 70 / 0.55);
}

.tsc-details-comment-back:hover {
	color: rgb(251 146 60);
	border-color: rgb(251 146 60 / 0.35);
}

.tsc-details-delete-confirm {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.85rem;
	padding: 1.5rem 1rem;
	text-align: center;
	color: rgb(212 212 216);
}

.tsc-details-comment-error {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.85rem;
	padding: 1.5rem 1rem;
	text-align: center;
	color: rgb(212 212 216);
}

.tsc-details-comment-error .tsc-icon {
	color: rgb(248 113 113);
}

.tsc-details-comment-error p {
	margin: 0;
	max-width: 36rem;
	font-size: 0.875rem;
	line-height: 1.6;
	color: rgb(161 161 170);
}

.tsc-stdmsg-body {
	max-width: 42rem;
	font-size: 0.875rem;
	line-height: 1.65;
	color: rgb(161 161 170);
	text-align: center;
}

.tsc-stdmsg-body a {
	color: rgb(251 146 60);
}

.tsc-details-delete-confirm .tsc-icon {
	color: rgb(248 113 113);
}

.tsc-details-delete-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	justify-content: center;
}

.tsc-details-original-comment {
	padding: 0.25rem 0;
}

.tsc-details-original-label {
	display: flex;
	align-items: center;
	gap: 0.35rem;
	font-size: 0.6875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(161 161 170);
	margin-bottom: 0.65rem;
}

.tsc-details-original-body {
	margin: 0;
	padding: 1rem;
	font-size: 0.8125rem;
	line-height: 1.6;
	color: rgb(212 212 216);
	white-space: pre-wrap;
	word-break: break-word;
	border-radius: 0.5rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.55);
	max-height: 28rem;
	overflow: auto;
}

.tsc-page-comment .tsc-index-section-header .tsc-details-comment-back {
	margin-left: auto;
	padding: 0.3rem 0.65rem;
	font-size: 0.6875rem;
}

.tsc-page-comment .tsc-index-section-actions {
	display: flex;
	align-items: center;
	gap: 0.35rem;
}

@media (max-width: 768px) {
	.tsc-details-comment-editor > table > tbody > tr:last-child {
		display: flex;
		flex-direction: column;
	}

	.tsc-details-comment-editor > table > tbody > tr:last-child > td {
		display: block;
		width: 100% !important;
		padding-right: 0 !important;
	}

	.tsc-details-comment-editor > table > tbody > tr:last-child > td:last-child {
		padding-top: 0.75rem;
		border-top: 1px solid rgb(39 39 42 / 0.55);
	}

	.tsc-details-comment-form-actions {
		flex-direction: column;
		align-items: stretch;
	}

	.tsc-details-comment-submit,
	.tsc-details-comment-smilies,
	.tsc-details-comment-back {
		justify-content: center;
		width: 100%;
	}
}

.tsc-index-block--forum {
	border-color: rgb(96 165 250 / 0.28);
	box-shadow:
		0 0 0 1px rgb(96 165 250 / 0.06) inset,
		0 12px 40px rgb(0 0 0 / 0.35);
}

/* ═══════════════════════════════════════════════════════════
   Super Forum — forums.php showcase schema
   ═══════════════════════════════════════════════════════════ */

.tsc-forum-page {
	--tsc-forum-accent: rgb(96 165 250);
	--tsc-forum-accent-2: rgb(129 140 248);
	--tsc-forum-accent-soft: rgb(96 165 250 / 0.14);
	--tsc-forum-glow: rgb(96 165 250 / 0.22);
	--tsc-forum-surface: rgb(9 9 11 / 0.72);
	--tsc-forum-surface-2: rgb(24 24 27 / 0.88);
	--tsc-forum-border: rgb(39 39 42 / 0.72);
	min-width: 0;
}

.tsc-index-section-body--forum {
	padding: clamp(0.75rem, 2vw, 1.15rem);
	min-width: 0;
}

.tsc-forum-hero {
	position: relative;
	margin-bottom: 1rem;
	padding: clamp(1rem, 3vw, 1.6rem);
	border-radius: 1rem;
	border: 1px solid rgb(96 165 250 / 0.28);
	background:
		radial-gradient(ellipse 80% 60% at 10% 0%, rgb(37 99 235 / 0.22), transparent 55%),
		radial-gradient(ellipse 60% 50% at 90% 100%, rgb(129 140 248 / 0.14), transparent 50%),
		linear-gradient(155deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.88));
	box-shadow: 0 20px 50px rgb(0 0 0 / 0.35), inset 0 1px 0 rgb(255 255 255 / 0.04);
	overflow: hidden;
}

.tsc-forum-hero--index { margin-bottom: 1.15rem; }

.tsc-forum-hero-glow {
	position: absolute;
	inset: -30% -10% auto;
	height: 70%;
	background: radial-gradient(ellipse at center, var(--tsc-forum-glow), transparent 68%);
	pointer-events: none;
	opacity: 0.75;
}

.tsc-forum-hero-inner {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	gap: 0.55rem;
	min-width: 0;
}

.tsc-forum-hero-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	align-self: flex-start;
	padding: 0.25rem 0.6rem;
	border-radius: 999px;
	border: 1px solid rgb(96 165 250 / 0.35);
	background: rgb(96 165 250 / 0.1);
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: rgb(191 219 254);
}

.tsc-forum-hero-head {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.5rem 0.75rem;
}

.tsc-forum-hero-title {
	margin: 0;
	font-size: clamp(1.25rem, 3vw, 1.75rem);
	font-weight: 800;
	line-height: 1.2;
	color: rgb(244 244 245);
}

.tsc-forum-hero-pill {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	padding: 0.2rem 0.55rem;
	border-radius: 999px;
	background: rgb(39 39 42 / 0.75);
	border: 1px solid rgb(63 63 70 / 0.65);
	font-size: 0.625rem;
	font-weight: 700;
	color: rgb(161 161 170);
}

.tsc-forum-hero-sub {
	margin: 0;
	font-size: 0.8125rem;
	color: rgb(161 161 170);
	line-height: 1.5;
}

.tsc-forum-hero-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin-top: 0.25rem;
}

.tsc-forum-chip {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	padding: 0.45rem 0.7rem;
	border-radius: 0.65rem;
	border: 1px solid var(--tsc-forum-border);
	background: rgb(9 9 11 / 0.55);
}

.tsc-forum-chip-icon { color: var(--tsc-forum-accent); }

.tsc-forum-chip-body {
	display: flex;
	flex-direction: column;
	gap: 0.05rem;
}

.tsc-forum-chip-label {
	font-size: 0.5625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(113 113 122);
}

.tsc-forum-chip-value {
	font-size: 0.8125rem;
	font-weight: 800;
	color: rgb(228 228 231);
}

.tsc-forum-breadcrumb {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.25rem 0.35rem;
	font-size: 0.6875rem;
}

.tsc-forum-breadcrumb-link {
	color: rgb(147 197 253);
	text-decoration: none;
	font-weight: 600;
}

.tsc-forum-breadcrumb-current {
	color: rgb(161 161 170);
	font-weight: 600;
}

.tsc-forum-breadcrumb-sep { color: rgb(63 63 70); }

.tsc-forum-search-panel {
	margin-bottom: 1rem;
	padding: 0.9rem 1rem;
	border-radius: 0.85rem;
	border: 1px solid rgb(96 165 250 / 0.25);
	background: linear-gradient(145deg, rgb(24 24 27 / 0.82), rgb(9 9 11 / 0.72));
	box-shadow: 0 16px 40px rgb(0 0 0 / 0.28);
}

.tsc-forum-search-form {
	display: flex;
	flex-direction: column;
	gap: 0.55rem;
}

.tsc-forum-search-label {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	font-size: 0.75rem;
	font-weight: 700;
	color: rgb(161 161 170);
	text-transform: uppercase;
	letter-spacing: 0.06em;
}

.tsc-forum-search-row {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.tsc-forum-search-input {
	flex: 1 1 16rem;
	min-width: 0;
	padding: 0.6rem 0.8rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(9 9 11 / 0.75);
	color: rgb(228 228 231);
	font-size: 0.8125rem;
}

.tsc-forum-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.35rem;
	padding: 0.5rem 0.85rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(39 39 42 / 0.75);
	color: rgb(212 212 216);
	font-size: 0.75rem;
	font-weight: 600;
	text-decoration: none;
	cursor: pointer;
	transition: color 0.15s ease, border-color 0.15s ease, background 0.15s ease, transform 0.15s ease;
}

.tsc-forum-btn:hover {
	color: rgb(147 197 253);
	border-color: rgb(96 165 250 / 0.45);
	background: rgb(96 165 250 / 0.12);
	transform: translateY(-1px);
}

.tsc-forum-btn--primary {
	border-color: rgb(96 165 250 / 0.45);
	background: linear-gradient(135deg, rgb(37 99 235 / 0.35), rgb(96 165 250 / 0.18));
	color: rgb(191 219 254);
}

.tsc-forum-btn--disabled {
	opacity: 0.45;
	cursor: not-allowed;
	pointer-events: none;
}

.tsc-forum-btn--sm {
	padding: 0.35rem 0.6rem;
	font-size: 0.6875rem;
	border-radius: 0.5rem;
}

.tsc-forum-btn--lg {
	padding: 0.7rem 1.1rem;
	font-size: 0.8125rem;
}

.tsc-forum-btn--ghost {
	background: transparent;
	border-color: rgb(63 63 70 / 0.45);
}

.tsc-forum-btn--danger {
	border-color: rgb(239 68 68 / 0.45);
	background: rgb(239 68 68 / 0.12);
	color: rgb(252 165 165);
}

.tsc-forum-btn--danger:hover {
	background: rgb(239 68 68 / 0.22);
	color: rgb(254 202 202);
}

.tsc-forum-toolbar-form {
	display: inline-flex;
	margin: 0;
}

.tsc-forum-input,
.tsc-forum-jump-select {
	padding: 0.65rem 0.85rem;
	border-radius: 0.6rem;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(9 9 11 / 0.75);
	color: rgb(228 228 231);
	font-size: 0.8125rem;
}

.tsc-forum-search-input:focus,
.tsc-forum-input:focus,
.tsc-forum-jump-select:focus {
	outline: none;
	border-color: rgb(96 165 250 / 0.55);
	box-shadow: 0 0 0 3px rgb(96 165 250 / 0.15);
}

.tsc-forum-table-shell,
.tsc-forum-table-wrap {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.tsc-forum-table-shell {
	border-radius: 0.75rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.45);
	overflow: hidden;
}

.tsc-forum-table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
	font-size: 0.75rem;
	min-width: 48rem;
	table-layout: fixed;
}

.tsc-forum-table--index thead th:nth-child(1) { width: 42%; }
.tsc-forum-table--index thead th:nth-child(2),
.tsc-forum-table--index thead th:nth-child(3) { width: 7rem; text-align: center; }
.tsc-forum-table--index thead th:nth-child(4) { width: 30%; }

.tsc-forum-table--topics thead th:nth-child(1) { width: 38%; }
.tsc-forum-table--topics thead th:nth-child(2),
.tsc-forum-table--topics thead th:nth-child(3) { width: 6rem; text-align: center; }
.tsc-forum-table--topics thead th:nth-child(4) { width: 14%; }
.tsc-forum-table--topics thead th:nth-child(5) { width: 28%; }

.tsc-forum-table thead th {
	padding: 0.65rem 0.75rem;
	font-size: 0.5625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(113 113 122);
	text-align: left;
	background: rgb(9 9 11 / 0.75);
	border-bottom: 1px solid rgb(39 39 42 / 0.65);
	white-space: nowrap;
}

.tsc-forum-table thead th .tsc-icon {
	color: rgb(96 165 250 / 0.85);
	margin-right: 0.2rem;
}

.tsc-forum-table tbody td {
	padding: 0.7rem 0.75rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.35);
	color: rgb(212 212 216);
	vertical-align: middle;
	background: transparent;
}

.tsc-forum-row {
	transition: background 0.15s ease;
}

.tsc-forum-row:hover td {
	background: rgb(39 39 42 / 0.32);
	color: rgb(228 228 231);
}

.tsc-forum-row--empty td {
	padding: 0;
	border: none;
	background: transparent !important;
}

.tsc-forum-cell--main {
	vertical-align: middle;
}

.tsc-forum-cell-main-inner {
	display: flex;
	align-items: center;
	gap: 0.55rem;
	min-width: 0;
}

.tsc-forum-cell--lastpost {
	vertical-align: middle;
}

.tsc-forum-forum-copy {
	min-width: 0;
	flex: 1;
}

.tsc-forum-whisper {
	display: inline-flex;
	align-items: center;
	color: rgb(96 165 250);
	text-decoration: none;
	vertical-align: middle;
}

.tsc-forum-whisper:hover {
	color: rgb(147 197 253);
}

.tsc-forum-forum-title {
	font-size: 0.875rem;
	font-weight: 800;
	color: rgb(244 244 245);
	text-decoration: none;
}

.tsc-forum-forum-title:hover {
	color: rgb(147 197 253);
}

.tsc-forum-topic-link {
	font-size: 0.875rem;
	font-weight: 800;
	color: rgb(244 244 245);
	text-decoration: none;
	word-break: break-word;
	overflow-wrap: anywhere;
}

.tsc-forum-topic-link:hover {
	color: rgb(147 197 253);
}

.tsc-forum-sticky {
	display: inline-flex;
	align-items: center;
	gap: 0.2rem;
	font-size: 0.625rem;
	font-weight: 700;
	color: rgb(248 113 113);
}

.tsc-forum-topic-pages {
	display: inline-flex;
	flex-wrap: wrap;
	gap: 0.2rem;
	margin-left: 0.35rem;
}

.tsc-forum-topic-page-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 1.35rem;
	height: 1.35rem;
	padding: 0 0.25rem;
	border-radius: 0.35rem;
	background: rgb(39 39 42 / 0.75);
	color: rgb(147 197 253);
	font-size: 0.625rem;
	font-weight: 700;
	text-decoration: none;
}

.tsc-forum-forum-desc {
	margin: 0.2rem 0 0;
	font-size: 0.6875rem;
	color: rgb(113 113 122);
	line-height: 1.45;
	overflow-wrap: anywhere;
}

.tsc-forum-cell--lastpost .tsc-forum-lastpost {
	min-width: 0;
}

.tsc-forum-lastpost-line {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	color: rgb(161 161 170);
	min-width: 0;
}

.tsc-forum-lastpost-line a {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	max-width: 100%;
}

.tsc-forum-count {
	display: inline-flex;
	min-width: 2rem;
	justify-content: center;
	padding: 0.15rem 0.45rem;
	border-radius: 999px;
	background: rgb(39 39 42 / 0.75);
	font-weight: 700;
	color: rgb(228 228 231);
}

.tsc-forum-status {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.65rem;
	height: 1.65rem;
	border-radius: 0.45rem;
	flex-shrink: 0;
}

.tsc-forum-status--new {
	color: rgb(251 191 36);
	background: rgb(251 146 60 / 0.12);
	box-shadow: 0 0 14px rgb(251 146 60 / 0.2);
}

.tsc-forum-status--read {
	color: rgb(113 113 122);
	background: rgb(39 39 42 / 0.65);
}

.tsc-forum-status--locked-new {
	color: rgb(248 113 113);
	background: rgb(239 68 68 / 0.12);
}

.tsc-forum-status--locked {
	color: rgb(161 161 170);
	background: rgb(63 63 70 / 0.45);
}

.tsc-forum-lastpost {
	display: flex;
	flex-direction: column;
	gap: 0.2rem;
	font-size: 0.6875rem;
	min-width: 0;
}

.tsc-forum-lastpost a {
	color: rgb(147 197 253);
	text-decoration: none;
	font-weight: 600;
}

.tsc-forum-toolbar,
.tsc-forum-legend,
.tsc-forum-jump {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin-top: 0.85rem;
}

.tsc-forum-legend {
	align-items: center;
	font-size: 0.6875rem;
	color: rgb(113 113 122);
}

.tsc-forum-legend > span:not(.tsc-forum-status) {
	margin-right: 0.35rem;
}

.tsc-forum-jump {
	align-items: center;
	padding: 0.65rem 0.75rem;
	border-radius: 0.6rem;
	border: 1px solid rgb(39 39 42 / 0.55);
	background: rgb(9 9 11 / 0.35);
}

.tsc-forum-jump-label {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	font-size: 0.6875rem;
	font-weight: 700;
	color: rgb(113 113 122);
}

.tsc-forum-jump-select {
	padding: 0.4rem 0.55rem;
	border-radius: 0.45rem;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(24 24 27);
	color: rgb(212 212 216);
	font-size: 0.75rem;
}

.tsc-forum-online-stats {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin-bottom: 0.75rem;
}

.tsc-forum-online-stat {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.35rem 0.6rem;
	border-radius: 0.35rem;
	border: 1px solid rgb(63 63 70 / 0.45);
	background: rgb(24 24 27 / 0.55);
	font-size: 0.6875rem;
	color: rgb(161 161 170);
}

.tsc-forum-online-users {
	font-size: 0.75rem;
	line-height: 1.65;
	color: rgb(212 212 216);
}

.tsc-forum-pagination {
	display: flex;
	flex-direction: column;
	gap: 0.65rem;
	margin: 1rem 0;
	align-items: center;
}

.tsc-forum-pagination-nav,
.tsc-forum-pagination-pages {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem;
	justify-content: center;
}

.tsc-forum-page-btn,
.tsc-forum-page-num {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.25rem;
	min-width: 2rem;
	height: 2rem;
	padding: 0 0.65rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(24 24 27 / 0.75);
	color: rgb(212 212 216);
	font-size: 0.75rem;
	font-weight: 600;
	text-decoration: none;
}

.tsc-forum-page-num--active,
.tsc-forum-page-num:hover,
.tsc-forum-page-btn:hover {
	border-color: rgb(96 165 250 / 0.45);
	background: rgb(96 165 250 / 0.14);
	color: rgb(191 219 254);
}

.tsc-forum-page-btn--disabled,
.tsc-forum-page-ellipsis {
	opacity: 0.45;
	pointer-events: none;
}

.tsc-forum-posts {
	display: flex;
	flex-direction: column;
	gap: 0.85rem;
	min-width: 0;
}

.tsc-forum-post {
	border-radius: 0.9rem;
	border: 1px solid var(--tsc-forum-border);
	background: linear-gradient(160deg, rgb(24 24 27 / 0.92), rgb(9 9 11 / 0.82));
	box-shadow: 0 12px 32px rgb(0 0 0 / 0.22);
	overflow: hidden;
}

.tsc-forum-post-header {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 0.75rem;
	padding: 0.85rem 1rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.45);
	background: rgb(9 9 11 / 0.35);
}

.tsc-forum-post-author {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	min-width: 0;
	flex: 1 1 12rem;
}

.tsc-forum-post-avatar {
	width: 3.5rem;
	height: 3.5rem;
	border-radius: 0.75rem;
	object-fit: cover;
	border: 1px solid rgb(63 63 70 / 0.65);
	flex-shrink: 0;
}

.tsc-forum-post-author-meta {
	display: flex;
	flex-direction: column;
	gap: 0.15rem;
	min-width: 0;
}

.tsc-forum-post-count,
.tsc-forum-post-time {
	font-size: 0.6875rem;
	color: rgb(113 113 122);
}

.tsc-forum-post-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem;
	align-items: center;
	justify-content: flex-end;
}

.tsc-forum-post-body {
	padding: 1rem;
	font-size: 0.8125rem;
	line-height: 1.6;
	color: rgb(212 212 216);
	overflow-wrap: anywhere;
}

.tsc-forum-post-content { min-height: 4rem; }

/* BBCode quotes inside forum posts */
.tsc-forum-post-content table.tableinborder {
	width: 100% !important;
	max-width: 100%;
	margin: 0 0 0.75rem !important;
	border: 1px solid rgb(63 63 70 / 0.55) !important;
	border-radius: 0.5rem !important;
	background: rgb(9 9 11 / 0.4) !important;
	box-shadow: none !important;
	border-collapse: separate !important;
	border-spacing: 0 !important;
	overflow: hidden;
}

.tsc-forum-post-content td.inposttable {
	display: block;
	width: 100%;
	box-sizing: border-box;
	padding: 0.65rem 0.85rem !important;
	border-left: 3px solid rgb(96 165 250 / 0.45);
	background: rgb(9 9 11 / 0.35) !important;
	color: rgb(212 212 216) !important;
	font-size: 0.8125rem;
	line-height: 1.55;
	text-align: left;
	vertical-align: top;
}

.tsc-forum-post-content td.inposttable:empty::before {
	content: "(Zitat ohne Inhalt)";
	color: rgb(113 113 122);
	font-style: italic;
}

.tsc-forum-post-content p:has(+ table.tableinborder) {
	margin: 0.85rem 0 0.35rem;
	font-size: 0.75rem;
	line-height: 1.4;
	color: rgb(161 161 170);
}

.tsc-forum-post-content p:has(+ table.tableinborder) b {
	color: rgb(147 197 253);
	font-weight: 700;
}

.tsc-forum-post-content td.inposttable a {
	color: rgb(147 197 253);
	font-weight: 600;
}

.tsc-forum-post-content td.inposttable a:hover {
	color: rgb(191 219 254);
}

.tsc-forum-post-edited {
	margin: 0.75rem 0 0;
	font-size: 0.6875rem;
	color: rgb(113 113 122);
}

.tsc-forum-post-footer {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
	align-items: center;
	padding: 0.75rem 1rem;
	border-top: 1px solid rgb(39 39 42 / 0.35);
	background: rgb(9 9 11 / 0.35);
}

.tsc-forum-post-messenger {
	font-size: 0.6875rem;
	color: rgb(113 113 122);
}

.tsc-forum-compose,
.tsc-forum-compose-form {
	display: flex;
	flex-direction: column;
	gap: 0.85rem;
	min-width: 0;
}

.tsc-forum-field {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
}

.tsc-forum-field-label {
	font-size: 0.6875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(113 113 122);
}

.tsc-forum-field-hint {
	font-size: 0.6875rem;
	color: rgb(113 113 122);
}

.tsc-forum-editor {
	border-radius: 0.75rem;
	border: 1px solid var(--tsc-forum-border);
	background: rgb(9 9 11 / 0.55);
	padding: 0.5rem;
	overflow: hidden;
}

.tsc-forum-compose-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.tsc-forum-preview-posts {
	display: flex;
	flex-direction: column;
	gap: 0.65rem;
}

.tsc-forum-preview-post {
	padding: 0.75rem;
	border-radius: 0.75rem;
	border: 1px solid var(--tsc-forum-border);
	background: rgb(9 9 11 / 0.45);
	font-size: 0.75rem;
}

.tsc-forum-preview-post header {
	margin-bottom: 0.35rem;
	font-size: 0.6875rem;
	color: rgb(113 113 122);
}

.tsc-forum-mod-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr));
	gap: 0.75rem;
}

.tsc-forum-mod-card {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	padding: 0.85rem;
	border-radius: 0.75rem;
	border: 1px solid var(--tsc-forum-border);
	background: rgb(9 9 11 / 0.45);
}

.tsc-forum-mod-card--wide { grid-column: 1 / -1; }
.tsc-forum-mod-card--danger { border-color: rgb(239 68 68 / 0.35); }

.tsc-forum-mod-card h4 {
	margin: 0;
	display: flex;
	align-items: center;
	gap: 0.35rem;
	font-size: 0.75rem;
	font-weight: 800;
	color: rgb(228 228 231);
}

.tsc-forum-mod-card label {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	font-size: 0.75rem;
	color: rgb(161 161 170);
}

.tsc-forum-empty {
	padding: 2rem 1rem;
	text-align: center;
}

.tsc-forum-empty-icon {
	color: rgb(96 165 250 / 0.65);
	margin-bottom: 0.5rem;
}

.tsc-forum-empty-title {
	margin: 0 0 0.35rem;
	font-size: 1rem;
	font-weight: 800;
	color: rgb(228 228 231);
}

.tsc-forum-empty-text {
	margin: 0;
	font-size: 0.8125rem;
	color: rgb(113 113 122);
}

.tsc-forum-note {
	margin: 0.75rem 0 0;
	font-size: 0.75rem;
	color: rgb(113 113 122);
}

.tsc-page-forum .maincontent {
	text-align: left;
}

.tsc-page-forum .maincontent > br {
	display: none;
}

.tsc-page-forum .maincontent table.tableinborder {
	width: 100% !important;
	max-width: 100%;
	margin: 0 0 1rem;
	border-radius: 0.75rem;
	border: 1px solid rgb(39 39 42 / 0.65) !important;
	background: linear-gradient(160deg, rgb(24 24 27 / 0.72), rgb(9 9 11 / 0.5)) !important;
	overflow: hidden;
	box-shadow: 0 16px 40px rgb(0 0 0 / 0.28);
	border-collapse: separate !important;
	border-spacing: 0 !important;
}

.tsc-page-forum .maincontent .tabletitle,
.tsc-page-forum .maincontent .tablecat {
	background: linear-gradient(180deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.9)) !important;
	color: rgb(244 244 245) !important;
	border-bottom: 1px solid rgb(39 39 42 / 0.65) !important;
	font-size: 0.75rem !important;
	font-weight: 700 !important;
	padding: 0.65rem 0.85rem !important;
}

.tsc-page-forum .maincontent .tablea,
.tsc-page-forum .maincontent .tableb,
.tsc-page-forum .maincontent .tabled {
	background: rgb(9 9 11 / 0.35) !important;
	color: rgb(212 212 216) !important;
	border-color: rgb(39 39 42 / 0.35) !important;
	padding: 0.65rem 0.75rem !important;
	font-size: 0.75rem !important;
}

.tsc-page-forum .maincontent .tablea a,
.tsc-page-forum .maincontent .tableb a {
	color: rgb(147 197 253);
	text-decoration: none;
	font-weight: 600;
}

.tsc-page-forum .maincontent .tablea a:hover,
.tsc-page-forum .maincontent .tableb a:hover {
	color: rgb(191 219 254);
}

.tsc-page-forum .maincontent .btn,
.tsc-page-forum .maincontent input[type="submit"],
.tsc-page-forum .maincontent button {
	border-radius: 0.5rem !important;
	border: 1px solid rgb(63 63 70 / 0.65) !important;
	background: rgb(39 39 42 / 0.75) !important;
	color: rgb(212 212 216) !important;
	padding: 0.4rem 0.75rem !important;
	font-size: 0.75rem !important;
	font-weight: 600 !important;
	cursor: pointer;
	transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.tsc-page-forum .maincontent .btn:hover,
.tsc-page-forum .maincontent input[type="submit"]:hover,
.tsc-page-forum .maincontent button:hover {
	border-color: rgb(96 165 250 / 0.45) !important;
	background: rgb(96 165 250 / 0.12) !important;
	color: rgb(191 219 254) !important;
}

.tsc-page-forum .maincontent input[type="text"],
.tsc-page-forum .maincontent input[type="search"],
.tsc-page-forum .maincontent textarea,
.tsc-page-forum .maincontent select {
	border-radius: 0.5rem !important;
	border: 1px solid rgb(63 63 70 / 0.65) !important;
	background: rgb(9 9 11 / 0.75) !important;
	color: rgb(228 228 231) !important;
}

.tsc-page-forum .maincontent .tableinborder .tableinborder {
	margin: 0.75rem 0 !important;
	box-shadow: 0 10px 28px rgb(0 0 0 / 0.22);
}

.tsc-page-forum .maincontent .tableinborder .tableinborder .tablecat {
	background: rgb(96 165 250 / 0.1) !important;
	color: rgb(191 219 254) !important;
}

.tsc-page-forum .maincontent img[src*="unlocked"],
.tsc-page-forum .maincontent img[src*="locked"] {
	display: none;
}

.tsc-page-forum .maincontent .smalfont,
.tsc-page-forum .maincontent .normalfont,
.tsc-page-forum .maincontent .smallfont {
	font-size: 0.75rem !important;
	color: rgb(212 212 216) !important;
}

.tsc-page-forum .tsc-index-block {
	overflow: hidden;
}

.tsc-page-forum .tsc-index-section-header {
	border-top-left-radius: 0.75rem;
	border-top-right-radius: 0.75rem;
}

.tsc-page-forum .tsc-index-block > .tsc-index-section-body:last-child {
	border-bottom-left-radius: 0.75rem;
	border-bottom-right-radius: 0.75rem;
}

@media (max-width: 767px) {
	.tsc-forum-hero-chips {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.tsc-forum-search-row {
		flex-direction: column;
	}

	.tsc-forum-search-row .tsc-forum-btn {
		width: 100%;
	}

	.tsc-forum-table-shell {
		border: none;
		background: transparent;
		overflow: visible;
	}

	.tsc-forum-table-wrap {
		overflow: visible;
	}

	.tsc-forum-table {
		display: block;
		min-width: 0;
		width: 100%;
	}

	.tsc-forum-table thead {
		display: none;
	}

	.tsc-forum-table tbody {
		display: flex;
		flex-direction: column;
		gap: 0.75rem;
	}

	.tsc-forum-row {
		display: block;
		border: 1px solid var(--tsc-forum-border);
		border-radius: 0.85rem;
		background: linear-gradient(160deg, rgb(24 24 27 / 0.92), rgb(9 9 11 / 0.82));
		box-shadow: 0 10px 28px rgb(0 0 0 / 0.22);
		overflow: hidden;
	}

	.tsc-forum-row:hover td {
		background: transparent;
	}

	.tsc-forum-row td {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		gap: 0.75rem;
		width: 100%;
		border: none;
		border-bottom: 1px solid rgb(39 39 42 / 0.35);
		padding: 0.65rem 0.85rem;
	}

	.tsc-forum-row td:last-child {
		border-bottom: none;
	}

	.tsc-forum-row td::before {
		content: attr(data-label);
		font-size: 0.5625rem;
		font-weight: 700;
		text-transform: uppercase;
		letter-spacing: 0.06em;
		color: rgb(113 113 122);
		flex-shrink: 0;
		min-width: 5.5rem;
		padding-top: 0.15rem;
	}

	.tsc-forum-cell--main::before,
	.tsc-forum-cell--topic::before {
		display: none;
	}

	.tsc-forum-cell--main,
	.tsc-forum-cell--topic {
		flex-direction: column;
		padding-top: 0.85rem;
	}

	.tsc-forum-cell-main-inner {
		align-items: flex-start;
		width: 100%;
	}

	.tsc-forum-post-header {
		flex-direction: column;
	}

	.tsc-forum-post-actions {
		justify-content: flex-start;
		width: 100%;
	}

	.tsc-forum-post-avatar {
		width: 2.75rem;
		height: 2.75rem;
	}

	.tsc-forum-toolbar,
	.tsc-forum-jump {
		flex-direction: column;
		align-items: stretch;
	}

	.tsc-forum-toolbar .tsc-forum-btn,
	.tsc-forum-jump .tsc-forum-btn {
		width: 100%;
		justify-content: center;
	}

	.tsc-forum-jump-select {
		width: 100%;
	}

	.tsc-forum-page-btn {
		flex: 1;
	}

	.tsc-forum-mod-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 480px) {
	.tsc-forum-hero-chips {
		grid-template-columns: 1fr;
	}

	.tsc-forum-post-actions .tsc-forum-btn {
		flex: 1 1 calc(50% - 0.2rem);
		justify-content: center;
	}
}

/* ═══════════════════════════════════════════════════════════
   Premium FAQ & Rules — faq.php / rules.php
   ═══════════════════════════════════════════════════════════ */

.tsc-info-page {
	min-width: 0;
}

.tsc-info-page--faq {
	--tsc-info-accent: rgb(96 165 250);
	--tsc-info-glow: rgb(96 165 250 / 0.2);
}

.tsc-info-page--rules {
	--tsc-info-accent: rgb(251 146 60);
	--tsc-info-glow: rgb(251 146 60 / 0.2);
}

.tsc-info-page--news {
	--tsc-info-accent: rgb(52 211 153);
	--tsc-info-glow: rgb(52 211 153 / 0.18);
}

.tsc-info-hero--news {
	--tsc-info-accent: rgb(52 211 153);
	--tsc-info-glow: rgb(52 211 153 / 0.18);
}

.tsc-index-block--faq {
	border-color: rgb(96 165 250 / 0.22);
	box-shadow: 0 12px 40px rgb(0 0 0 / 0.32), 0 0 0 1px rgb(96 165 250 / 0.04) inset;
}

.tsc-index-block--rules {
	border-color: rgb(251 146 60 / 0.22);
	box-shadow: 0 12px 40px rgb(0 0 0 / 0.32), 0 0 0 1px rgb(251 146 60 / 0.04) inset;
}

.tsc-index-block--news {
	border-color: rgb(52 211 153 / 0.22);
	box-shadow: 0 12px 40px rgb(0 0 0 / 0.32), 0 0 0 1px rgb(52 211 153 / 0.04) inset;
}

.tsc-index-section-body--faq,
.tsc-index-section-body--rules,
.tsc-index-section-body--news {
	padding: clamp(0.75rem, 2vw, 1.15rem);
	min-width: 0;
}

.tsc-news-flash {
	margin-bottom: 1rem;
}

.tsc-news-form-hint {
	margin: 0 0 0.5rem;
	font-size: 0.75rem;
	color: rgb(161 161 170);
}

.tsc-news-meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.35rem;
	margin-top: 0.25rem;
	font-size: 0.6875rem;
	font-weight: 500;
	color: rgb(161 161 170);
}

.tsc-news-meta .tsc-icon {
	opacity: 0.85;
}

.tsc-info-accordion-title-wrap {
	display: flex;
	flex-direction: column;
	gap: 0.15rem;
	min-width: 0;
	flex: 1;
}

.tsc-news-meta-user {
	color: rgb(167 243 208);
	text-decoration: none;
}

.tsc-news-meta-user:hover {
	color: rgb(209 250 229);
}

.tsc-news-donor-icon {
	vertical-align: middle;
	margin-left: 0.15rem;
}

.tsc-news-body {
	color: rgb(212 212 216);
	line-height: 1.65;
}

.tsc-news-admin-actions {
	margin-top: 1rem;
	padding-top: 0.85rem;
	border-top: 1px solid rgb(255 255 255 / 0.06);
}

.tsc-news-delete-confirm {
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.tsc-news-delete-text {
	margin: 0;
	color: rgb(212 212 216);
	line-height: 1.6;
}

@media (max-width: 640px) {
	.tsc-info-accordion-summary {
		align-items: flex-start;
		gap: 0.5rem;
	}

	.tsc-news-meta {
		font-size: 0.625rem;
	}

	.tsc-info-admin-actions {
		flex-direction: column;
		align-items: stretch;
	}

	.tsc-info-admin-actions .tsc-info-btn {
		justify-content: center;
	}
}

.tsc-info-hero {
	position: relative;
	margin-bottom: 1rem;
	padding: clamp(1rem, 3vw, 1.6rem);
	border-radius: 1rem;
	border: 1px solid rgb(255 255 255 / 0.06);
	background:
		radial-gradient(ellipse 75% 55% at 8% 0%, var(--tsc-info-glow), transparent 58%),
		linear-gradient(155deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.88));
	box-shadow: 0 20px 50px rgb(0 0 0 / 0.35), inset 0 1px 0 rgb(255 255 255 / 0.04);
	overflow: hidden;
}

.tsc-info-hero-glow {
	position: absolute;
	inset: -25% -10% auto;
	height: 65%;
	background: radial-gradient(ellipse at center, var(--tsc-info-glow), transparent 70%);
	pointer-events: none;
}

.tsc-info-hero-inner {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	gap: 0.55rem;
}

.tsc-info-hero-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	align-self: flex-start;
	padding: 0.25rem 0.6rem;
	border-radius: 999px;
	border: 1px solid rgb(255 255 255 / 0.08);
	background: rgb(255 255 255 / 0.04);
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: rgb(212 212 216);
}

.tsc-info-hero-title {
	margin: 0;
	font-size: clamp(1.35rem, 3vw, 1.85rem);
	font-weight: 800;
	color: rgb(244 244 245);
}

.tsc-info-hero-sub {
	margin: 0;
	font-size: 0.8125rem;
	color: rgb(161 161 170);
	line-height: 1.5;
	max-width: 48rem;
}

.tsc-info-hero-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin-top: 0.25rem;
}

.tsc-info-chip {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	padding: 0.45rem 0.7rem;
	border-radius: 0.65rem;
	border: 1px solid rgb(39 39 42 / 0.72);
	background: rgb(9 9 11 / 0.55);
}

.tsc-info-chip-icon { color: var(--tsc-info-accent); }

.tsc-info-chip-body {
	display: flex;
	flex-direction: column;
	gap: 0.05rem;
}

.tsc-info-chip-label {
	font-size: 0.5625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(113 113 122);
}

.tsc-info-chip-value {
	font-size: 0.8125rem;
	font-weight: 800;
	color: rgb(228 228 231);
}

.tsc-info-alert {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	gap: 0.85rem;
	padding: 0.9rem 1rem;
	margin-bottom: 1rem;
	border-radius: 0.85rem;
	border: 1px solid rgb(239 68 68 / 0.35);
	background: linear-gradient(135deg, rgb(69 10 10 / 0.35), rgb(9 9 11 / 0.8));
}

.tsc-info-alert-icon { color: rgb(248 113 113); }

.tsc-info-alert-title {
	margin: 0 0 0.25rem;
	font-size: 0.875rem;
	font-weight: 800;
	color: rgb(254 202 202);
}

.tsc-info-alert-content {
	font-size: 0.8125rem;
	color: rgb(252 165 165);
	line-height: 1.5;
}

.tsc-info-accordion-list,
.tsc-info-rules-list {
	display: flex;
	flex-direction: column;
	gap: 0.65rem;
	min-width: 0;
}

.tsc-info-accordion {
	border-radius: 0.85rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: linear-gradient(160deg, rgb(24 24 27 / 0.88), rgb(9 9 11 / 0.72));
	overflow: hidden;
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.tsc-info-accordion[open] {
	border-color: rgb(96 165 250 / 0.35);
	box-shadow: 0 10px 28px rgb(0 0 0 / 0.22);
}

.tsc-info-accordion-summary {
	display: flex;
	align-items: center;
	gap: 0.55rem;
	padding: 0.85rem 1rem;
	cursor: pointer;
	list-style: none;
	font-weight: 700;
	color: rgb(244 244 245);
}

.tsc-info-accordion-summary::-webkit-details-marker { display: none; }

.tsc-info-accordion-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.75rem;
	height: 1.75rem;
	border-radius: 0.5rem;
	background: rgb(96 165 250 / 0.12);
	color: rgb(96 165 250);
	flex-shrink: 0;
}

.tsc-info-accordion-title {
	flex: 1;
	min-width: 0;
	font-size: 0.875rem;
	line-height: 1.4;
}

.tsc-info-accordion-chevron {
	color: rgb(113 113 122);
	transition: transform 0.15s ease;
}

.tsc-info-accordion[open] .tsc-info-accordion-chevron {
	transform: rotate(180deg);
	color: rgb(147 197 253);
}

.tsc-info-accordion-body {
	padding: 0 1rem 1rem;
	font-size: 0.8125rem;
	line-height: 1.6;
	color: rgb(212 212 216);
	border-top: 1px solid rgb(39 39 42 / 0.45);
}

.tsc-info-accordion-body > :first-child {
	margin-top: 0.85rem;
}

.tsc-info-rule-card {
	border-radius: 0.9rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: linear-gradient(160deg, rgb(24 24 27 / 0.92), rgb(9 9 11 / 0.78));
	box-shadow: 0 10px 28px rgb(0 0 0 / 0.2);
	overflow: hidden;
}

.tsc-info-rule-header {
	display: flex;
	align-items: center;
	gap: 0.65rem;
	padding: 0.85rem 1rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.45);
	background: rgb(251 146 60 / 0.06);
}

.tsc-info-rule-num {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	padding: 0.2rem 0.5rem;
	border-radius: 999px;
	background: rgb(251 146 60 / 0.14);
	color: rgb(251 191 36);
	font-size: 0.6875rem;
	font-weight: 800;
	flex-shrink: 0;
}

.tsc-info-rule-title {
	margin: 0;
	font-size: 0.9375rem;
	font-weight: 800;
	color: rgb(244 244 245);
	line-height: 1.35;
}

.tsc-info-rule-body {
	padding: 1rem;
	font-size: 0.8125rem;
	line-height: 1.65;
	color: rgb(212 212 216);
}

.tsc-info-rule-footer {
	padding: 0.75rem 1rem;
	border-top: 1px solid rgb(39 39 42 / 0.35);
	background: rgb(9 9 11 / 0.35);
}

.tsc-info-admin-form,
.tsc-info-form {
	display: flex;
	flex-direction: column;
	gap: 0.85rem;
}

.tsc-info-admin-form--edit {
	padding: 1rem;
	border-radius: 0.85rem;
	border: 1px solid rgb(96 165 250 / 0.45);
	background: linear-gradient(160deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.88));
	box-shadow: 0 12px 32px rgb(0 0 0 / 0.28);
	scroll-margin-top: 5.5rem;
}

.tsc-info-field--editor {
	min-width: 0;
}

.tsc-info-editor-wrap {
	min-width: 0;
}

.tsc-info-editor-wrap .tsc-markdown-editor,
.tsc-info-editor-wrap .tsc-bbcode-editor {
	width: 100%;
	border-radius: 0.65rem;
	border: 1px solid rgb(63 63 70 / 0.65);
	overflow: hidden;
}

.tsc-info-editor-wrap .tsc-markdown-editor__workspace {
	min-height: 14rem;
}

.tsc-info-edit-hint {
	display: flex;
	align-items: center;
	gap: 0.45rem;
	margin: 0 0 0.85rem;
	padding: 0.65rem 0.85rem;
	border-radius: 0.6rem;
	border: 1px solid rgb(96 165 250 / 0.35);
	background: rgb(96 165 250 / 0.08);
	color: rgb(191 219 254);
	font-size: 0.8125rem;
}

.tsc-info-form-head {
	display: flex;
	align-items: center;
	gap: 0.55rem;
}

.tsc-info-form-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2rem;
	height: 2rem;
	border-radius: 0.55rem;
	background: var(--tsc-info-accent);
	background: rgb(255 255 255 / 0.06);
	color: var(--tsc-info-accent);
}

.tsc-info-form-title {
	margin: 0;
	font-size: 0.9375rem;
	font-weight: 800;
	color: rgb(244 244 245);
}

.tsc-info-field {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
}

.tsc-info-field-label {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	font-size: 0.6875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(113 113 122);
}

.tsc-info-input,
.tsc-info-textarea {
	width: 100%;
	padding: 0.65rem 0.85rem;
	border-radius: 0.6rem;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(9 9 11 / 0.75);
	color: rgb(228 228 231);
	font-size: 0.8125rem;
	font-family: inherit;
}

.tsc-info-textarea {
	min-height: 12rem;
	resize: vertical;
	line-height: 1.5;
}

.tsc-info-input:focus,
.tsc-info-textarea:focus {
	outline: none;
	border-color: var(--tsc-info-accent);
	box-shadow: 0 0 0 3px rgb(255 255 255 / 0.04);
}

.tsc-info-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.35rem;
	padding: 0.5rem 0.85rem;
	border-radius: 0.6rem;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(39 39 42 / 0.75);
	color: rgb(212 212 216);
	font-size: 0.75rem;
	font-weight: 600;
	text-decoration: none;
	cursor: pointer;
	transition: color 0.15s ease, border-color 0.15s ease, background 0.15s ease;
}

.tsc-info-btn:hover {
	color: rgb(228 228 231);
	border-color: rgb(255 255 255 / 0.12);
	background: rgb(63 63 70 / 0.65);
}

.tsc-info-btn--primary {
	border-color: rgb(255 255 255 / 0.1);
	background: linear-gradient(135deg, rgb(39 39 42 / 0.9), rgb(24 24 27 / 0.8));
	color: rgb(244 244 245);
}

.tsc-info-page--faq .tsc-info-btn--primary {
	border-color: rgb(96 165 250 / 0.4);
	background: linear-gradient(135deg, rgb(37 99 235 / 0.35), rgb(96 165 250 / 0.18));
	color: rgb(191 219 254);
}

.tsc-info-page--rules .tsc-info-btn--primary {
	border-color: rgb(251 146 60 / 0.4);
	background: linear-gradient(135deg, rgb(234 88 12 / 0.3), rgb(251 146 60 / 0.16));
	color: rgb(254 215 170);
}

.tsc-info-btn--sm {
	padding: 0.35rem 0.6rem;
	font-size: 0.6875rem;
}

.tsc-info-btn--lg {
	padding: 0.7rem 1.1rem;
	font-size: 0.8125rem;
}

.tsc-info-btn--ghost {
	background: transparent;
}

.tsc-info-btn--danger {
	border-color: rgb(239 68 68 / 0.45);
	background: rgb(239 68 68 / 0.12);
	color: rgb(252 165 165);
}

.tsc-info-admin-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
	align-items: center;
	margin-top: 0.85rem;
	padding-top: 0.85rem;
	border-top: 1px solid rgb(39 39 42 / 0.35);
}

.tsc-info-admin-spacer { flex: 1; }

.tsc-info-empty {
	padding: 2.5rem 1rem;
	text-align: center;
}

.tsc-info-empty-icon {
	color: var(--tsc-info-accent);
	opacity: 0.7;
	margin-bottom: 0.5rem;
}

.tsc-info-empty-title {
	margin: 0 0 0.35rem;
	font-size: 1rem;
	font-weight: 800;
	color: rgb(228 228 231);
}

.tsc-info-empty-text {
	margin: 0;
	font-size: 0.8125rem;
	color: rgb(113 113 122);
}

.tsc-info-accept-form {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
}

.tsc-info-accept-text {
	margin: 0;
	font-size: 0.8125rem;
	color: rgb(212 212 216);
	line-height: 1.55;
}

.tsc-info-accept-text a {
	color: var(--tsc-info-accent);
}

.tsc-info-accept-check {
	display: flex;
	align-items: flex-start;
	gap: 0.55rem;
	padding: 0.85rem;
	border-radius: 0.75rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.45);
	font-size: 0.8125rem;
	color: rgb(212 212 216);
	cursor: pointer;
}

.tsc-info-accept-check input {
	margin-top: 0.15rem;
	accent-color: var(--tsc-info-accent);
}

.tsc-info-form-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.tsc-page-info .maincontent {
	max-width: none;
	text-align: left;
}

.tsc-page-info .maincontent > br {
	display: none;
}

@media (max-width: 767px) {
	.tsc-info-hero-chips {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.tsc-info-admin-actions {
		flex-direction: column;
		align-items: stretch;
	}

	.tsc-info-admin-actions .tsc-info-btn {
		width: 100%;
		justify-content: center;
	}

	.tsc-info-rule-header {
		flex-direction: column;
		align-items: flex-start;
	}
}

@media (max-width: 480px) {
	.tsc-info-hero-chips {
		grid-template-columns: 1fr;
	}
}

/* ═══════════════════════════════════════════════════════════
   Premium Requests — req.php
   ═══════════════════════════════════════════════════════════ */

.tsc-req-page {
	--tsc-req-accent: rgb(52 211 153);
	--tsc-req-accent-soft: rgb(52 211 153 / 0.14);
	--tsc-req-glow: rgb(52 211 153 / 0.22);
	--tsc-req-border: rgb(39 39 42 / 0.72);
	min-width: 0;
}

.tsc-req-hero {
	position: relative;
	margin-bottom: 1rem;
	padding: clamp(1rem, 3vw, 1.5rem);
	border-radius: 1rem;
	border: 1px solid rgb(52 211 153 / 0.28);
	background:
		radial-gradient(ellipse 80% 60% at 50% -20%, rgb(52 211 153 / 0.16), transparent 60%),
		linear-gradient(160deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.9));
	overflow: hidden;
}

.tsc-req-hero-glow {
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at 82% 18%, rgb(52 211 153 / 0.12), transparent 45%);
	pointer-events: none;
}

.tsc-req-hero-inner {
	position: relative;
}

.tsc-req-hero-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.25rem 0.55rem;
	border-radius: 999px;
	border: 1px solid rgb(52 211 153 / 0.35);
	background: rgb(52 211 153 / 0.1);
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(167 243 208);
	margin-bottom: 0.5rem;
}

.tsc-req-hero-title {
	margin: 0 0 0.35rem;
	font-size: clamp(1.25rem, 3vw, 1.6rem);
	font-weight: 800;
	color: rgb(244 244 245);
}

.tsc-req-hero-sub {
	margin: 0 0 0.75rem;
	font-size: 0.8125rem;
	color: rgb(161 161 170);
	line-height: 1.5;
	max-width: 42rem;
}

.tsc-req-hero-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.tsc-req-chip {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.4rem 0.65rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.45);
	font-size: 0.75rem;
	color: rgb(212 212 216);
	text-decoration: none;
	transition: border-color 0.15s, color 0.15s, background 0.15s;
}

.tsc-req-chip .tsc-icon {
	color: rgb(52 211 153);
}

.tsc-req-chip strong {
	color: rgb(244 244 245);
	font-weight: 700;
}

.tsc-req-chip--action:hover {
	border-color: rgb(52 211 153 / 0.45);
	color: rgb(167 243 208);
}

.tsc-req-guidelines {
	display: flex;
	flex-direction: column;
	gap: 0.85rem;
}

.tsc-req-guideline-highlight {
	padding: 0.9rem 1rem;
	border-radius: 0.75rem;
	border: 1px solid rgb(248 113 113 / 0.28);
	background:
		linear-gradient(145deg, rgb(248 113 113 / 0.08), rgb(9 9 11 / 0.35)),
		rgb(24 24 27 / 0.55);
}

.tsc-req-guideline-highlight-head {
	display: flex;
	align-items: flex-start;
	gap: 0.65rem;
	margin-bottom: 0.75rem;
}

.tsc-req-guideline-highlight-head .tsc-icon {
	color: rgb(52 211 153);
	margin-top: 0.1rem;
	flex-shrink: 0;
}

.tsc-req-guideline-highlight-title {
	margin: 0 0 0.2rem;
	font-size: 0.9375rem;
	font-weight: 800;
	color: rgb(244 244 245);
}

.tsc-req-guideline-highlight-sub {
	margin: 0;
	font-size: 0.75rem;
	color: rgb(161 161 170);
}

.tsc-req-guideline-highlight-body {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.55rem;
}

.tsc-req-guideline-tag {
	display: flex;
	flex-direction: column;
	gap: 0.2rem;
	padding: 0.55rem 0.65rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.45);
}

.tsc-req-guideline-tag--danger {
	border-color: rgb(248 113 113 / 0.35);
	background: rgb(248 113 113 / 0.08);
}

.tsc-req-guideline-tag-label {
	font-size: 0.5625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(113 113 122);
}

.tsc-req-guideline-tag-value {
	font-size: 0.8125rem;
	line-height: 1.45;
	color: rgb(212 212 216);
}

.tsc-req-guideline-tag-value a {
	color: rgb(52 211 153);
	text-decoration: none;
}

.tsc-req-guideline-tag-value a:hover {
	text-decoration: underline;
}

.tsc-req-guideline-tag--danger .tsc-req-guideline-tag-value {
	color: rgb(254 226 226);
}

.tsc-req-guideline-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.55rem;
}

.tsc-req-guideline-card {
	padding: 0.7rem 0.8rem;
	border-radius: 0.65rem;
	border: 1px solid var(--tsc-req-border);
	background: rgb(9 9 11 / 0.45);
}

.tsc-req-guideline-card-head {
	display: flex;
	align-items: center;
	gap: 0.35rem;
	margin-bottom: 0.35rem;
	font-size: 0.75rem;
	font-weight: 700;
	color: rgb(167 243 208);
}

.tsc-req-guideline-card-head .tsc-icon {
	color: rgb(52 211 153);
}

.tsc-req-guideline-card-text {
	margin: 0;
	font-size: 0.8125rem;
	line-height: 1.5;
	color: rgb(161 161 170);
}

.tsc-req-guideline-card-text strong {
	color: rgb(228 228 231);
}

.tsc-index-block--req {
	border-color: rgb(52 211 153 / 0.28);
	box-shadow:
		0 0 0 1px rgb(52 211 153 / 0.06) inset,
		0 12px 40px rgb(0 0 0 / 0.35);
}

.tsc-index-section-body--req {
	padding: clamp(0.75rem, 2vw, 1.15rem);
	min-width: 0;
}

.tsc-page-req .maincontent > br {
	display: none;
}

.tsc-req-toolbar-wrap {
	margin-bottom: 0.85rem;
}

.tsc-req-toolbar {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	align-items: center;
}

.tsc-req-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.45rem 0.75rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(63 63 70 / 0.75);
	background: rgb(24 24 27 / 0.85);
	color: rgb(228 228 231);
	font-size: 0.75rem;
	font-weight: 600;
	text-decoration: none;
	cursor: pointer;
	transition: border-color 0.15s, background 0.15s, color 0.15s;
}

.tsc-req-btn:hover {
	border-color: rgb(82 82 91);
	background: rgb(39 39 42 / 0.9);
	color: rgb(244 244 245);
}

.tsc-req-btn--primary {
	border-color: rgb(52 211 153 / 0.45);
	background: linear-gradient(155deg, rgb(16 185 129 / 0.35), rgb(5 150 105 / 0.22));
	color: rgb(209 250 229);
}

.tsc-req-btn--primary:hover {
	border-color: rgb(52 211 153 / 0.65);
	background: linear-gradient(155deg, rgb(16 185 129 / 0.45), rgb(5 150 105 / 0.3));
	color: rgb(236 253 245);
}

.tsc-req-btn--ghost {
	background: transparent;
	border-color: rgb(63 63 70 / 0.55);
}

.tsc-req-btn--accent {
	border-color: rgb(52 211 153 / 0.4);
	background: rgb(52 211 153 / 0.12);
	color: rgb(167 243 208);
}

.tsc-req-btn--danger {
	border-color: rgb(248 113 113 / 0.45);
	background: rgb(248 113 113 / 0.12);
	color: rgb(254 202 202);
}

.tsc-req-btn--sm {
	padding: 0.3rem 0.5rem;
	font-size: 0.6875rem;
}

.tsc-req-rules-list {
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	flex-direction: column;
	gap: 0.55rem;
}

.tsc-req-rules-item {
	padding: 0.65rem 0.8rem;
	border-radius: 0.6rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.45);
	font-size: 0.8125rem;
	line-height: 1.5;
	color: rgb(212 212 216);
}

.tsc-req-rules-item--danger {
	border-color: rgb(248 113 113 / 0.35);
	background: rgb(248 113 113 / 0.08);
	color: rgb(254 226 226);
}

.tsc-req-rules-item a {
	color: rgb(52 211 153);
}

.tsc-req-empty {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.5rem;
	padding: 2rem 1rem;
	color: rgb(161 161 170);
	text-align: center;
}

.tsc-req-table-shell {
	border-radius: 0.75rem;
	border: 1px solid var(--tsc-req-border);
	background: rgb(9 9 11 / 0.55);
	overflow: hidden;
}

.tsc-req-table-wrap {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.tsc-req-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.8125rem;
}

.tsc-req-table thead th {
	padding: 0.65rem 0.75rem;
	text-align: left;
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(161 161 170);
	background: rgb(24 24 27 / 0.9);
	border-bottom: 1px solid var(--tsc-req-border);
	white-space: nowrap;
}

.tsc-req-table thead th .tsc-icon {
	color: rgb(52 211 153);
	opacity: 0.85;
}

.tsc-req-table tbody td {
	padding: 0.7rem 0.75rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.45);
	vertical-align: middle;
	color: rgb(212 212 216);
}

.tsc-req-row:last-child td {
	border-bottom: none;
}

.tsc-req-row:hover td {
	background: rgb(24 24 27 / 0.45);
}

.tsc-req-cat {
	display: inline-block;
	padding: 0.15rem 0.45rem;
	border-radius: 999px;
	background: rgb(39 39 42 / 0.75);
	font-size: 0.6875rem;
	color: rgb(161 161 170);
}

.tsc-req-title-link {
	color: rgb(228 228 231);
	font-weight: 600;
	text-decoration: none;
	border-bottom: 1px solid rgb(52 211 153 / 0.35);
}

.tsc-req-title-link:hover {
	color: rgb(52 211 153);
}

.tsc-req-pm {
	display: inline-flex;
	color: rgb(161 161 170);
	text-decoration: none;
}

.tsc-req-pm:hover {
	color: rgb(52 211 153);
}

.tsc-req-count {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	padding: 0.2rem 0.45rem;
	border-radius: 999px;
	background: rgb(39 39 42 / 0.65);
	font-size: 0.6875rem;
}

.tsc-req-cell-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem;
	align-items: center;
}

.tsc-req-status {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	font-size: 0.6875rem;
	font-weight: 600;
}

.tsc-req-status--taken {
	color: rgb(52 211 153);
}

.tsc-req-status--locked {
	color: rgb(113 113 122);
}

.tsc-req-kv {
	display: flex;
	flex-direction: column;
	gap: 0.65rem;
}

.tsc-req-kv-row {
	display: grid;
	grid-template-columns: minmax(8rem, 11rem) 1fr;
	gap: 0.75rem;
	padding: 0.65rem 0.75rem;
	border-radius: 0.6rem;
	border: 1px solid rgb(39 39 42 / 0.55);
	background: rgb(9 9 11 / 0.4);
}

.tsc-req-kv-row--block {
	grid-template-columns: 1fr;
}

.tsc-req-kv-label {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	font-size: 0.6875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: rgb(113 113 122);
}

.tsc-req-kv-value {
	font-size: 0.875rem;
	color: rgb(228 228 231);
	word-break: break-word;
}

.tsc-req-kv-body {
	font-size: 0.875rem;
	line-height: 1.55;
	color: rgb(212 212 216);
}

.tsc-req-form,
.tsc-req-comment-form {
	display: flex;
	flex-direction: column;
	gap: 0.85rem;
}

.tsc-req-form-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.75rem;
}

.tsc-req-field {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
}

.tsc-req-field--full {
	grid-column: 1 / -1;
}

.tsc-req-field-label {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	font-size: 0.6875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: rgb(161 161 170);
}

.tsc-req-req {
	color: rgb(248 113 113);
}

.tsc-req-input,
.tsc-req-textarea {
	width: 100%;
	padding: 0.6rem 0.75rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(63 63 70 / 0.75);
	background: rgb(9 9 11 / 0.75);
	color: rgb(228 228 231);
	font-size: 0.875rem;
	box-sizing: border-box;
}

.tsc-req-textarea {
	min-height: 6rem;
	resize: vertical;
}

.tsc-req-input:focus,
.tsc-req-textarea:focus {
	outline: none;
	border-color: rgb(52 211 153 / 0.55);
	box-shadow: 0 0 0 2px rgb(52 211 153 / 0.15);
}

.tsc-req-field--editor {
	gap: 0.45rem;
}

.tsc-req-form-hint {
	margin: 0;
	font-size: 0.75rem;
	color: rgb(161 161 170);
}

.tsc-req-editor-wrap {
	min-width: 0;
}

.tsc-req-editor-wrap .tsc-markdown-editor,
.tsc-req-editor-wrap .tsc-bbcode-editor {
	width: 100%;
	border-radius: 0.55rem;
	border: 1px solid rgb(63 63 70 / 0.75);
	overflow: hidden;
}

.tsc-req-editor-wrap .tsc-markdown-editor__workspace {
	min-height: 12rem;
}

.tsc-req-editor-wrap .tsc-markdown-editor__textarea {
	border: none;
	border-radius: 0;
	background: rgb(9 9 11 / 0.75);
}

.tsc-req-form-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.tsc-req-alert {
	display: flex;
	gap: 0.75rem;
	padding: 0.85rem 1rem;
	border-radius: 0.65rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(24 24 27 / 0.65);
}

.tsc-req-alert--info { border-color: rgb(96 165 250 / 0.35); background: rgb(96 165 250 / 0.08); }
.tsc-req-alert--success { border-color: rgb(52 211 153 / 0.35); background: rgb(52 211 153 / 0.08); }
.tsc-req-alert--warning { border-color: rgb(251 191 36 / 0.35); background: rgb(251 191 36 / 0.08); }
.tsc-req-alert--danger { border-color: rgb(248 113 113 / 0.35); background: rgb(248 113 113 / 0.08); }

.tsc-req-alert-title {
	margin: 0 0 0.25rem;
	font-size: 0.875rem;
	font-weight: 700;
	color: rgb(244 244 245);
}

.tsc-req-alert-content {
	font-size: 0.8125rem;
	line-height: 1.5;
	color: rgb(212 212 216);
}

.tsc-req-error-list {
	margin: 0;
	padding-left: 1.1rem;
	color: rgb(254 202 202);
}

/* Index FAQ widget */
.tsc-index-faq-list {
	display: flex;
	flex-direction: column;
	gap: 0.45rem;
}

.tsc-index-faq-item {
	border-radius: 0.65rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.45);
	overflow: hidden;
}

.tsc-index-faq-item[open] {
	border-color: rgb(96 165 250 / 0.35);
	box-shadow: 0 0 0 1px rgb(96 165 250 / 0.06) inset;
}

.tsc-index-faq-summary {
	display: flex;
	align-items: center;
	gap: 0.55rem;
	padding: 0.7rem 0.85rem;
	cursor: pointer;
	list-style: none;
	font-size: 0.875rem;
	font-weight: 600;
	color: rgb(228 228 231);
}

.tsc-index-faq-summary::-webkit-details-marker {
	display: none;
}

.tsc-index-faq-icon {
	display: inline-flex;
	color: rgb(96 165 250);
	flex-shrink: 0;
}

.tsc-index-faq-title {
	flex: 1;
	min-width: 0;
}

.tsc-index-faq-chevron {
	display: inline-flex;
	color: rgb(113 113 122);
	transition: transform 0.2s;
}

.tsc-index-faq-item[open] .tsc-index-faq-chevron {
	transform: rotate(180deg);
	color: rgb(96 165 250);
}

.tsc-index-faq-body {
	padding: 0 0.85rem 0.85rem 2.35rem;
	font-size: 0.8125rem;
	line-height: 1.55;
	color: rgb(161 161 170);
}

.tsc-index-faq-body a {
	color: rgb(96 165 250);
}

.tsc-index-faq-footer {
	margin-top: 0.65rem;
	padding-top: 0.65rem;
	border-top: 1px solid rgb(39 39 42 / 0.55);
}

.tsc-index-faq-more,
.tsc-index-faq-link {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	font-size: 0.75rem;
	font-weight: 600;
	color: rgb(96 165 250);
	text-decoration: none;
}

.tsc-index-faq-more:hover,
.tsc-index-faq-link:hover {
	color: rgb(147 197 253);
}

.tsc-index-faq-empty {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.5rem;
	padding: 1.5rem 1rem;
	text-align: center;
	color: rgb(161 161 170);
}

@media (max-width: 767px) {
	.tsc-req-table thead {
		display: none;
	}

	.tsc-req-table tbody {
		display: flex;
		flex-direction: column;
		gap: 0.65rem;
		padding: 0.65rem;
	}

	.tsc-req-row {
		display: block;
		border-radius: 0.75rem;
		border: 1px solid rgb(39 39 42 / 0.65);
		background: linear-gradient(160deg, rgb(24 24 27 / 0.92), rgb(9 9 11 / 0.82));
		box-shadow: 0 10px 28px rgb(0 0 0 / 0.22);
		overflow: hidden;
	}

	.tsc-req-row td {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		gap: 0.75rem;
		width: 100%;
		border: none;
		border-bottom: 1px solid rgb(39 39 42 / 0.35);
		padding: 0.65rem 0.85rem;
	}

	.tsc-req-row td:last-child {
		border-bottom: none;
	}

	.tsc-req-row td::before {
		content: attr(data-label);
		font-size: 0.5625rem;
		font-weight: 700;
		text-transform: uppercase;
		letter-spacing: 0.06em;
		color: rgb(113 113 122);
		flex-shrink: 0;
		min-width: 5.5rem;
		padding-top: 0.15rem;
	}

	.tsc-req-cell--title {
		flex-direction: column;
	}

	.tsc-req-cell--title::before {
		display: none;
	}

	.tsc-req-form-grid {
		grid-template-columns: 1fr;
	}

	.tsc-req-kv-row {
		grid-template-columns: 1fr;
	}

	.tsc-req-toolbar {
		flex-direction: column;
		align-items: stretch;
	}

	.tsc-req-toolbar .tsc-req-btn {
		width: 100%;
		justify-content: center;
	}

	.tsc-req-guideline-highlight-body,
	.tsc-req-guideline-grid {
		grid-template-columns: 1fr;
	}

	.tsc-index-faq-body {
		padding-left: 0.85rem;
	}
}

/* ═══════════════════════════════════════════════════════════
   Premium Top 10 — topten.php
   ═══════════════════════════════════════════════════════════ */

.tsc-topten-page {
	--tsc-topten-accent: rgb(250 204 21);
	--tsc-topten-accent-soft: rgb(250 204 21 / 0.14);
	--tsc-topten-glow: rgb(250 204 21 / 0.22);
	min-width: 0;
}

.tsc-index-block--topten {
	border-color: rgb(250 204 21 / 0.28);
	box-shadow:
		0 0 0 1px rgb(250 204 21 / 0.06) inset,
		0 12px 40px rgb(0 0 0 / 0.35);
}

.tsc-index-section-body--topten {
	padding: 0;
	min-width: 0;
}

.tsc-page-topten .maincontent > br {
	display: none;
}

.tsc-topten-hero {
	position: relative;
	margin-bottom: 1rem;
	padding: clamp(1rem, 3vw, 1.5rem);
	border-radius: 1rem;
	border: 1px solid rgb(250 204 21 / 0.28);
	background:
		radial-gradient(ellipse 75% 55% at 8% 0%, rgb(250 204 21 / 0.16), transparent 58%),
		linear-gradient(155deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.88));
	box-shadow: 0 20px 50px rgb(0 0 0 / 0.35), inset 0 1px 0 rgb(255 255 255 / 0.04);
	overflow: hidden;
}

.tsc-topten-hero-glow {
	position: absolute;
	inset: -25% -10% auto;
	height: 65%;
	background: radial-gradient(ellipse at center, var(--tsc-topten-glow), transparent 70%);
	pointer-events: none;
}

.tsc-topten-hero-inner {
	position: relative;
	z-index: 1;
}

.tsc-topten-hero-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.25rem 0.6rem;
	border-radius: 999px;
	border: 1px solid rgb(250 204 21 / 0.35);
	background: rgb(250 204 21 / 0.1);
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: rgb(254 240 138);
}

.tsc-topten-hero-title {
	margin: 0.35rem 0 0;
	font-size: clamp(1.35rem, 3vw, 1.85rem);
	font-weight: 800;
	color: rgb(244 244 245);
}

.tsc-topten-hero-sub {
	margin: 0.35rem 0 0;
	font-size: 0.8125rem;
	color: rgb(161 161 170);
	line-height: 1.5;
}

.tsc-topten-tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
	margin-bottom: 1rem;
}

.tsc-topten-tab {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.5rem 0.85rem;
	border-radius: 0.6rem;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(24 24 27 / 0.65);
	font-size: 0.75rem;
	font-weight: 600;
	color: rgb(161 161 170);
	text-decoration: none;
	transition: border-color 0.15s, color 0.15s, background 0.15s;
}

.tsc-topten-tab:hover {
	border-color: rgb(250 204 21 / 0.4);
	color: rgb(228 228 231);
}

.tsc-topten-tab--active {
	border-color: rgb(250 204 21 / 0.55);
	background: rgb(250 204 21 / 0.12);
	color: rgb(254 240 138);
}

.tsc-topten-section-meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.5rem 0.75rem;
	padding: 0.65rem 0.9rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.55);
	background: rgb(9 9 11 / 0.35);
}

.tsc-topten-subtitle {
	margin: 0;
	font-size: 0.75rem;
	color: rgb(113 113 122);
}

.tsc-topten-limits {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem;
}

.tsc-topten-limit-link {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	padding: 0.25rem 0.5rem;
	border-radius: 999px;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(24 24 27 / 0.65);
	font-size: 0.625rem;
	font-weight: 600;
	color: rgb(161 161 170);
	text-decoration: none;
	transition: border-color 0.15s, color 0.15s;
}

.tsc-topten-limit-link:hover {
	border-color: rgb(250 204 21 / 0.45);
	color: rgb(250 204 21);
}

.tsc-topten-table-shell {
	border-radius: 0;
	overflow: hidden;
}

.tsc-topten-table-wrap {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.tsc-topten-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.8125rem;
}

.tsc-topten-table thead th {
	padding: 0.65rem 0.75rem;
	text-align: left;
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(161 161 170);
	background: rgb(24 24 27 / 0.9);
	border-bottom: 1px solid rgb(39 39 42 / 0.65);
	white-space: nowrap;
}

.tsc-topten-table thead th .tsc-icon {
	color: rgb(250 204 21);
	opacity: 0.85;
}

.tsc-topten-table tbody td {
	padding: 0.65rem 0.75rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.4);
	color: rgb(212 212 216);
	vertical-align: middle;
}

.tsc-topten-row:last-child td {
	border-bottom: none;
}

.tsc-topten-row:hover td {
	background: rgb(24 24 27 / 0.45);
}

.tsc-topten-row--self td {
	background: rgb(250 204 21 / 0.08);
}

.tsc-topten-row--self:hover td {
	background: rgb(250 204 21 / 0.12);
}

.tsc-topten-rank {
	display: inline-flex;
	align-items: center;
	gap: 0.2rem;
	min-width: 1.75rem;
	font-weight: 700;
	color: rgb(161 161 170);
}

.tsc-topten-rank--1 { color: rgb(250 204 21); }
.tsc-topten-rank--2 { color: rgb(212 212 216); }
.tsc-topten-rank--3 { color: rgb(217 119 6); }

.tsc-topten-user {
	text-decoration: none;
}

.tsc-topten-torrent {
	color: rgb(228 228 231);
	font-weight: 600;
	text-decoration: none;
	border-bottom: 1px solid rgb(250 204 21 / 0.3);
}

.tsc-topten-torrent:hover {
	color: rgb(250 204 21);
}

.tsc-topten-anon {
	color: rgb(161 161 170);
}

.tsc-topten-cell--num {
	text-align: right;
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
}

.tsc-topten-cell--seed {
	color: rgb(74 222 128);
}

.tsc-topten-cell--leech {
	color: rgb(96 165 250);
}

.tsc-topten-cell--date {
	font-size: 0.75rem;
}

.tsc-topten-muted {
	color: rgb(113 113 122);
}

.tsc-topten-flag-wrap {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
}

.tsc-topten-flag {
	width: 1.25rem;
	height: auto;
	border-radius: 0.15rem;
}

.tsc-topten-empty {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.5rem;
	padding: 2rem 1rem;
	color: rgb(161 161 170);
	text-align: center;
}

.tsc-topten-footnote {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.35rem;
	margin: 1rem 0 0;
	padding: 0.65rem 0.85rem;
	border-radius: 0.6rem;
	border: 1px solid rgb(39 39 42 / 0.55);
	background: rgb(9 9 11 / 0.45);
	font-size: 0.6875rem;
	color: rgb(113 113 122);
	text-align: center;
}

@media (max-width: 767px) {
	.tsc-topten-tabs {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.tsc-topten-tab {
		justify-content: center;
	}

	.tsc-topten-table thead {
		display: none;
	}

	.tsc-topten-table tbody {
		display: flex;
		flex-direction: column;
		gap: 0.65rem;
		padding: 0.65rem;
	}

	.tsc-topten-row {
		display: block;
		border-radius: 0.75rem;
		border: 1px solid rgb(39 39 42 / 0.65);
		background: linear-gradient(160deg, rgb(24 24 27 / 0.92), rgb(9 9 11 / 0.82));
		box-shadow: 0 10px 28px rgb(0 0 0 / 0.22);
		overflow: hidden;
	}

	.tsc-topten-row td {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		gap: 0.75rem;
		width: 100%;
		border: none;
		border-bottom: 1px solid rgb(39 39 42 / 0.35);
		padding: 0.65rem 0.85rem;
	}

	.tsc-topten-row td:last-child {
		border-bottom: none;
	}

	.tsc-topten-row td::before {
		content: attr(data-label);
		font-size: 0.5625rem;
		font-weight: 700;
		text-transform: uppercase;
		letter-spacing: 0.06em;
		color: rgb(113 113 122);
		flex-shrink: 0;
		min-width: 5rem;
		padding-top: 0.15rem;
	}

	.tsc-topten-cell--user,
	.tsc-topten-cell--title,
	.tsc-topten-cell--country {
		flex-direction: column;
	}

	.tsc-topten-cell--user::before,
	.tsc-topten-cell--title::before,
	.tsc-topten-cell--country::before {
		display: none;
	}

	.tsc-topten-cell--num {
		text-align: right;
	}

	.tsc-topten-section-meta {
		flex-direction: column;
		align-items: flex-start;
	}
}

@media (max-width: 480px) {
	.tsc-topten-tabs {
		grid-template-columns: 1fr;
	}
}

/* ═══════════════════════════════════════════════════════════
   Premium Bewerbung Admin — bewerbung.php
   ═══════════════════════════════════════════════════════════ */

.tsc-bewerbung-page {
	--tsc-bewerbung-accent: rgb(167 139 250);
	--tsc-bewerbung-accent-soft: rgb(167 139 250 / 0.14);
	--tsc-bewerbung-glow: rgb(167 139 250 / 0.22);
	--tsc-bewerbung-border: rgb(39 39 42 / 0.72);
	min-width: 0;
}

.tsc-index-block--bewerbung {
	border-color: rgb(167 139 250 / 0.28);
	box-shadow:
		0 0 0 1px rgb(167 139 250 / 0.06) inset,
		0 12px 40px rgb(0 0 0 / 0.35);
}

.tsc-index-section-body--bewerbung {
	padding: clamp(0.75rem, 2vw, 1.15rem);
	min-width: 0;
}

.tsc-page-bewerbung .maincontent > br {
	display: none;
}

.tsc-bewerbung-hero {
	position: relative;
	margin-bottom: 1rem;
	padding: clamp(1rem, 3vw, 1.5rem);
	border-radius: 1rem;
	border: 1px solid rgb(167 139 250 / 0.28);
	background:
		radial-gradient(ellipse 80% 60% at 50% -20%, rgb(167 139 250 / 0.18), transparent 60%),
		linear-gradient(160deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.9));
	overflow: hidden;
}

.tsc-bewerbung-hero-glow {
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at 80% 20%, rgb(167 139 250 / 0.12), transparent 45%);
	pointer-events: none;
}

.tsc-bewerbung-hero-inner {
	position: relative;
}

.tsc-bewerbung-hero-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.25rem 0.55rem;
	border-radius: 999px;
	border: 1px solid rgb(167 139 250 / 0.35);
	background: rgb(167 139 250 / 0.1);
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(221 214 254);
	margin-bottom: 0.5rem;
}

.tsc-bewerbung-hero-title {
	margin: 0 0 0.35rem;
	font-size: clamp(1.25rem, 3vw, 1.6rem);
	font-weight: 800;
	color: rgb(244 244 245);
}

.tsc-bewerbung-hero-sub {
	margin: 0 0 0.75rem;
	font-size: 0.8125rem;
	color: rgb(161 161 170);
	line-height: 1.5;
	max-width: 42rem;
}

.tsc-bewerbung-hero-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.tsc-bewerbung-chip {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.4rem 0.65rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.45);
	font-size: 0.75rem;
	color: rgb(212 212 216);
}

.tsc-bewerbung-chip .tsc-icon {
	color: rgb(167 139 250);
}

.tsc-bewerbung-chip strong {
	color: rgb(244 244 245);
	font-weight: 700;
	font-variant-numeric: tabular-nums;
}

.tsc-bewerbung-chip--open .tsc-icon {
	color: rgb(250 204 21);
}

.tsc-bewerbung-chip--accepted .tsc-icon {
	color: rgb(74 222 128);
}

.tsc-bewerbung-chip--refused .tsc-icon {
	color: rgb(248 113 113);
}

.tsc-bewerbung-notice {
	display: flex;
	align-items: flex-start;
	gap: 0.6rem;
	padding: 0.75rem 0.9rem;
	margin-bottom: 0.85rem;
	border-radius: 0.65rem;
	border: 1px solid rgb(250 204 21 / 0.35);
	background: rgb(250 204 21 / 0.08);
	color: rgb(254 243 199);
	font-size: 0.8125rem;
	line-height: 1.45;
}

.tsc-bewerbung-notice--success {
	border-color: rgb(74 222 128 / 0.35);
	background: rgb(74 222 128 / 0.08);
	color: rgb(220 252 231);
}

.tsc-bewerbung-notice-icon .tsc-icon {
	color: rgb(250 204 21);
}

.tsc-bewerbung-notice--success .tsc-bewerbung-notice-icon .tsc-icon {
	color: rgb(74 222 128);
}

.tsc-bewerbung-data {
	min-width: 0;
}

.tsc-bewerbung-loading,
.tsc-bewerbung-empty {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0.6rem;
	padding: 2.5rem 1rem;
	color: rgb(161 161 170);
	text-align: center;
}

.tsc-bewerbung-loading .tsc-icon {
	color: rgb(167 139 250);
	animation: tsc-bewerbung-spin 0.9s linear infinite !important;
}

@keyframes tsc-bewerbung-spin {
	to { transform: rotate(360deg); }
}

.tsc-bewerbung-list {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
}

.tsc-bewerbung-card {
	border-radius: 0.8rem;
	border: 1px solid var(--tsc-bewerbung-border);
	background: linear-gradient(160deg, rgb(24 24 27 / 0.92), rgb(9 9 11 / 0.82));
	box-shadow: 0 10px 28px rgb(0 0 0 / 0.22);
	overflow: hidden;
}

.tsc-bewerbung-card.tsc-bewerbung-status--open {
	border-left: 3px solid rgb(96 165 250);
}

.tsc-bewerbung-card.tsc-bewerbung-status--accepted {
	border-left: 3px solid rgb(74 222 128);
}

.tsc-bewerbung-card.tsc-bewerbung-status--refused {
	border-left: 3px solid rgb(248 113 113);
}

.tsc-bewerbung-card-head {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
	gap: 0.65rem;
	padding: 0.85rem 1rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.45);
	background: rgb(24 24 27 / 0.55);
}

.tsc-bewerbung-card-user {
	display: flex;
	align-items: center;
	gap: 0.65rem;
	min-width: 0;
}

.tsc-bewerbung-card-avatar {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2.25rem;
	height: 2.25rem;
	border-radius: 0.55rem;
	background: rgb(167 139 250 / 0.15);
	color: rgb(196 181 253);
	flex-shrink: 0;
}

.tsc-bewerbung-card-name {
	margin: 0;
	font-size: 0.9375rem;
	font-weight: 700;
	color: rgb(244 244 245);
	word-break: break-word;
}

.tsc-bewerbung-card-date {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	font-size: 0.6875rem;
	color: rgb(161 161 170);
}

.tsc-bewerbung-badge {
	display: inline-flex;
	align-items: center;
	padding: 0.2rem 0.55rem;
	border-radius: 999px;
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
}

.tsc-bewerbung-badge.tsc-bewerbung-status--open {
	background: rgb(96 165 250 / 0.15);
	color: rgb(191 219 254);
}

.tsc-bewerbung-badge.tsc-bewerbung-status--accepted {
	background: rgb(74 222 128 / 0.15);
	color: rgb(187 247 208);
}

.tsc-bewerbung-badge.tsc-bewerbung-status--refused {
	background: rgb(248 113 113 / 0.15);
	color: rgb(254 202 202);
}

.tsc-bewerbung-card-body {
	padding: 0.85rem 1rem;
}

.tsc-bewerbung-kv {
	display: flex;
	flex-direction: column;
	gap: 0.55rem;
}

.tsc-bewerbung-kv-row {
	display: grid;
	grid-template-columns: minmax(5.5rem, 7rem) 1fr;
	gap: 0.5rem 0.75rem;
	align-items: start;
	font-size: 0.8125rem;
}

.tsc-bewerbung-kv-label {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: rgb(113 113 122);
	padding-top: 0.1rem;
}

.tsc-bewerbung-kv-value {
	color: rgb(212 212 216);
	word-break: break-word;
	min-width: 0;
}

.tsc-bewerbung-link {
	color: rgb(167 139 250);
	text-decoration: none;
	border-bottom: 1px solid rgb(167 139 250 / 0.35);
}

.tsc-bewerbung-link:hover {
	color: rgb(196 181 253);
}

.tsc-bewerbung-country {
	color: rgb(161 161 170);
	font-size: 0.75rem;
}

.tsc-bewerbung-proof img {
	max-width: 100%;
	height: auto;
	border-radius: 0.45rem;
	margin-top: 0.25rem;
}

.tsc-bewerbung-card-foot {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	justify-content: space-between;
	gap: 0.65rem;
	padding: 0.85rem 1rem;
	border-top: 1px solid rgb(39 39 42 / 0.45);
	background: rgb(9 9 11 / 0.35);
}

.tsc-bewerbung-status-form {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	gap: 0.5rem 0.75rem;
	flex: 1;
	min-width: 0;
}

.tsc-bewerbung-status-label {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: rgb(113 113 122);
	width: 100%;
}

.tsc-bewerbung-status-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
	align-items: center;
	width: 100%;
}

.tsc-bewerbung-select {
	flex: 1;
	min-width: 8rem;
	padding: 0.45rem 0.6rem;
	border-radius: 0.5rem;
	border: 1px solid rgb(63 63 70 / 0.75);
	background: rgb(24 24 27 / 0.9);
	color: rgb(228 228 231);
	font-size: 0.8125rem;
}

.tsc-bewerbung-select--open {
	border-color: rgb(96 165 250 / 0.45);
}

.tsc-bewerbung-select--accepted {
	border-color: rgb(74 222 128 / 0.45);
}

.tsc-bewerbung-select--refused {
	border-color: rgb(248 113 113 / 0.45);
}

.tsc-bewerbung-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.35rem;
	padding: 0.45rem 0.75rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(63 63 70 / 0.75);
	background: rgb(24 24 27 / 0.85);
	color: rgb(228 228 231);
	font-size: 0.75rem;
	font-weight: 600;
	text-decoration: none;
	cursor: pointer;
	transition: border-color 0.15s, background 0.15s, color 0.15s;
	white-space: nowrap;
}

.tsc-bewerbung-btn:hover {
	border-color: rgb(82 82 91);
	background: rgb(39 39 42 / 0.9);
	color: rgb(244 244 245);
}

.tsc-bewerbung-btn--primary {
	border-color: rgb(167 139 250 / 0.45);
	background: linear-gradient(155deg, rgb(139 92 246 / 0.35), rgb(109 40 217 / 0.22));
	color: rgb(237 233 254);
}

.tsc-bewerbung-btn--primary:hover {
	border-color: rgb(167 139 250 / 0.65);
	background: linear-gradient(155deg, rgb(139 92 246 / 0.45), rgb(109 40 217 / 0.3));
	color: rgb(245 243 255);
}

.tsc-bewerbung-btn--danger {
	border-color: rgb(248 113 113 / 0.45);
	background: rgb(248 113 113 / 0.12);
	color: rgb(254 202 202);
}

.tsc-bewerbung-btn--danger:hover {
	border-color: rgb(248 113 113 / 0.65);
	background: rgb(248 113 113 / 0.2);
	color: rgb(254 226 226);
}

.tsc-bewerbung-pagination {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0.35rem;
	margin-top: 1rem;
	padding-top: 0.5rem;
}

.tsc-bewerbung-page-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2.1rem;
	height: 2.1rem;
	padding: 0 0.5rem;
	border-radius: 0.5rem;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(24 24 27 / 0.8);
	color: rgb(212 212 216);
	font-size: 0.75rem;
	font-weight: 600;
	text-decoration: none;
	transition: border-color 0.15s, background 0.15s, color 0.15s;
}

.tsc-bewerbung-page-btn:hover {
	border-color: rgb(167 139 250 / 0.45);
	background: rgb(167 139 250 / 0.12);
	color: rgb(237 233 254);
}

.tsc-bewerbung-page-btn--active {
	border-color: rgb(167 139 250 / 0.55);
	background: rgb(167 139 250 / 0.2);
	color: rgb(237 233 254);
	cursor: default;
}

@media (max-width: 767px) {
	.tsc-bewerbung-kv-row {
		grid-template-columns: 1fr;
		gap: 0.25rem;
	}

	.tsc-bewerbung-card-foot {
		flex-direction: column;
		align-items: stretch;
	}

	.tsc-bewerbung-status-actions {
		flex-direction: column;
		align-items: stretch;
	}

	.tsc-bewerbung-select,
	.tsc-bewerbung-btn {
		width: 100%;
	}
}

/* ═══════════════════════════════════════════════════════════
   Premium Torrent Report — reporttorrent.php
   ═══════════════════════════════════════════════════════════ */

.tsc-reporttorrent-page {
	--tsc-reporttorrent-accent: rgb(248 113 113);
	--tsc-reporttorrent-accent-soft: rgb(248 113 113 / 0.14);
	--tsc-reporttorrent-border: rgb(39 39 42 / 0.72);
	min-width: 0;
	padding-bottom: 1.5rem;
}

.tsc-index-block--reporttorrent {
	border-color: rgb(248 113 113 / 0.28);
	box-shadow:
		0 0 0 1px rgb(248 113 113 / 0.06) inset,
		0 12px 40px rgb(0 0 0 / 0.35);
}

.tsc-index-section-body--reporttorrent {
	padding: clamp(0.75rem, 2vw, 1.15rem);
	min-width: 0;
}

.tsc-index-section-body--flush.tsc-index-section-body--reporttorrent {
	padding: clamp(0.75rem, 2vw, 1.15rem);
}

.tsc-page-reporttorrent .maincontent > br {
	display: none;
}

.tsc-reporttorrent-hero {
	position: relative;
	margin-bottom: 1rem;
	padding: clamp(1rem, 3vw, 1.5rem);
	border-radius: 1rem;
	border: 1px solid rgb(248 113 113 / 0.28);
	background:
		radial-gradient(ellipse 80% 60% at 50% -20%, rgb(248 113 113 / 0.16), transparent 60%),
		linear-gradient(160deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.9));
	overflow: hidden;
}

.tsc-reporttorrent-hero-glow {
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at 82% 18%, rgb(248 113 113 / 0.12), transparent 45%);
	pointer-events: none;
}

.tsc-reporttorrent-hero-inner {
	position: relative;
}

.tsc-reporttorrent-hero-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.25rem 0.55rem;
	border-radius: 999px;
	border: 1px solid rgb(248 113 113 / 0.35);
	background: rgb(248 113 113 / 0.1);
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(254 202 202);
	margin-bottom: 0.5rem;
}

.tsc-reporttorrent-hero-title {
	margin: 0 0 0.35rem;
	font-size: clamp(1.25rem, 3vw, 1.6rem);
	font-weight: 800;
	color: rgb(244 244 245);
}

.tsc-reporttorrent-hero-sub {
	margin: 0 0 0.75rem;
	font-size: 0.8125rem;
	color: rgb(161 161 170);
	line-height: 1.5;
	max-width: 42rem;
}

.tsc-reporttorrent-hero-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.tsc-reporttorrent-chip {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.4rem 0.65rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.45);
	font-size: 0.75rem;
	color: rgb(212 212 216);
	text-decoration: none;
	max-width: 100%;
}

.tsc-reporttorrent-chip .tsc-icon {
	color: rgb(248 113 113);
	flex-shrink: 0;
}

.tsc-reporttorrent-chip strong {
	color: rgb(244 244 245);
	font-weight: 700;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	max-width: 28rem;
}

.tsc-reporttorrent-chip--link:hover {
	border-color: rgb(248 113 113 / 0.45);
	color: rgb(254 202 202);
}

.tsc-reporttorrent-chip--torrent {
	min-width: 0;
}

.tsc-reporttorrent-notice {
	display: flex;
	align-items: flex-start;
	gap: 0.65rem;
	padding: 0.8rem 0.9rem;
	margin-bottom: 1rem;
	border-radius: 0.65rem;
	border: 1px solid rgb(56 189 248 / 0.28);
	background: rgb(56 189 248 / 0.08);
	color: rgb(186 230 253);
	font-size: 0.8125rem;
	line-height: 1.5;
}

.tsc-reporttorrent-notice a {
	color: rgb(125 211 252);
}

.tsc-reporttorrent-notice-icon .tsc-icon {
	color: rgb(56 189 248);
	flex-shrink: 0;
	margin-top: 0.1rem;
}

.tsc-reporttorrent-notice-body p {
	margin: 0 0 0.45rem;
}

.tsc-reporttorrent-notice-body p:last-child {
	margin-bottom: 0;
}

.tsc-reporttorrent-inline-error {
	display: flex;
	align-items: center;
	gap: 0.45rem;
	padding: 0.65rem 0.8rem;
	margin-bottom: 0.85rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(248 113 113 / 0.35);
	background: rgb(248 113 113 / 0.1);
	color: rgb(254 202 202);
	font-size: 0.8125rem;
}

.tsc-reporttorrent-inline-error .tsc-icon {
	color: rgb(248 113 113);
}

.tsc-reporttorrent-form {
	display: flex;
	flex-direction: column;
	gap: 0.85rem;
}

.tsc-reporttorrent-field {
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
}

.tsc-reporttorrent-label {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	font-size: 0.75rem;
	font-weight: 700;
	color: rgb(212 212 216);
}

.tsc-reporttorrent-label .tsc-icon {
	color: rgb(248 113 113);
}

.tsc-reporttorrent-select,
.tsc-reporttorrent-textarea {
	width: 100%;
	padding: 0.65rem 0.75rem;
	border-radius: 0.6rem;
	border: 1px solid var(--tsc-reporttorrent-border);
	background: rgb(9 9 11 / 0.55);
	color: rgb(244 244 245);
	font: inherit;
	font-size: 0.875rem;
	line-height: 1.45;
}

.tsc-reporttorrent-select:focus,
.tsc-reporttorrent-textarea:focus {
	outline: none;
	border-color: rgb(248 113 113 / 0.55);
	box-shadow: 0 0 0 3px rgb(248 113 113 / 0.12);
}

.tsc-reporttorrent-textarea {
	min-height: 9rem;
	resize: vertical;
}

.tsc-reporttorrent-hint {
	font-size: 0.75rem;
	color: rgb(113 113 122);
}

.tsc-reporttorrent-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.55rem;
	justify-content: flex-end;
	padding-top: 0.25rem;
}

.tsc-reporttorrent-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.4rem;
	padding: 0.55rem 0.9rem;
	border-radius: 0.6rem;
	border: 1px solid rgb(63 63 70 / 0.75);
	background: rgb(24 24 27 / 0.85);
	color: rgb(228 228 231);
	font-size: 0.8125rem;
	font-weight: 600;
	text-decoration: none;
	cursor: pointer;
	transition: border-color 0.15s, background 0.15s, color 0.15s;
}

.tsc-reporttorrent-btn:hover {
	border-color: rgb(113 113 122 / 0.75);
	color: rgb(250 250 250);
}

.tsc-reporttorrent-btn--primary {
	border-color: rgb(248 113 113 / 0.45);
	background: linear-gradient(135deg, rgb(239 68 68), rgb(220 38 38));
	color: rgb(255 255 255);
	box-shadow: 0 8px 22px rgb(239 68 68 / 0.22);
}

.tsc-reporttorrent-btn--primary:hover {
	border-color: rgb(248 113 113 / 0.65);
	color: rgb(255 255 255);
}

.tsc-reporttorrent-btn--ghost {
	background: rgb(9 9 11 / 0.45);
}

.tsc-reporttorrent-success {
	display: flex;
	align-items: flex-start;
	gap: 0.85rem;
	padding: 1rem 0.25rem;
}

.tsc-reporttorrent-success-icon .tsc-icon {
	color: rgb(74 222 128);
}

.tsc-reporttorrent-success-title {
	margin: 0 0 0.35rem;
	font-size: 1.1rem;
	font-weight: 800;
	color: rgb(244 244 245);
}

.tsc-reporttorrent-success-text {
	margin: 0 0 0.85rem;
	font-size: 0.875rem;
	color: rgb(161 161 170);
	line-height: 1.5;
}

.tsc-reporttorrent-success-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

@media (max-width: 767px) {
	.tsc-reporttorrent-chip strong {
		max-width: 14rem;
	}

	.tsc-reporttorrent-actions {
		flex-direction: column;
		align-items: stretch;
	}

	.tsc-reporttorrent-btn {
		width: 100%;
	}
}

/* ═══════════════════════════════════════════════════════════
   Premium Users list — users.php
   ═══════════════════════════════════════════════════════════ */

.tsc-users-page {
	--tsc-users-accent: rgb(56 189 248);
	--tsc-users-accent-soft: rgb(56 189 248 / 0.14);
	--tsc-users-glow: rgb(56 189 248 / 0.22);
	--tsc-users-border: rgb(39 39 42 / 0.72);
	min-width: 0;
}

.tsc-index-block--users {
	border-color: rgb(56 189 248 / 0.28);
	box-shadow:
		0 0 0 1px rgb(56 189 248 / 0.06) inset,
		0 12px 40px rgb(0 0 0 / 0.35);
}

.tsc-index-section-body--users {
	padding: clamp(0.75rem, 2vw, 1.15rem);
	min-width: 0;
}

.tsc-page-users .maincontent > br {
	display: none;
}

.tsc-users-hero {
	position: relative;
	margin-bottom: 1rem;
	padding: clamp(1rem, 3vw, 1.5rem);
	border-radius: 1rem;
	border: 1px solid rgb(56 189 248 / 0.28);
	background:
		radial-gradient(ellipse 80% 60% at 50% -20%, rgb(56 189 248 / 0.18), transparent 60%),
		linear-gradient(160deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.9));
	overflow: hidden;
}

.tsc-users-hero-glow {
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at 80% 20%, rgb(56 189 248 / 0.12), transparent 45%);
	pointer-events: none;
}

.tsc-users-hero-inner {
	position: relative;
}

.tsc-users-hero-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.25rem 0.55rem;
	border-radius: 999px;
	border: 1px solid rgb(56 189 248 / 0.35);
	background: rgb(56 189 248 / 0.1);
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(186 230 253);
	margin-bottom: 0.5rem;
}

.tsc-users-hero-title {
	margin: 0 0 0.35rem;
	font-size: clamp(1.25rem, 3vw, 1.6rem);
	font-weight: 800;
	color: rgb(244 244 245);
}

.tsc-users-hero-sub {
	margin: 0 0 0.75rem;
	font-size: 0.8125rem;
	color: rgb(161 161 170);
	line-height: 1.5;
	max-width: 42rem;
}

.tsc-users-hero-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.tsc-users-chip {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.4rem 0.65rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.45);
	font-size: 0.75rem;
	color: rgb(212 212 216);
}

.tsc-users-chip .tsc-icon {
	color: rgb(56 189 248);
}

.tsc-users-search-panel {
	margin-bottom: 0.85rem;
	padding: 0.85rem;
	border-radius: 0.75rem;
	border: 1px solid var(--tsc-users-border);
	background: rgb(9 9 11 / 0.45);
}

.tsc-users-search-label {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	margin-bottom: 0.5rem;
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(113 113 122);
}

.tsc-users-search-row {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	align-items: stretch;
}

.tsc-users-search-field {
	min-width: 0;
}

.tsc-users-search-field--grow {
	flex: 1 1 12rem;
	position: relative;
}

.tsc-users-input,
.tsc-users-select {
	width: 100%;
	padding: 0.5rem 0.65rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(63 63 70 / 0.75);
	background: rgb(24 24 27 / 0.9);
	color: rgb(228 228 231);
	font-size: 0.8125rem;
}

.tsc-users-input:focus,
.tsc-users-select:focus {
	outline: none;
	border-color: rgb(56 189 248 / 0.55);
	box-shadow: 0 0 0 3px rgb(56 189 248 / 0.15);
}

.tsc-users-suggestions,
.tsc-suggest-dropdown {
	position: absolute;
	left: 0;
	right: 0;
	top: calc(100% + 0.25rem);
	z-index: 10070;
}

.tsc-suggest {
	position: relative;
	min-width: 0;
}

.tsc-suggest--open {
	z-index: 5;
}

.tsc-index-block:has(.tsc-suggest--open),
.tsc-index-section-body:has(.tsc-suggest--open),
.tsc-users-search-panel:has(.tsc-suggest--open),
.tsc-releaser-form:has(.tsc-suggest--open),
.tsc-releaser-page .tsc-index-block--releaser:has(.tsc-suggest--open) {
	overflow: visible;
}

.tsc-index-page:has(.tsc-suggest--open) > .tsc-index-block:has(.tsc-suggest--open) {
	overflow: visible;
}

.tsc-suggest-dropdown {
	border-radius: 0.65rem;
	border: 1px solid rgb(63 63 70 / 0.75);
	background: rgb(24 24 27 / 0.98);
	box-shadow: 0 12px 32px rgb(0 0 0 / 0.45);
	overflow: hidden;
}

.tsc-suggest-list {
	display: flex;
	flex-direction: column;
	max-height: 14rem;
	overflow-y: auto;
}

.tsc-suggest-item {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.1rem;
	width: 100%;
	padding: 0.55rem 0.75rem;
	border: none;
	border-bottom: 1px solid rgb(39 39 42 / 0.45);
	background: transparent;
	color: rgb(212 212 216);
	text-align: left;
	cursor: pointer;
}

.tsc-suggest-item:last-child {
	border-bottom: none;
}

.tsc-suggest-item:hover,
.tsc-suggest-item--active {
	background: rgb(56 189 248 / 0.12);
}

.tsc-suggest-item-name {
	font-size: 0.8125rem;
	font-weight: 700;
	color: rgb(244 244 245);
}

.tsc-suggest-item-meta {
	font-size: 0.625rem;
	color: rgb(113 113 122);
}

.tsc-suggest-empty {
	padding: 0.65rem 0.75rem;
	font-size: 0.75rem;
	color: rgb(113 113 122);
	text-align: center;
}

.tsc-suggest-is-hidden {
	display: none !important;
}

.tsc-users-page .suggestionList {
	background: rgb(24 24 27);
	border: 1px solid rgb(63 63 70);
	border-radius: 0.5rem;
	padding: 0.25rem;
	max-height: 200px;
	overflow-y: auto;
	box-shadow: 0 12px 32px rgb(0 0 0 / 0.45);
}

.tsc-users-page .suggestionList a {
	display: block;
	padding: 0.45rem 0.6rem;
	border-radius: 0.35rem;
	color: rgb(212 212 216);
	text-decoration: none;
	font-size: 0.8125rem;
}

.tsc-users-page .suggestionList a:hover {
	background: rgb(56 189 248 / 0.12);
	color: rgb(224 242 254);
}

.tsc-users-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.35rem;
	padding: 0.5rem 0.85rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(63 63 70 / 0.75);
	background: rgb(24 24 27 / 0.85);
	color: rgb(228 228 231);
	font-size: 0.75rem;
	font-weight: 600;
	text-decoration: none;
	cursor: pointer;
	white-space: nowrap;
}

.tsc-users-btn--primary {
	border-color: rgb(56 189 248 / 0.45);
	background: linear-gradient(155deg, rgb(14 165 233 / 0.35), rgb(2 132 199 / 0.22));
	color: rgb(224 242 254);
}

.tsc-users-btn--primary:hover {
	border-color: rgb(56 189 248 / 0.65);
	background: linear-gradient(155deg, rgb(14 165 233 / 0.45), rgb(2 132 199 / 0.3));
}

.tsc-users-alpha {
	display: flex;
	flex-wrap: wrap;
	gap: 0.3rem;
	margin-bottom: 0.85rem;
	padding: 0.65rem;
	border-radius: 0.75rem;
	border: 1px solid rgb(39 39 42 / 0.55);
	background: rgb(9 9 11 / 0.35);
}

.tsc-users-alpha-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 1.85rem;
	height: 1.85rem;
	padding: 0 0.35rem;
	border-radius: 0.45rem;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(24 24 27 / 0.8);
	color: rgb(161 161 170);
	font-size: 0.6875rem;
	font-weight: 700;
	text-decoration: none;
	transition: border-color 0.15s, color 0.15s, background 0.15s;
}

.tsc-users-alpha-btn:hover {
	border-color: rgb(56 189 248 / 0.45);
	color: rgb(224 242 254);
	background: rgb(56 189 248 / 0.1);
}

.tsc-users-alpha-btn--active {
	border-color: rgb(56 189 248 / 0.55);
	background: rgb(56 189 248 / 0.18);
	color: rgb(224 242 254);
}

.tsc-users-pagination {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.65rem;
	margin: 0.85rem 0;
}

.tsc-users-pagination--top {
	margin-top: 0;
}

.tsc-users-pagination-nav,
.tsc-users-pagination-pages {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem;
	align-items: center;
}

.tsc-users-page-btn,
.tsc-users-page-num {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.25rem;
	min-height: 2rem;
	padding: 0 0.65rem;
	border-radius: 0.5rem;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(24 24 27 / 0.8);
	color: rgb(212 212 216);
	font-size: 0.75rem;
	font-weight: 600;
	text-decoration: none;
}

.tsc-users-page-btn:hover,
.tsc-users-page-num:hover {
	border-color: rgb(56 189 248 / 0.45);
	color: rgb(224 242 254);
}

.tsc-users-page-btn--disabled {
	opacity: 0.45;
	cursor: default;
}

.tsc-users-page-num--active {
	border-color: rgb(56 189 248 / 0.55);
	background: rgb(56 189 248 / 0.18);
	color: rgb(224 242 254);
}

.tsc-users-table-shell {
	border-radius: 0.75rem;
	border: 1px solid var(--tsc-users-border);
	background: rgb(9 9 11 / 0.45);
	overflow: hidden;
}

.tsc-users-table-wrap {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.tsc-users-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.8125rem;
	min-width: 42rem;
}

.tsc-users-table thead th {
	padding: 0.65rem 0.75rem;
	font-size: 0.5625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(113 113 122);
	text-align: left;
	background: rgb(9 9 11 / 0.75);
	border-bottom: 1px solid var(--tsc-users-border);
	white-space: nowrap;
}

.tsc-users-table thead th .tsc-icon {
	color: rgb(56 189 248 / 0.85);
	margin-right: 0.2rem;
}

.tsc-users-table tbody td {
	padding: 0.7rem 0.75rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.35);
	color: rgb(212 212 216);
	vertical-align: middle;
}

.tsc-users-row:last-child td {
	border-bottom: none;
}

.tsc-users-row:hover td {
	background: rgb(24 24 27 / 0.45);
}

.tsc-users-name {
	text-decoration: none;
}

.tsc-users-name:hover {
	text-decoration: underline;
}

.tsc-users-anon {
	color: rgb(161 161 170);
	font-style: italic;
}

.tsc-users-webseed {
	color: rgb(74 222 128);
	vertical-align: middle;
}

.tsc-users-flag {
	display: block;
	width: 1.35rem;
	height: auto;
	border-radius: 0.15rem;
}

.tsc-users-country-empty {
	color: rgb(113 113 122);
}

.tsc-users-empty {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.5rem;
	padding: 2rem 1rem;
	color: rgb(161 161 170);
	text-align: center;
}

.tsc-users-row--empty td {
	padding: 0;
	border: none;
	background: transparent !important;
}

@media (max-width: 767px) {
	.tsc-users-search-row {
		flex-direction: column;
	}

	.tsc-users-search-row .tsc-users-btn {
		width: 100%;
	}

	.tsc-users-alpha {
		display: grid;
		grid-template-columns: repeat(7, minmax(0, 1fr));
	}

	.tsc-users-pagination {
		flex-direction: column;
		align-items: stretch;
	}

	.tsc-users-pagination-nav,
	.tsc-users-pagination-pages {
		justify-content: center;
	}

	.tsc-users-table-shell {
		border: none;
		background: transparent;
		overflow: visible;
	}

	.tsc-users-table-wrap {
		overflow: visible;
	}

	.tsc-users-table {
		display: block;
		min-width: 0;
		width: 100%;
	}

	.tsc-users-table thead {
		display: none;
	}

	.tsc-users-table tbody {
		display: flex;
		flex-direction: column;
		gap: 0.75rem;
	}

	.tsc-users-row {
		display: block;
		border: 1px solid var(--tsc-users-border);
		border-radius: 0.85rem;
		background: linear-gradient(160deg, rgb(24 24 27 / 0.92), rgb(9 9 11 / 0.82));
		box-shadow: 0 10px 28px rgb(0 0 0 / 0.22);
		overflow: hidden;
	}

	.tsc-users-row:hover td {
		background: transparent;
	}

	.tsc-users-row td {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		gap: 0.75rem;
		width: 100%;
		border: none;
		border-bottom: 1px solid rgb(39 39 42 / 0.35);
		padding: 0.65rem 0.85rem;
	}

	.tsc-users-row td:last-child {
		border-bottom: none;
	}

	.tsc-users-row td::before {
		content: attr(data-label);
		font-size: 0.5625rem;
		font-weight: 700;
		text-transform: uppercase;
		letter-spacing: 0.06em;
		color: rgb(113 113 122);
		flex-shrink: 0;
		min-width: 5.5rem;
		padding-top: 0.15rem;
	}

	.tsc-users-cell--name {
		flex-direction: column;
		padding-top: 0.85rem;
	}

	.tsc-users-cell--name::before {
		display: none;
	}

	.tsc-users-cell--country {
		align-items: center;
	}
}

@media (max-width: 480px) {
	.tsc-users-alpha {
		grid-template-columns: repeat(5, minmax(0, 1fr));
	}
}

/* ═══════════════════════════════════════════════════════════
   Premium Admin config — admin.php (users/index schema)
   ═══════════════════════════════════════════════════════════ */

.tsc-admin-page {
	--tsc-admin-accent: rgb(251 146 60);
	--tsc-admin-accent-soft: rgb(251 146 60 / 0.14);
	--tsc-admin-glow: rgb(251 146 60 / 0.22);
	--tsc-admin-border: rgb(39 39 42 / 0.72);
	min-width: 0;
}

.tsc-index-block--settings {
	border-color: rgb(251 146 60 / 0.28);
	box-shadow:
		0 0 0 1px rgb(251 146 60 / 0.06) inset,
		0 12px 40px rgb(0 0 0 / 0.35);
}

.tsc-index-section-body--settings {
	padding: clamp(0.75rem, 2vw, 1.15rem);
	min-width: 0;
}

.tsc-page-admin .maincontent > br {
	display: none;
}

.tsc-admin-page--locked .tsc-admin-config-block {
	display: none !important;
}

.tsc-admin-page--ready .tsc-admin-gate {
	display: none !important;
}

.tsc-admin-hero {
	position: relative;
	margin-bottom: 1rem;
	padding: clamp(1rem, 3vw, 1.5rem);
	border-radius: 1rem;
	border: 1px solid rgb(251 146 60 / 0.28);
	background:
		radial-gradient(ellipse 80% 60% at 50% -20%, rgb(251 146 60 / 0.18), transparent 60%),
		linear-gradient(160deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.9));
	overflow: hidden;
}

.tsc-admin-hero-glow {
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at 80% 20%, rgb(251 146 60 / 0.12), transparent 45%);
	pointer-events: none;
}

.tsc-admin-hero-inner {
	position: relative;
}

.tsc-admin-hero-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.25rem 0.55rem;
	border-radius: 999px;
	border: 1px solid rgb(251 146 60 / 0.35);
	background: rgb(251 146 60 / 0.1);
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(254 215 170);
	margin-bottom: 0.5rem;
}

.tsc-admin-hero-title {
	margin: 0 0 0.35rem;
	font-size: clamp(1.25rem, 3vw, 1.6rem);
	font-weight: 800;
	color: rgb(244 244 245);
}

.tsc-admin-hero-sub {
	margin: 0 0 0.75rem;
	font-size: 0.8125rem;
	color: rgb(161 161 170);
	line-height: 1.5;
	max-width: 42rem;
}

.tsc-admin-hero-sub code {
	font-size: 0.92em;
	padding: 0.1rem 0.35rem;
	border-radius: 0.35rem;
	background: rgb(0 0 0 / 0.25);
	color: rgb(228 228 231);
}

.tsc-admin-hero-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.tsc-admin-chip {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.4rem 0.65rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.45);
	font-size: 0.75rem;
	color: rgb(212 212 216);
}

.tsc-admin-chip .tsc-icon {
	color: rgb(251 146 60);
}

.tsc-admin-header-actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-end;
	gap: 0.45rem;
}

.tsc-admin-toolbar-status {
	min-height: 1.25rem;
	margin-bottom: 0.75rem;
	font-size: 0.8125rem;
	color: rgb(161 161 170);
}

.tsc-admin-toolbar-status--ok { color: rgb(74 222 128); }
.tsc-admin-toolbar-status--warn { color: rgb(250 204 21); }
.tsc-admin-toolbar-status--error { color: rgb(248 113 113); }
.tsc-admin-toolbar-status--busy { color: rgb(96 165 250); }

.tsc-admin-nav {
	display: flex;
	flex-wrap: wrap;
	gap: 0.3rem;
	margin-bottom: 0.85rem;
	padding: 0.65rem;
	border-radius: 0.75rem;
	border: 1px solid rgb(39 39 42 / 0.55);
	background: rgb(9 9 11 / 0.35);
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.tsc-admin-nav-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.45rem 0.7rem;
	border-radius: 0.55rem;
	border: 1px solid transparent;
	background: transparent;
	color: rgb(161 161 170);
	font-size: 0.75rem;
	font-weight: 600;
	cursor: pointer;
	white-space: nowrap;
	transition: background 0.15s, color 0.15s, border-color 0.15s;
}

.tsc-admin-nav-btn:hover,
.tsc-admin-nav-btn:focus-visible {
	color: rgb(244 244 245);
	background: rgb(63 63 70 / 0.45);
	outline: none;
}

.tsc-admin-nav-btn.is-active {
	color: rgb(254 215 170);
	border-color: rgb(251 146 60 / 0.35);
	background: rgb(251 146 60 / 0.12);
}

.tsc-admin-panel[hidden] {
	display: none !important;
}

.tsc-admin-panel-title {
	display: flex;
	align-items: center;
	gap: 0.4rem;
	margin: 0 0 0.85rem;
	font-size: 0.8125rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: rgb(212 212 216);
}

.tsc-admin-panel-title .tsc-icon {
	color: rgb(251 146 60);
}

.tsc-admin-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 18rem), 1fr));
	gap: 0.85rem 1rem;
}

.tsc-admin-field {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
}

.tsc-admin-field-label {
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: rgb(161 161 170);
}

.tsc-admin-page .tsc-users-input:focus,
.tsc-admin-page .tsc-users-select:focus {
	border-color: rgb(251 146 60 / 0.55);
	box-shadow: 0 0 0 3px rgb(251 146 60 / 0.15);
}

.tsc-admin-page .tsc-users-btn--primary {
	border-color: rgb(251 146 60 / 0.45);
	background: linear-gradient(155deg, rgb(251 146 60 / 0.35), rgb(234 88 12 / 0.22));
	color: rgb(254 243 199);
}

.tsc-admin-page .tsc-users-btn--primary:hover {
	border-color: rgb(251 146 60 / 0.65);
	background: linear-gradient(155deg, rgb(251 146 60 / 0.45), rgb(234 88 12 / 0.3));
}

.tsc-admin-gate-body {
	max-width: 28rem;
}

.tsc-admin-gate-lead {
	margin: 0 0 1rem;
	color: rgb(161 161 170);
	line-height: 1.55;
	font-size: 0.8125rem;
}

.tsc-admin-gate-form {
	display: grid;
	gap: 0.85rem;
}

.tsc-admin-alert {
	display: flex;
	gap: 0.65rem;
	align-items: flex-start;
	padding: 0.85rem 1rem;
	border-radius: 0.75rem;
	border: 1px solid rgb(234 179 8 / 0.35);
	background: rgb(234 179 8 / 0.08);
	color: rgb(254 240 138);
	font-size: 0.8125rem;
	line-height: 1.5;
}

.tsc-admin-alert code {
	font-size: 0.92em;
	padding: 0.1rem 0.35rem;
	border-radius: 0.35rem;
	background: rgb(0 0 0 / 0.25);
}

@media (max-width: 640px) {
	.tsc-admin-header-actions {
		width: 100%;
	}

	.tsc-admin-header-actions .tsc-users-btn {
		flex: 1 1 auto;
	}

	.tsc-admin-nav-btn span {
		font-size: 0.6875rem;
	}
}

/* ═══════════════════════════════════════════════════════════
   Premium Staff — staff.php (details schema)
   ═══════════════════════════════════════════════════════════ */

.tsc-staff-page {
	--tsc-staff-accent: rgb(251 146 60);
	--tsc-staff-accent-soft: rgb(251 146 60 / 0.14);
	--tsc-staff-glow: rgb(251 146 60 / 0.22);
	--tsc-staff-border: rgb(39 39 42 / 0.72);
	min-width: 0;
}

.tsc-index-block--staff,
.tsc-index-block--contact,
.tsc-index-block--teams,
.tsc-index-block--bitbucket {
	border-color: rgb(251 146 60 / 0.28);
	box-shadow:
		0 0 0 1px rgb(251 146 60 / 0.06) inset,
		0 12px 40px rgb(0 0 0 / 0.35);
}

.tsc-index-section-body--staff {
	padding: clamp(0.75rem, 2vw, 1.15rem);
	min-width: 0;
}

.tsc-page-staff .maincontent > br {
	display: none;
}

.tsc-staff-hero {
	position: relative;
	margin-bottom: 1rem;
	padding: clamp(1rem, 3vw, 1.6rem);
	border-radius: 1rem;
	border: 1px solid rgb(251 146 60 / 0.28);
	background:
		radial-gradient(ellipse 80% 60% at 50% -20%, rgb(251 146 60 / 0.18), transparent 60%),
		linear-gradient(160deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.9));
	overflow: hidden;
}

.tsc-staff-hero-glow {
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at 80% 20%, rgb(251 146 60 / 0.12), transparent 45%);
	pointer-events: none;
}

.tsc-staff-hero-inner { position: relative; }

.tsc-staff-hero-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.25rem 0.55rem;
	border-radius: 999px;
	border: 1px solid rgb(251 146 60 / 0.35);
	background: rgb(251 146 60 / 0.1);
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(254 215 170);
	margin-bottom: 0.5rem;
}

.tsc-staff-hero-title {
	margin: 0 0 0.35rem;
	font-size: clamp(1.25rem, 3vw, 1.75rem);
	font-weight: 800;
	color: rgb(244 244 245);
}

.tsc-staff-hero-sub {
	margin: 0 0 0.75rem;
	font-size: 0.8125rem;
	color: rgb(161 161 170);
	line-height: 1.5;
	max-width: 42rem;
}

.tsc-staff-hero-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.tsc-staff-chip {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.4rem 0.65rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.45);
	font-size: 0.75rem;
	color: rgb(212 212 216);
}

.tsc-staff-chip .tsc-icon { color: rgb(251 146 60); }
.tsc-staff-chip a { color: rgb(251 146 60); }

.tsc-staff-notice {
	display: flex;
	gap: 0.65rem;
	align-items: flex-start;
	padding: 0.75rem 0.9rem;
	margin-bottom: 1rem;
	border-radius: 0.65rem;
	border: 1px solid rgb(96 165 250 / 0.28);
	background: rgb(96 165 250 / 0.08);
	color: rgb(191 219 254);
	font-size: 0.8125rem;
	line-height: 1.45;
}

.tsc-staff-notice p { margin: 0; }
.tsc-staff-notice-icon .tsc-icon { color: rgb(96 165 250); }

.tsc-staff-role { margin-bottom: 1.15rem; }
.tsc-staff-role:last-child { margin-bottom: 0; }

.tsc-staff-role-title {
	display: flex;
	align-items: center;
	gap: 0.4rem;
	margin: 0 0 0.65rem;
	font-size: 0.8125rem;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(251 146 60);
}

.tsc-staff-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(15rem, 1fr));
	gap: 0.65rem;
}

.tsc-staff-card {
	display: grid;
	grid-template-columns: auto 1fr auto;
	gap: 0.65rem;
	align-items: center;
	padding: 0.75rem 0.85rem;
	border-radius: 0.8rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: linear-gradient(160deg, rgb(24 24 27 / 0.92), rgb(9 9 11 / 0.82));
	box-shadow: 0 10px 28px rgb(0 0 0 / 0.18);
}

.tsc-staff-card-avatar {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2.35rem;
	height: 2.35rem;
	border-radius: 0.65rem;
	background: rgb(251 146 60 / 0.12);
	color: rgb(254 215 170);
}

.tsc-staff-card-name {
	font-size: 0.875rem;
	text-decoration: none;
}

.tsc-staff-card-name:hover { text-decoration: underline; }

.tsc-staff-card-meta {
	display: flex;
	align-items: center;
	gap: 0.45rem;
	margin-top: 0.2rem;
}

.tsc-staff-online {
	display: inline-flex;
	align-items: center;
	gap: 0.2rem;
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
}

.tsc-staff-online--on { color: rgb(74 222 128); }
.tsc-staff-online--off { color: rgb(113 113 122); }

.tsc-staff-flag {
	width: 1.2rem;
	height: auto;
	border-radius: 0.15rem;
}

.tsc-staff-card-pm {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2rem;
	height: 2rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(24 24 27 / 0.85);
	color: rgb(251 146 60);
	text-decoration: none;
}

.tsc-staff-card-pm:hover {
	border-color: rgb(251 146 60 / 0.45);
	background: rgb(251 146 60 / 0.12);
}

.tsc-staff-tools-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(16rem, 1fr));
	gap: 0.65rem;
}

.tsc-staff-tool-card {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	padding: 0.85rem 0.95rem;
	border-radius: 0.8rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: linear-gradient(160deg, rgb(24 24 27 / 0.92), rgb(9 9 11 / 0.82));
	text-decoration: none;
	transition: border-color 0.15s, transform 0.15s;
}

.tsc-staff-tool-card:hover {
	border-color: rgb(251 146 60 / 0.4);
	transform: translateY(-1px);
}

.tsc-staff-tool-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2.25rem;
	height: 2.25rem;
	border-radius: 0.6rem;
	background: rgb(251 146 60 / 0.12);
	color: rgb(251 146 60);
	flex-shrink: 0;
}

.tsc-staff-tool-body {
	display: flex;
	flex-direction: column;
	gap: 0.15rem;
	min-width: 0;
}

.tsc-staff-tool-title {
	font-size: 0.8125rem;
	font-weight: 700;
	color: rgb(244 244 245);
}

.tsc-staff-tool-desc {
	font-size: 0.6875rem;
	color: rgb(161 161 170);
	line-height: 1.4;
}

.tsc-staff-tool-arrow {
	color: rgb(113 113 122);
	margin-left: auto;
}

.tsc-staff-subhero {
	margin-bottom: 1rem;
	padding: 0.85rem 1rem;
	border-radius: 0.8rem;
	border: 1px solid var(--tsc-staff-border);
	background: rgb(9 9 11 / 0.45);
}

.tsc-staff-back {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	margin-bottom: 0.5rem;
	font-size: 0.75rem;
	font-weight: 600;
	color: rgb(251 146 60);
	text-decoration: none;
}

.tsc-staff-subhero-title {
	margin: 0 0 0.25rem;
	font-size: 1.15rem;
	font-weight: 800;
	color: rgb(244 244 245);
}

.tsc-staff-subhero-sub {
	margin: 0;
	font-size: 0.75rem;
	color: rgb(161 161 170);
}

.tsc-staff-alert {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	gap: 0.75rem;
	padding: 0.85rem 1rem;
	margin-bottom: 1rem;
	border-radius: 0.75rem;
	border: 1px solid rgb(63 63 70 / 0.55);
	background: linear-gradient(135deg, rgb(24 24 27 / 0.9), rgb(9 9 11 / 0.75));
}

.tsc-staff-alert--success { border-color: rgb(34 197 94 / 0.35); }
.tsc-staff-alert--success .tsc-staff-alert-icon { color: rgb(74 222 128); }
.tsc-staff-alert--warning .tsc-staff-alert-icon { color: rgb(250 204 21); }
.tsc-staff-alert--danger .tsc-staff-alert-icon { color: rgb(248 113 113); }
.tsc-staff-alert--info .tsc-staff-alert-icon { color: rgb(96 165 250); }

.tsc-staff-alert-body {
	font-size: 0.8125rem;
	color: rgb(212 212 216);
	line-height: 1.5;
}

.tsc-staff-alert-body a { color: rgb(251 146 60); }

.tsc-staff-form-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.75rem;
}

.tsc-staff-form-grid--wide { grid-template-columns: repeat(2, minmax(0, 1fr)); }

.tsc-staff-field {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
}

.tsc-staff-field-label {
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(113 113 122);
}

.tsc-staff-field-hint {
	font-size: 0.6875rem;
	color: rgb(113 113 122);
}

.tsc-staff-input,
.tsc-staff-select {
	width: 100%;
	padding: 0.5rem 0.65rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(63 63 70 / 0.75);
	background: rgb(24 24 27 / 0.9);
	color: rgb(228 228 231);
	font-size: 0.8125rem;
}

.tsc-staff-input:focus,
.tsc-staff-select:focus {
	outline: none;
	border-color: rgb(251 146 60 / 0.55);
	box-shadow: 0 0 0 3px rgb(251 146 60 / 0.12);
}

.tsc-staff-form-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin-top: 0.85rem;
}

.tsc-staff-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.35rem;
	padding: 0.5rem 0.85rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(63 63 70 / 0.75);
	background: rgb(24 24 27 / 0.85);
	color: rgb(228 228 231);
	font-size: 0.75rem;
	font-weight: 600;
	cursor: pointer;
	text-decoration: none;
}

.tsc-staff-btn--primary {
	border-color: rgb(251 146 60 / 0.45);
	background: linear-gradient(155deg, rgb(251 146 60 / 0.35), rgb(234 88 12 / 0.22));
	color: rgb(255 237 213);
}

.tsc-staff-btn--danger {
	border-color: rgb(248 113 113 / 0.45);
	background: rgb(248 113 113 / 0.12);
	color: rgb(254 202 202);
}

.tsc-staff-btn--ghost {
	background: transparent;
}

.tsc-staff-btn--sm {
	padding: 0.35rem 0.55rem;
	font-size: 0.6875rem;
}

.tsc-staff-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem;
}

.tsc-staff-table-shell {
	border-radius: 0.75rem;
	border: 1px solid var(--tsc-staff-border);
	background: rgb(9 9 11 / 0.45);
	overflow: hidden;
}

.tsc-staff-table-wrap {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.tsc-staff-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.8125rem;
	min-width: 42rem;
}

.tsc-staff-table thead th {
	padding: 0.65rem 0.75rem;
	font-size: 0.5625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(113 113 122);
	text-align: left;
	background: rgb(9 9 11 / 0.75);
	border-bottom: 1px solid var(--tsc-staff-border);
}

.tsc-staff-table thead th a { color: rgb(251 146 60); text-decoration: none; }
.tsc-staff-table thead th .tsc-icon { color: rgb(251 146 60 / 0.85); margin-right: 0.2rem; }

.tsc-staff-table tbody td {
	padding: 0.7rem 0.75rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.35);
	color: rgb(212 212 216);
	vertical-align: middle;
}

.tsc-staff-row:hover td { background: rgb(24 24 27 / 0.45); }
.tsc-staff-row--empty td { padding: 0; border: none; background: transparent !important; }

.tsc-staff-muted { color: rgb(113 113 122); font-size: 0.6875rem; }
.tsc-staff-danger { color: rgb(248 113 113); }
.tsc-staff-results-meta { margin: 0 0 0.75rem; font-size: 0.75rem; color: rgb(161 161 170); }
.tsc-staff-check { display: inline-flex; align-items: center; gap: 0.35rem; font-size: 0.75rem; }
.tsc-td-num { text-align: right; }

.tsc-staff-empty {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.5rem;
	padding: 2rem 1rem;
	color: rgb(161 161 170);
	text-align: center;
}

@media (max-width: 767px) {
	.tsc-staff-grid,
	.tsc-staff-tools-grid {
		grid-template-columns: 1fr;
	}

	.tsc-staff-form-grid,
	.tsc-staff-form-grid--wide {
		grid-template-columns: 1fr;
	}

	.tsc-staff-table-shell {
		border: none;
		background: transparent;
		overflow: visible;
	}

	.tsc-staff-table-wrap { overflow: visible; }

	.tsc-staff-table {
		display: block;
		min-width: 0;
		width: 100%;
	}

	.tsc-staff-table thead { display: none; }

	.tsc-staff-table tbody {
		display: flex;
		flex-direction: column;
		gap: 0.75rem;
	}

	.tsc-staff-row {
		display: block;
		border: 1px solid var(--tsc-staff-border);
		border-radius: 0.85rem;
		background: linear-gradient(160deg, rgb(24 24 27 / 0.92), rgb(9 9 11 / 0.82));
		box-shadow: 0 10px 28px rgb(0 0 0 / 0.22);
		overflow: hidden;
	}

	.tsc-staff-row:hover td { background: transparent; }

	.tsc-staff-row td {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		gap: 0.75rem;
		width: 100%;
		border: none;
		border-bottom: 1px solid rgb(39 39 42 / 0.35);
		padding: 0.65rem 0.85rem;
	}

	.tsc-staff-row td:last-child { border-bottom: none; }

	.tsc-staff-row td::before {
		content: attr(data-label);
		font-size: 0.5625rem;
		font-weight: 700;
		text-transform: uppercase;
		letter-spacing: 0.06em;
		color: rgb(113 113 122);
		flex-shrink: 0;
		min-width: 5.5rem;
		padding-top: 0.15rem;
	}

	.tsc-staff-cell--user {
		flex-direction: column;
		padding-top: 0.85rem;
	}

	.tsc-staff-cell--user::before { display: none; }

	.tsc-staff-form-actions {
		flex-direction: column;
		align-items: stretch;
	}

	.tsc-staff-form-actions .tsc-staff-btn { width: 100%; }
}

/* Keine versteckten Dauer-Animationen aus Legacy-CSS (Footer-Konsole + Space BG ausgenommen) */
body.tsc-premium-bg *:not(.tsc-site-footer):not(.tsc-site-footer *):not(.tsc-space-bg):not(.tsc-space-bg *),
body.tsc-premium-bg *:not(.tsc-site-footer):not(.tsc-site-footer *):not(.tsc-space-bg):not(.tsc-space-bg *)::before,
body.tsc-premium-bg *:not(.tsc-site-footer):not(.tsc-site-footer *):not(.tsc-space-bg):not(.tsc-space-bg *)::after {
	animation: none !important;
	animation-duration: 0s !important;
	animation-delay: 0s !important;
}

/* ═══════════════════════════════════════════════════════════
   Premium RSS — rss.php (details schema)
   ═══════════════════════════════════════════════════════════ */

.tsc-rss-page {
	--tsc-rss-accent: rgb(251 146 60);
	--tsc-rss-accent-soft: rgb(251 146 60 / 0.14);
	--tsc-rss-glow: rgb(251 146 60 / 0.22);
	--tsc-rss-border: rgb(39 39 42 / 0.72);
	min-width: 0;
}

.tsc-index-block--rss {
	border-color: rgb(251 146 60 / 0.28);
	box-shadow:
		0 0 0 1px rgb(251 146 60 / 0.06) inset,
		0 12px 40px rgb(0 0 0 / 0.35);
}

.tsc-index-section-body--rss {
	padding: clamp(0.75rem, 2vw, 1.15rem);
	min-width: 0;
}

.tsc-page-rss .maincontent > br {
	display: none;
}

.tsc-rss-hero {
	position: relative;
	margin-bottom: 1rem;
	padding: clamp(1rem, 3vw, 1.6rem);
	border-radius: 1rem;
	border: 1px solid rgb(251 146 60 / 0.28);
	background:
		radial-gradient(ellipse 80% 60% at 50% -20%, rgb(251 146 60 / 0.18), transparent 60%),
		linear-gradient(160deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.9));
	overflow: hidden;
	min-height: auto;
}

.tsc-details-hero--rss .tsc-details-hero-inner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: clamp(0.85rem, 2.5vw, 1.35rem);
}

.tsc-rss-hero-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: clamp(3.5rem, 10vw, 4.5rem);
	height: clamp(3.5rem, 10vw, 4.5rem);
	border-radius: 1rem;
	border: 1px solid rgb(251 146 60 / 0.35);
	background: rgb(251 146 60 / 0.12);
	color: rgb(251 146 60);
	flex-shrink: 0;
}

.tsc-rss-hero-copy { min-width: 0; flex: 1 1 14rem; }

.tsc-rss-hero-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.25rem 0.55rem;
	border-radius: 999px;
	border: 1px solid rgb(251 146 60 / 0.35);
	background: rgb(251 146 60 / 0.1);
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(254 215 170);
	margin-bottom: 0.5rem;
}

.tsc-rss-hero-title {
	margin: 0 0 0.35rem;
	font-size: clamp(1.25rem, 3vw, 1.75rem);
	font-weight: 800;
	color: rgb(244 244 245);
}

.tsc-rss-hero-sub {
	margin: 0 0 0.75rem;
	font-size: clamp(0.75rem, 2vw, 0.875rem);
	color: rgb(161 161 170);
	line-height: 1.5;
	max-width: 42rem;
}

.tsc-rss-hero-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
}

.tsc-rss-chip {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.3rem 0.55rem;
	border-radius: 999px;
	border: 1px solid var(--tsc-rss-border);
	background: rgb(24 24 27 / 0.55);
	font-size: 0.6875rem;
	color: rgb(212 212 216);
}

.tsc-rss-chip .tsc-icon { color: rgb(251 146 60 / 0.9); }

.tsc-details-alert--danger {
	border-color: rgb(239 68 68 / 0.35);
}

.tsc-details-alert--danger .tsc-details-alert-icon { color: rgb(248 113 113); }

.tsc-rss-result { min-width: 0; }

.tsc-rss-field-label {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	margin-bottom: 0.45rem;
	font-size: 0.75rem;
	font-weight: 600;
	color: rgb(212 212 216);
}

.tsc-rss-url-row {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin-bottom: 0.75rem;
}

.tsc-rss-url-input {
	flex: 1 1 12rem;
	min-width: 0;
	padding: 0.65rem 0.75rem;
	border-radius: 0.65rem;
	border: 1px solid var(--tsc-rss-border);
	background: rgb(9 9 11 / 0.85);
	color: rgb(244 244 245);
	font-size: 0.75rem;
	font-family: ui-monospace, monospace;
}

.tsc-rss-url-input:focus {
	outline: none;
	border-color: rgb(251 146 60 / 0.55);
	box-shadow: 0 0 0 2px rgb(251 146 60 / 0.15);
}

.tsc-rss-form { min-width: 0; }

.tsc-rss-block {
	margin-bottom: 1.15rem;
	padding: 0.85rem;
	border-radius: 0.85rem;
	border: 1px solid var(--tsc-rss-border);
	background: linear-gradient(160deg, rgb(24 24 27 / 0.75), rgb(9 9 11 / 0.55));
}

.tsc-rss-block-title {
	display: flex;
	align-items: center;
	gap: 0.4rem;
	margin: 0 0 0.65rem;
	font-size: 0.8125rem;
	font-weight: 700;
	color: rgb(244 244 245);
}

.tsc-rss-cat-toolbar {
	margin-bottom: 0.65rem;
}

.tsc-rss-cat-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 11rem), 1fr));
	gap: 0.65rem;
}

.tsc-rss-cat-group {
	padding: 0.65rem;
	border-radius: 0.75rem;
	border: 1px solid rgb(39 39 42 / 0.55);
	background: rgb(9 9 11 / 0.45);
	min-width: 0;
}

.tsc-rss-cat-group-title {
	margin: 0 0 0.5rem;
	padding-bottom: 0.35rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.65);
	font-size: 0.6875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: rgb(251 146 60);
}

.tsc-rss-cat-list {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
}

.tsc-rss-check {
	display: flex;
	align-items: flex-start;
	gap: 0.45rem;
	font-size: 0.75rem;
	color: rgb(212 212 216);
	cursor: pointer;
	line-height: 1.35;
}

.tsc-rss-check input {
	margin-top: 0.15rem;
	accent-color: rgb(251 146 60);
	flex-shrink: 0;
}

.tsc-rss-check--all {
	font-weight: 600;
	color: rgb(248 113 113);
}

.tsc-rss-options {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 14rem), 1fr));
	gap: 0.75rem;
	margin-bottom: 1rem;
}

.tsc-rss-option {
	padding: 0.75rem;
	border-radius: 0.75rem;
	border: 1px solid var(--tsc-rss-border);
	background: rgb(9 9 11 / 0.4);
	min-width: 0;
}

.tsc-rss-option-label {
	display: flex;
	align-items: center;
	gap: 0.35rem;
	margin-bottom: 0.5rem;
	font-size: 0.75rem;
	font-weight: 600;
	color: rgb(212 212 216);
}

.tsc-rss-radio-group {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem 0.85rem;
}

.tsc-rss-radio {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	font-size: 0.75rem;
	color: rgb(212 212 216);
	cursor: pointer;
}

.tsc-rss-radio input { accent-color: rgb(251 146 60); }

.tsc-rss-form-actions {
	display: flex;
	justify-content: center;
	padding-top: 0.25rem;
}

.tsc-rss-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.4rem;
	padding: 0.55rem 0.9rem;
	border-radius: 0.65rem;
	border: 1px solid var(--tsc-rss-border);
	background: rgb(24 24 27 / 0.85);
	color: rgb(244 244 245);
	font-size: 0.75rem;
	font-weight: 600;
	cursor: pointer;
	text-decoration: none;
	transition: border-color 0.15s, background 0.15s, transform 0.15s;
}

.tsc-rss-btn:hover {
	border-color: rgb(251 146 60 / 0.45);
	background: rgb(39 39 42 / 0.85);
}

.tsc-rss-btn--primary {
	border-color: rgb(251 146 60 / 0.45);
	background: linear-gradient(135deg, rgb(251 146 60 / 0.22), rgb(234 88 12 / 0.12));
	color: rgb(254 243 199);
}

.tsc-rss-btn--primary:hover {
	border-color: rgb(251 146 60 / 0.65);
	background: linear-gradient(135deg, rgb(251 146 60 / 0.32), rgb(234 88 12 / 0.18));
}

.tsc-rss-btn--lg {
	padding: 0.7rem 1.25rem;
	font-size: 0.8125rem;
}

.tsc-rss-btn--copied {
	border-color: rgb(34 197 94 / 0.55) !important;
	color: rgb(187 247 208) !important;
}

@media (max-width: 767px) {
	.tsc-rss-url-row {
		flex-direction: column;
	}

	.tsc-rss-url-row .tsc-rss-btn {
		width: 100%;
	}

	.tsc-rss-cat-grid {
		grid-template-columns: 1fr;
	}

	.tsc-rss-options {
		grid-template-columns: 1fr;
	}

	.tsc-details-hero--rss .tsc-details-hero-inner {
		flex-direction: column;
		align-items: flex-start;
	}
}

/* ═══════════════════════════════════════════════════════════
   Premium Clients — clients.php (index schema)
   ═══════════════════════════════════════════════════════════ */

.tsc-clients-page {
	--tsc-clients-accent: rgb(16 185 129);
	--tsc-clients-accent-soft: rgb(16 185 129 / 0.14);
	--tsc-clients-allowed: rgb(34 197 94);
	--tsc-clients-banned: rgb(239 68 68);
	--tsc-clients-border: rgb(39 39 42 / 0.72);
	min-width: 0;
}

.tsc-index-block--clients-allowed {
	border-color: rgb(34 197 94 / 0.28);
	box-shadow:
		0 0 0 1px rgb(34 197 94 / 0.06) inset,
		0 12px 40px rgb(0 0 0 / 0.35);
}

.tsc-index-block--clients-banned {
	border-color: rgb(239 68 68 / 0.28);
	box-shadow:
		0 0 0 1px rgb(239 68 68 / 0.06) inset,
		0 12px 40px rgb(0 0 0 / 0.35);
}

.tsc-index-section-body--clients {
	padding: clamp(0.65rem, 2vw, 0.9rem);
	min-width: 0;
}

.tsc-page-clients .maincontent > br {
	display: none;
}

.tsc-clients-hero {
	position: relative;
	margin-bottom: 1rem;
	padding: clamp(1rem, 3vw, 1.5rem);
	border-radius: 1rem;
	border: 1px solid rgb(16 185 129 / 0.28);
	background:
		radial-gradient(ellipse 80% 60% at 50% -20%, rgb(16 185 129 / 0.16), transparent 60%),
		linear-gradient(160deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.9));
	overflow: hidden;
}

.tsc-clients-hero-glow {
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at 80% 20%, rgb(16 185 129 / 0.1), transparent 45%);
	pointer-events: none;
}

.tsc-clients-hero-inner { position: relative; }

.tsc-clients-hero-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.25rem 0.55rem;
	border-radius: 999px;
	border: 1px solid rgb(16 185 129 / 0.35);
	background: rgb(16 185 129 / 0.1);
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(167 243 208);
	margin-bottom: 0.5rem;
}

.tsc-clients-hero-title {
	margin: 0 0 0.35rem;
	font-size: clamp(1.25rem, 3vw, 1.6rem);
	font-weight: 800;
	color: rgb(244 244 245);
}

.tsc-clients-hero-sub {
	margin: 0 0 0.75rem;
	font-size: 0.8125rem;
	color: rgb(161 161 170);
	line-height: 1.5;
	max-width: 42rem;
}

.tsc-clients-hero-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.tsc-clients-chip {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.4rem 0.65rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.45);
	font-size: 0.75rem;
	color: rgb(212 212 216);
}

.tsc-clients-chip .tsc-icon { color: rgb(16 185 129); }
.tsc-clients-chip--allowed .tsc-icon { color: rgb(34 197 94); }
.tsc-clients-chip--banned .tsc-icon { color: rgb(248 113 113); }

.tsc-clients-columns {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1rem;
	align-items: start;
}

.tsc-clients-panel-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	padding: 0.2rem 0.5rem;
	border-radius: 999px;
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.tsc-clients-panel-badge--allowed {
	border: 1px solid rgb(34 197 94 / 0.35);
	background: rgb(34 197 94 / 0.12);
	color: rgb(187 247 208);
}

.tsc-clients-panel-badge--banned {
	border: 1px solid rgb(239 68 68 / 0.35);
	background: rgb(239 68 68 / 0.12);
	color: rgb(254 202 202);
}

.tsc-clients-groups {
	display: flex;
	flex-direction: column;
	gap: 0.55rem;
	min-width: 0;
}

.tsc-clients-group {
	border: 1px solid var(--tsc-clients-border);
	border-radius: 0.75rem;
	background: rgb(9 9 11 / 0.45);
	overflow: hidden;
}

.tsc-clients-group-summary {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.45rem 0.75rem;
	padding: 0.7rem 0.85rem;
	cursor: pointer;
	list-style: none;
	font-size: 0.8125rem;
	font-weight: 700;
	color: rgb(244 244 245);
}

.tsc-clients-group-summary::-webkit-details-marker { display: none; }

.tsc-clients-group-name {
	flex: 1 1 8rem;
	min-width: 0;
	word-break: break-word;
}

.tsc-clients-usage {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	font-size: 0.6875rem;
	font-weight: 600;
	color: rgb(161 161 170);
}

.tsc-clients-usage strong { color: rgb(74 222 128); }

.tsc-clients-group-chevron {
	color: rgb(113 113 122);
	transition: transform 0.15s ease;
}

.tsc-clients-group[open] .tsc-clients-group-chevron {
	transform: rotate(180deg);
}

.tsc-clients-list {
	margin: 0;
	padding: 0;
	list-style: none;
	border-top: 1px solid rgb(39 39 42 / 0.55);
}

.tsc-clients-item {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.5rem;
	padding: 0.55rem 0.75rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.35);
	font-size: 0.75rem;
}

.tsc-clients-item:last-child { border-bottom: none; }

.tsc-clients-item--allowed {
	background: linear-gradient(90deg, rgb(34 197 94 / 0.08), transparent);
}

.tsc-clients-item--banned {
	background: linear-gradient(90deg, rgb(239 68 68 / 0.1), transparent);
}

.tsc-clients-item-main {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.45rem 0.75rem;
	flex: 1 1 12rem;
	min-width: 0;
}

.tsc-clients-item-name {
	font-weight: 600;
	color: rgb(244 244 245);
	word-break: break-word;
}

.tsc-clients-item-usage {
	flex-shrink: 0;
	padding: 0.15rem 0.45rem;
	border-radius: 999px;
	border: 1px solid rgb(34 197 94 / 0.25);
	background: rgb(34 197 94 / 0.1);
	font-size: 0.6875rem;
	font-weight: 700;
	color: rgb(187 247 208);
}

.tsc-clients-item-actions {
	display: flex;
	gap: 0.35rem;
	flex-shrink: 0;
}

.tsc-clients-action {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	padding: 0.3rem 0.55rem;
	border-radius: 0.45rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(24 24 27 / 0.85);
	font-size: 0.6875rem;
	font-weight: 600;
	text-decoration: none;
	transition: border-color 0.15s, background 0.15s;
}

.tsc-clients-action--ban {
	color: rgb(254 202 202);
	border-color: rgb(239 68 68 / 0.35);
}

.tsc-clients-action--ban:hover {
	background: rgb(239 68 68 / 0.15);
	border-color: rgb(239 68 68 / 0.55);
}

.tsc-clients-action--allow {
	color: rgb(187 247 208);
	border-color: rgb(34 197 94 / 0.35);
}

.tsc-clients-action--allow:hover {
	background: rgb(34 197 94 / 0.15);
	border-color: rgb(34 197 94 / 0.55);
}

.tsc-clients-empty {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.5rem;
	padding: 2rem 1rem;
	color: rgb(161 161 170);
	text-align: center;
}

.tsc-clients-empty p { margin: 0; font-size: 0.8125rem; }

@media (max-width: 900px) {
	.tsc-clients-columns {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 767px) {
	.tsc-clients-group-summary {
		flex-direction: column;
		align-items: flex-start;
	}

	.tsc-clients-usage {
		width: 100%;
	}

	.tsc-clients-item {
		flex-direction: column;
		align-items: flex-start;
	}

	.tsc-clients-item-actions {
		width: 100%;
	}

	.tsc-clients-action {
		flex: 1;
		justify-content: center;
	}

	.tsc-clients-action span {
		display: inline;
	}
}

@media (max-width: 480px) {
	.tsc-clients-action span {
		display: none;
	}

	.tsc-clients-action {
		flex: 0;
		padding: 0.4rem 0.55rem;
	}
}

/* ═══════════════════════════════════════════════════════════
   Premium DL-Verhalten — dlbehavior.php (index / details schema)
   ═══════════════════════════════════════════════════════════ */

.tsc-dlbehavior-page {
	--tsc-dlbehavior-accent: rgb(251 146 60);
	--tsc-dlbehavior-accent-soft: rgb(251 146 60 / 0.14);
	--tsc-dlbehavior-border: rgb(39 39 42 / 0.72);
	min-width: 0;
	padding-bottom: 1.5rem;
}

.tsc-index-block--dlbehavior {
	border-color: rgb(251 146 60 / 0.28);
	box-shadow:
		0 0 0 1px rgb(251 146 60 / 0.06) inset,
		0 12px 40px rgb(0 0 0 / 0.35);
}

.tsc-index-section-body--dlbehavior {
	padding: clamp(0.75rem, 2vw, 1.1rem);
	min-width: 0;
}

.tsc-page-dlbehavior .maincontent > br {
	display: none;
}

.tsc-dlbehavior-hero {
	position: relative;
	margin-bottom: 1rem;
	padding: clamp(1rem, 3vw, 1.5rem);
	border-radius: 1rem;
	border: 1px solid rgb(251 146 60 / 0.28);
	background:
		radial-gradient(ellipse 80% 60% at 50% -20%, rgb(251 146 60 / 0.16), transparent 60%),
		linear-gradient(160deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.9));
	overflow: hidden;
}

.tsc-dlbehavior-hero-glow {
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at 80% 20%, rgb(239 68 68 / 0.08), transparent 45%);
	pointer-events: none;
}

.tsc-dlbehavior-hero-inner {
	position: relative;
	z-index: 1;
}

.tsc-dlbehavior-hero-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	margin-bottom: 0.55rem;
	padding: 0.25rem 0.55rem;
	border-radius: 999px;
	border: 1px solid rgb(251 146 60 / 0.35);
	background: rgb(251 146 60 / 0.12);
	font-size: 0.6875rem;
	font-weight: 700;
	color: rgb(254 215 170);
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.tsc-dlbehavior-hero-title {
	margin: 0 0 0.35rem;
	font-size: clamp(1.25rem, 3.5vw, 1.65rem);
	font-weight: 800;
	color: rgb(250 250 250);
	line-height: 1.2;
}

.tsc-dlbehavior-hero-sub {
	margin: 0 0 0.85rem;
	max-width: 42rem;
	font-size: 0.8125rem;
	line-height: 1.55;
	color: rgb(161 161 170);
}

.tsc-dlbehavior-hero-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
}

.tsc-dlbehavior-chip {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.35rem 0.65rem;
	border-radius: 999px;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(24 24 27 / 0.75);
	font-size: 0.75rem;
	color: rgb(212 212 216);
}

.tsc-dlbehavior-chip strong {
	color: rgb(244 244 245);
}

.tsc-dlbehavior-notice {
	display: flex;
	align-items: center;
	gap: 0.45rem;
	margin-bottom: 0.85rem;
	padding: 0.65rem 0.85rem;
	border-radius: 0.65rem;
	font-size: 0.8125rem;
}

.tsc-dlbehavior-notice--success {
	border: 1px solid rgb(34 197 94 / 0.35);
	background: rgb(34 197 94 / 0.08);
	color: rgb(187 247 208);
}

.tsc-dlbehavior-toolbar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.65rem;
	margin-bottom: 0.85rem;
}

.tsc-dlbehavior-back,
.tsc-dlbehavior-reset {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.45rem 0.75rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(24 24 27 / 0.85);
	font-size: 0.75rem;
	font-weight: 600;
	color: rgb(212 212 216);
	text-decoration: none;
}

.tsc-dlbehavior-back:hover {
	border-color: rgb(251 146 60 / 0.45);
	color: rgb(254 215 170);
}

.tsc-dlbehavior-reset {
	border-color: rgb(239 68 68 / 0.35);
	color: rgb(254 202 202);
}

.tsc-dlbehavior-reset:hover {
	background: rgb(239 68 68 / 0.12);
}

.tsc-dlbehavior-panel-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	padding: 0.2rem 0.5rem;
	border-radius: 999px;
	border: 1px solid rgb(251 146 60 / 0.35);
	background: rgb(251 146 60 / 0.12);
	font-size: 0.6875rem;
	font-weight: 700;
	color: rgb(254 215 170);
}

.tsc-dlbehavior-users {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
}

.tsc-dlbehavior-user {
	border-radius: 0.85rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: linear-gradient(160deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.88));
	overflow: hidden;
}

.tsc-dlbehavior-user-head {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
	gap: 0.75rem;
	padding: 0.85rem 1rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.45);
}

.tsc-dlbehavior-user-main {
	display: flex;
	align-items: flex-start;
	gap: 0.65rem;
	min-width: 0;
}

.tsc-dlbehavior-user-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2.25rem;
	height: 2.25rem;
	border-radius: 0.65rem;
	background: rgb(251 146 60 / 0.12);
	color: rgb(251 146 60);
	flex-shrink: 0;
}

.tsc-dlbehavior-user-name {
	margin: 0 0 0.15rem;
	font-size: 0.9375rem;
	font-weight: 800;
}

.tsc-dlbehavior-user-meta {
	margin: 0;
	font-size: 0.75rem;
	color: rgb(161 161 170);
}

.tsc-dlbehavior-user-link {
	text-decoration: none;
}

.tsc-dlbehavior-user-stats {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
}

.tsc-dlbehavior-stat {
	display: flex;
	flex-direction: column;
	gap: 0.1rem;
	min-width: 5.5rem;
	padding: 0.45rem 0.65rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(39 39 42 / 0.55);
	background: rgb(9 9 11 / 0.45);
}

.tsc-dlbehavior-stat-label {
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: rgb(113 113 122);
}

.tsc-dlbehavior-stat strong {
	font-size: 0.875rem;
	color: rgb(244 244 245);
}

.tsc-dlbehavior-stat--ratio.is-normal strong { color: rgb(187 247 208); }
.tsc-dlbehavior-stat--ratio.is-elevated { border-color: rgb(250 204 21 / 0.35); background: rgb(250 204 21 / 0.08); }
.tsc-dlbehavior-stat--ratio.is-elevated strong { color: rgb(254 240 138); }
.tsc-dlbehavior-stat--ratio.is-high { border-color: rgb(251 146 60 / 0.35); background: rgb(251 146 60 / 0.08); }
.tsc-dlbehavior-stat--ratio.is-high strong { color: rgb(254 215 170); }
.tsc-dlbehavior-stat--ratio.is-critical { border-color: rgb(239 68 68 / 0.35); background: rgb(239 68 68 / 0.1); }
.tsc-dlbehavior-stat--ratio.is-critical strong { color: rgb(254 202 202); }

.tsc-dlbehavior-details {
	border-top: 1px solid rgb(39 39 42 / 0.35);
}

.tsc-dlbehavior-details-summary {
	display: flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.65rem 1rem;
	font-size: 0.75rem;
	font-weight: 700;
	color: rgb(212 212 216);
	cursor: pointer;
	list-style: none;
}

.tsc-dlbehavior-details-summary::-webkit-details-marker {
	display: none;
}

.tsc-dlbehavior-details-summary:hover {
	color: rgb(254 215 170);
	background: rgb(251 146 60 / 0.05);
}

.tsc-dlbehavior-details-body {
	padding: 0 0.75rem 0.75rem;
}

.tsc-dlbehavior-table-wrap {
	overflow-x: auto;
	border-radius: 0.65rem;
	border: 1px solid rgb(39 39 42 / 0.55);
}

.tsc-dlbehavior-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.8125rem;
}

.tsc-dlbehavior-table thead th {
	padding: 0.55rem 0.75rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(24 24 27 / 0.9);
	font-size: 0.6875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: rgb(161 161 170);
	text-align: left;
	white-space: nowrap;
}

.tsc-dlbehavior-table thead th.tsc-dlbehavior-col-num {
	text-align: center;
}

.tsc-dlbehavior-table tbody td {
	padding: 0.6rem 0.75rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.35);
	vertical-align: middle;
}

.tsc-dlbehavior-table tbody tr:last-child td {
	border-bottom: none;
}

.tsc-dlbehavior-torrent-link {
	display: inline-flex;
	align-items: flex-start;
	gap: 0.35rem;
	color: rgb(244 244 245);
	text-decoration: none;
	font-weight: 600;
	word-break: break-word;
}

.tsc-dlbehavior-torrent-link:hover {
	color: rgb(254 215 170);
}

.tsc-dlbehavior-col-num {
	text-align: center;
}

.tsc-dlbehavior-bool {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	padding: 0.15rem 0.45rem;
	border-radius: 999px;
	font-size: 0.6875rem;
	font-weight: 700;
	white-space: nowrap;
}

.tsc-dlbehavior-bool.is-yes {
	border: 1px solid rgb(34 197 94 / 0.35);
	background: rgb(34 197 94 / 0.12);
	color: rgb(187 247 208);
}

.tsc-dlbehavior-bool.is-no {
	border: 1px solid rgb(239 68 68 / 0.35);
	background: rgb(239 68 68 / 0.12);
	color: rgb(254 202 202);
}

.tsc-dlbehavior-type {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	font-size: 0.75rem;
	color: rgb(212 212 216);
}

.tsc-dlbehavior-date {
	font-size: 0.75rem;
	color: rgb(161 161 170);
	white-space: nowrap;
}

.tsc-dlbehavior-muted {
	color: rgb(161 161 170);
	font-style: italic;
}

@media (max-width: 900px) {
	.tsc-dlbehavior-table thead {
		display: none;
	}

	.tsc-dlbehavior-table,
	.tsc-dlbehavior-table tbody,
	.tsc-dlbehavior-table tr,
	.tsc-dlbehavior-table td {
		display: block;
		width: 100%;
	}

	.tsc-dlbehavior-table tbody tr {
		padding: 0.65rem 0;
		border-bottom: 1px solid rgb(39 39 42 / 0.35);
	}

	.tsc-dlbehavior-table tbody tr:last-child {
		border-bottom: none;
	}

	.tsc-dlbehavior-table td {
		display: flex;
		align-items: flex-start;
		justify-content: space-between;
		gap: 0.75rem;
		padding: 0.3rem 0;
		border-bottom: none;
	}

	.tsc-dlbehavior-table td::before {
		content: attr(data-label);
		flex: 0 0 6.5rem;
		font-size: 0.6875rem;
		font-weight: 700;
		text-transform: uppercase;
		color: rgb(113 113 122);
	}

	.tsc-dlbehavior-torrent {
		flex-direction: column;
		padding-bottom: 0.45rem;
		margin-bottom: 0.25rem;
		border-bottom: 1px solid rgb(39 39 42 / 0.25);
	}

	.tsc-dlbehavior-torrent::before {
		display: none;
	}

	.tsc-dlbehavior-col-num {
		text-align: right;
	}
}

@media (max-width: 767px) {
	.tsc-dlbehavior-user-head {
		flex-direction: column;
	}

	.tsc-dlbehavior-user-stats {
		width: 100%;
	}

	.tsc-dlbehavior-stat {
		flex: 1 1 calc(33.333% - 0.35rem);
		min-width: 0;
	}
}

/* ═══════════════════════════════════════════════════════════
   Premium Mass-PM — masspm.php (index / details schema)
   ═══════════════════════════════════════════════════════════ */

.tsc-masspm-page {
	--tsc-masspm-accent: rgb(167 139 250);
	--tsc-masspm-accent-soft: rgb(167 139 250 / 0.14);
	--tsc-masspm-border: rgb(39 39 42 / 0.72);
	min-width: 0;
	padding-bottom: 1.5rem;
}

.tsc-index-block--masspm {
	border-color: rgb(167 139 250 / 0.28);
	box-shadow:
		0 0 0 1px rgb(167 139 250 / 0.06) inset,
		0 12px 40px rgb(0 0 0 / 0.35);
}

.tsc-index-section-body--masspm {
	padding: clamp(0.85rem, 2.5vw, 1.25rem);
	min-width: 0;
}

.tsc-page-masspm .maincontent > br {
	display: none;
}

.tsc-masspm-hero {
	position: relative;
	margin-bottom: 1rem;
	padding: clamp(1rem, 3vw, 1.5rem);
	border-radius: 1rem;
	border: 1px solid rgb(167 139 250 / 0.28);
	background:
		radial-gradient(ellipse 80% 60% at 50% -20%, rgb(167 139 250 / 0.16), transparent 60%),
		linear-gradient(160deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.9));
	overflow: hidden;
}

.tsc-masspm-hero-glow {
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at 80% 20%, rgb(139 92 246 / 0.12), transparent 45%);
	pointer-events: none;
}

.tsc-masspm-hero-inner {
	position: relative;
	z-index: 1;
}

.tsc-masspm-hero-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	margin-bottom: 0.55rem;
	padding: 0.25rem 0.55rem;
	border-radius: 999px;
	border: 1px solid rgb(167 139 250 / 0.35);
	background: rgb(167 139 250 / 0.12);
	font-size: 0.6875rem;
	font-weight: 700;
	color: rgb(221 214 254);
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.tsc-masspm-hero-title {
	margin: 0 0 0.35rem;
	font-size: clamp(1.25rem, 3.5vw, 1.65rem);
	font-weight: 800;
	color: rgb(250 250 250);
	line-height: 1.2;
}

.tsc-masspm-hero-sub {
	margin: 0;
	max-width: 42rem;
	font-size: 0.8125rem;
	line-height: 1.55;
	color: rgb(161 161 170);
}

.tsc-masspm-warning {
	display: flex;
	align-items: flex-start;
	gap: 0.65rem;
	margin-bottom: 1rem;
	padding: 0.75rem 0.9rem;
	border-radius: 0.75rem;
	border: 1px solid rgb(250 204 21 / 0.35);
	background: rgb(250 204 21 / 0.08);
	color: rgb(254 240 138);
	font-size: 0.8125rem;
}

.tsc-masspm-warning strong {
	display: block;
	color: rgb(254 249 195);
	margin-bottom: 0.15rem;
}

.tsc-masspm-warning span {
	color: rgb(253 224 71 / 0.9);
	font-size: 0.75rem;
}

.tsc-masspm-success {
	display: flex;
	align-items: flex-start;
	gap: 0.75rem;
	margin-bottom: 1rem;
	padding: 1rem 1.1rem;
	border-radius: 0.85rem;
	border: 1px solid rgb(34 197 94 / 0.35);
	background: rgb(34 197 94 / 0.08);
	color: rgb(187 247 208);
}

.tsc-masspm-success-title {
	margin: 0 0 0.25rem;
	font-size: 1rem;
	font-weight: 800;
	color: rgb(220 252 231);
}

.tsc-masspm-success p {
	margin: 0;
	font-size: 0.8125rem;
}

.tsc-masspm-panel-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	padding: 0.2rem 0.5rem;
	border-radius: 999px;
	border: 1px solid rgb(167 139 250 / 0.35);
	background: rgb(167 139 250 / 0.12);
	font-size: 0.6875rem;
	font-weight: 700;
	color: rgb(221 214 254);
}

.tsc-masspm-form {
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.tsc-masspm-field {
	display: flex;
	flex-direction: column;
	gap: 0.45rem;
}

.tsc-masspm-field-head {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.5rem;
}

.tsc-masspm-field-label {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	font-size: 0.6875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: rgb(161 161 170);
}

.tsc-masspm-field input[type="text"] {
	padding: 0.55rem 0.75rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.75);
	color: rgb(244 244 245);
	font-size: 0.875rem;
}

.tsc-masspm-field-hint {
	margin: 0;
	font-size: 0.75rem;
	line-height: 1.45;
	color: rgb(113 113 122);
}

.tsc-masspm-class-tools {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem;
}

.tsc-masspm-tool-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	padding: 0.3rem 0.55rem;
	border-radius: 999px;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(24 24 27 / 0.85);
	font-size: 0.6875rem;
	font-weight: 600;
	color: rgb(212 212 216);
	cursor: pointer;
}

.tsc-masspm-tool-btn:hover {
	border-color: rgb(167 139 250 / 0.45);
	color: rgb(221 214 254);
}

.tsc-masspm-class-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(10.5rem, 1fr));
	gap: 0.45rem;
}

.tsc-masspm-class-option {
	position: relative;
	cursor: pointer;
}

.tsc-masspm-class-option input {
	position: absolute;
	opacity: 0;
	width: 0;
	height: 0;
	pointer-events: none;
}

.tsc-masspm-class-card {
	display: flex;
	flex-direction: column;
	gap: 0.15rem;
	padding: 0.55rem 0.65rem;
	border-radius: 0.65rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(24 24 27 / 0.75);
	transition: border-color 0.15s, background 0.15s, box-shadow 0.15s;
}

.tsc-masspm-class-option:has(input:checked) .tsc-masspm-class-card {
	border-color: rgb(167 139 250 / 0.55);
	background: rgb(167 139 250 / 0.1);
	box-shadow: 0 0 0 1px rgb(167 139 250 / 0.15) inset;
}

.tsc-masspm-class-name {
	font-size: 0.8125rem;
}

.tsc-masspm-class-const {
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: rgb(113 113 122);
}

.tsc-masspm-editor-wrap .tsc-markdown-editor {
	border-radius: 0.75rem;
	overflow: hidden;
	border: 1px solid rgb(39 39 42 / 0.65);
}

.tsc-masspm-editor-wrap .tsc-markdown-editor__workspace {
	min-height: 14rem;
}

.tsc-masspm-form-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
	padding-top: 0.25rem;
}

.tsc-masspm-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.35rem;
	padding: 0.55rem 0.9rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(24 24 27 / 0.85);
	font-size: 0.8125rem;
	font-weight: 700;
	color: rgb(228 228 231);
	text-decoration: none;
	cursor: pointer;
}

.tsc-masspm-btn--primary {
	border-color: rgb(167 139 250 / 0.45);
	background: linear-gradient(180deg, rgb(167 139 250 / 0.32), rgb(167 139 250 / 0.16));
	color: rgb(237 233 254);
}

.tsc-masspm-btn--primary:hover {
	border-color: rgb(167 139 250 / 0.65);
}

.tsc-masspm-btn--ghost {
	background: transparent;
}

.tsc-masspm-btn--ghost:hover {
	border-color: rgb(167 139 250 / 0.4);
	color: rgb(221 214 254);
}

@media (max-width: 767px) {
	.tsc-masspm-class-grid {
		grid-template-columns: 1fr 1fr;
	}

	.tsc-masspm-form-actions {
		flex-direction: column;
	}

	.tsc-masspm-btn {
		width: 100%;
	}
}

/* Mass-E-Mail — massmail.php (erbt Mass-PM, Akzent Cyan) */
.tsc-massmail-page {
	--tsc-masspm-accent: rgb(34 211 238);
	--tsc-masspm-accent-soft: rgb(34 211 238 / 0.14);
}

.tsc-index-block--massmail {
	border-color: rgb(34 211 238 / 0.28);
	box-shadow:
		0 0 0 1px rgb(34 211 238 / 0.06) inset,
		0 12px 40px rgb(0 0 0 / 0.35);
}

.tsc-massmail-hero {
	border-color: rgb(34 211 238 / 0.28);
	background:
		radial-gradient(ellipse 80% 60% at 50% -20%, rgb(34 211 238 / 0.14), transparent 60%),
		linear-gradient(160deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.9));
}

.tsc-massmail-optout {
	display: flex;
	align-items: flex-start;
	gap: 0.55rem;
	font-size: 0.8125rem;
	color: rgb(161 161 170);
}

.tsc-massmail-optout input {
	margin-top: 0.2rem;
	accent-color: rgb(34 211 238);
}

.tsc-masspm-class-option:has(input:checked) .tsc-massmail-page .tsc-masspm-class-card,
.tsc-massmail-page .tsc-masspm-class-option:has(input:checked) .tsc-masspm-class-card {
	border-color: rgb(34 211 238 / 0.55);
	background: rgb(34 211 238 / 0.1);
}

.tsc-massmail-page .tsc-masspm-btn--primary {
	border-color: rgb(34 211 238 / 0.45);
	background: linear-gradient(180deg, rgb(34 211 238 / 0.28), rgb(34 211 238 / 0.12));
	color: rgb(207 250 254);
}

/* SMTP Admin (admin.php) */
.tsc-admin-smtp-panel-foot {
	margin-top: 1rem;
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
}

.tsc-admin-field--wide {
	grid-column: 1 / -1;
}

.tsc-admin-field-note {
	display: block;
	margin-top: 0.35rem;
	font-size: 0.75rem;
	color: rgb(113 113 122);
}

.tsc-smtp-hint {
	margin-bottom: 0;
}

.tsc-admin-toolbar-status--ok {
	color: rgb(74 222 128);
}

.tsc-admin-toolbar-status--error {
	color: rgb(248 113 113);
}

@media (max-width: 420px) {
	.tsc-masspm-class-grid {
		grid-template-columns: 1fr;
	}
}

/* ═══════════════════════════════════════════════════════════
   Premium Forum Manager — forummanager.php (index / forum schema)
   ═══════════════════════════════════════════════════════════ */

.tsc-forummanager-page {
	--tsc-forummanager-accent: rgb(96 165 250);
	--tsc-forummanager-accent-soft: rgb(96 165 250 / 0.14);
	--tsc-forummanager-border: rgb(39 39 42 / 0.72);
	min-width: 0;
	padding-bottom: 1.5rem;
}

.tsc-index-block--forummanager {
	border-color: rgb(96 165 250 / 0.28);
	box-shadow:
		0 0 0 1px rgb(96 165 250 / 0.06) inset,
		0 12px 40px rgb(0 0 0 / 0.35);
}

.tsc-index-section-body--forummanager {
	padding: clamp(0.75rem, 2vw, 1.1rem);
	min-width: 0;
}

.tsc-page-forummanager .maincontent > br {
	display: none;
}

.tsc-forummanager-hero {
	position: relative;
	margin-bottom: 1rem;
	padding: clamp(1rem, 3vw, 1.5rem);
	border-radius: 1rem;
	border: 1px solid rgb(96 165 250 / 0.28);
	background:
		radial-gradient(ellipse 80% 60% at 50% -20%, rgb(96 165 250 / 0.16), transparent 60%),
		linear-gradient(160deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.9));
	overflow: hidden;
}

.tsc-forummanager-hero-glow {
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at 80% 20%, rgb(129 140 248 / 0.12), transparent 45%);
	pointer-events: none;
}

.tsc-forummanager-hero-inner {
	position: relative;
	z-index: 1;
}

.tsc-forummanager-hero-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	margin-bottom: 0.55rem;
	padding: 0.25rem 0.55rem;
	border-radius: 999px;
	border: 1px solid rgb(96 165 250 / 0.35);
	background: rgb(96 165 250 / 0.12);
	font-size: 0.6875rem;
	font-weight: 700;
	color: rgb(191 219 254);
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.tsc-forummanager-hero-title {
	margin: 0 0 0.35rem;
	font-size: clamp(1.25rem, 3.5vw, 1.65rem);
	font-weight: 800;
	color: rgb(250 250 250);
	line-height: 1.2;
}

.tsc-forummanager-hero-sub {
	margin: 0;
	max-width: 42rem;
	font-size: 0.8125rem;
	line-height: 1.55;
	color: rgb(161 161 170);
}

.tsc-forummanager-panel-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	padding: 0.2rem 0.5rem;
	border-radius: 999px;
	border: 1px solid rgb(96 165 250 / 0.35);
	background: rgb(96 165 250 / 0.12);
	font-size: 0.6875rem;
	font-weight: 700;
	color: rgb(191 219 254);
}

.tsc-forummanager-toolbar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.65rem;
	margin-bottom: 0.85rem;
}

.tsc-forummanager-back,
.tsc-forummanager-toolbar-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.45rem 0.75rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(24 24 27 / 0.85);
	font-size: 0.75rem;
	font-weight: 600;
	color: rgb(212 212 216);
	text-decoration: none;
	cursor: pointer;
}

.tsc-forummanager-back:hover,
.tsc-forummanager-toolbar-btn:hover {
	border-color: rgb(96 165 250 / 0.45);
	color: rgb(191 219 254);
}

.tsc-forummanager-toolbar-btn--primary {
	border-color: rgb(96 165 250 / 0.45);
	background: linear-gradient(180deg, rgb(96 165 250 / 0.28), rgb(96 165 250 / 0.14));
	color: rgb(219 234 254);
}

.tsc-forummanager-table-wrap {
	overflow-x: auto;
	border-radius: 0.65rem;
	border: 1px solid rgb(39 39 42 / 0.55);
}

.tsc-forummanager-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.8125rem;
}

.tsc-forummanager-table thead th {
	padding: 0.55rem 0.75rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(24 24 27 / 0.9);
	font-size: 0.6875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: rgb(161 161 170);
	text-align: left;
	white-space: nowrap;
}

.tsc-forummanager-table thead th.tsc-forummanager-col-stat,
.tsc-forummanager-table thead th.tsc-forummanager-col-actions {
	text-align: center;
}

.tsc-forummanager-row td {
	padding: 0.75rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.35);
	vertical-align: top;
}

.tsc-forummanager-row:last-child td {
	border-bottom: none;
}

.tsc-forummanager-name-link {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	font-size: 0.875rem;
	font-weight: 800;
	color: rgb(244 244 245);
	text-decoration: none;
}

.tsc-forummanager-name-link:hover {
	color: rgb(191 219 254);
}

.tsc-forummanager-desc {
	margin: 0.35rem 0 0.45rem;
	font-size: 0.75rem;
	line-height: 1.45;
	color: rgb(161 161 170);
}

.tsc-forummanager-sort-pill {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	padding: 0.15rem 0.45rem;
	border-radius: 999px;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.45);
	font-size: 0.625rem;
	font-weight: 700;
	color: rgb(161 161 170);
}

.tsc-forummanager-stat {
	text-align: center;
	color: rgb(212 212 216);
	white-space: nowrap;
}

.tsc-forummanager-stat strong {
	color: rgb(244 244 245);
}

.tsc-forummanager-perm {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	padding: 0.2rem 0.45rem;
	border-radius: 999px;
	border: 1px solid rgb(96 165 250 / 0.25);
	background: rgb(96 165 250 / 0.08);
	font-size: 0.6875rem;
	font-weight: 600;
	color: rgb(191 219 254);
	white-space: nowrap;
}

.tsc-forummanager-actions {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0.35rem;
}

.tsc-forummanager-action {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	padding: 0.35rem 0.55rem;
	border-radius: 0.45rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(24 24 27 / 0.85);
	font-size: 0.6875rem;
	font-weight: 600;
	color: rgb(212 212 216);
	text-decoration: none;
}

.tsc-forummanager-action:hover {
	border-color: rgb(96 165 250 / 0.45);
	color: rgb(191 219 254);
}

.tsc-forummanager-action--danger {
	border-color: rgb(239 68 68 / 0.35);
	color: rgb(254 202 202);
}

.tsc-forummanager-action--danger:hover {
	background: rgb(239 68 68 / 0.12);
	border-color: rgb(239 68 68 / 0.5);
}

.tsc-forummanager-form-intro {
	display: flex;
	align-items: center;
	gap: 0.35rem;
	margin: 0 0 0.85rem;
	font-size: 0.875rem;
	font-weight: 700;
	color: rgb(191 219 254);
}

.tsc-forummanager-form-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.75rem;
	margin-bottom: 0.85rem;
}

.tsc-forummanager-field {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
}

.tsc-forummanager-field--full {
	grid-column: 1 / -1;
}

.tsc-forummanager-field-label {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	font-size: 0.6875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: rgb(161 161 170);
}

.tsc-forummanager-field input[type="text"],
.tsc-forummanager-select {
	padding: 0.55rem 0.75rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.75);
	color: rgb(244 244 245);
	font-size: 0.875rem;
}

.tsc-forummanager-form-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
}

.tsc-forummanager-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.35rem;
	padding: 0.55rem 0.9rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(24 24 27 / 0.85);
	font-size: 0.8125rem;
	font-weight: 700;
	color: rgb(228 228 231);
	text-decoration: none;
	cursor: pointer;
}

.tsc-forummanager-btn--primary {
	border-color: rgb(96 165 250 / 0.45);
	background: linear-gradient(180deg, rgb(96 165 250 / 0.28), rgb(96 165 250 / 0.14));
	color: rgb(219 234 254);
}

.tsc-forummanager-btn--ghost {
	background: transparent;
}

.tsc-forummanager-btn--ghost:hover {
	border-color: rgb(96 165 250 / 0.4);
	color: rgb(191 219 254);
}

@media (max-width: 900px) {
	.tsc-forummanager-table thead {
		display: none;
	}

	.tsc-forummanager-table,
	.tsc-forummanager-table tbody,
	.tsc-forummanager-table tr,
	.tsc-forummanager-table td {
		display: block;
		width: 100%;
	}

	.tsc-forummanager-row {
		padding: 0.75rem;
		border-bottom: 1px solid rgb(39 39 42 / 0.45);
	}

	.tsc-forummanager-row td {
		display: flex;
		align-items: flex-start;
		justify-content: space-between;
		gap: 0.75rem;
		padding: 0.35rem 0;
		border-bottom: none;
	}

	.tsc-forummanager-row td::before {
		content: attr(data-label);
		flex: 0 0 6.5rem;
		font-size: 0.6875rem;
		font-weight: 700;
		text-transform: uppercase;
		color: rgb(113 113 122);
	}

	.tsc-forummanager-name {
		flex-direction: column;
		align-items: flex-start;
		padding-bottom: 0.45rem;
		margin-bottom: 0.25rem;
		border-bottom: 1px solid rgb(39 39 42 / 0.35);
	}

	.tsc-forummanager-name::before {
		display: none;
	}

	.tsc-forummanager-stat,
	.tsc-forummanager-perm-cell {
		justify-content: flex-end;
		text-align: right;
	}

	.tsc-forummanager-actions {
		justify-content: flex-end;
		width: 100%;
	}

	.tsc-forummanager-action span {
		display: none;
	}
}

@media (max-width: 767px) {
	.tsc-forummanager-form-grid {
		grid-template-columns: 1fr;
	}

	.tsc-forummanager-form-actions {
		flex-direction: column;
	}

	.tsc-forummanager-btn {
		width: 100%;
	}
}

/* ═══════════════════════════════════════════════════════════
   Premium Releaser — releaser.php (index schema)
   ═══════════════════════════════════════════════════════════ */

.tsc-releaser-page {
	--tsc-releaser-accent: rgb(251 191 36);
	--tsc-releaser-accent-soft: rgb(251 191 36 / 0.14);
	--tsc-releaser-border: rgb(39 39 42 / 0.72);
	min-width: 0;
	padding-bottom: 1.5rem;
}

.tsc-index-block--releaser {
	border-color: rgb(251 191 36 / 0.28);
	box-shadow:
		0 0 0 1px rgb(251 191 36 / 0.06) inset,
		0 12px 40px rgb(0 0 0 / 0.35);
}

.tsc-index-section-body--releaser {
	padding: clamp(0.75rem, 2vw, 1.1rem);
	min-width: 0;
}

.tsc-page-releaser .maincontent > br {
	display: none;
}

.tsc-releaser-hero {
	position: relative;
	margin-bottom: 1rem;
	padding: clamp(1rem, 3vw, 1.5rem);
	border-radius: 1rem;
	border: 1px solid rgb(251 191 36 / 0.28);
	background:
		radial-gradient(ellipse 80% 60% at 50% -20%, rgb(251 191 36 / 0.16), transparent 60%),
		linear-gradient(160deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.9));
	overflow: hidden;
}

.tsc-releaser-hero-glow {
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at 80% 20%, rgb(251 191 36 / 0.1), transparent 45%);
	pointer-events: none;
}

.tsc-releaser-hero-inner {
	position: relative;
	z-index: 1;
}

.tsc-releaser-hero-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	margin-bottom: 0.55rem;
	padding: 0.25rem 0.55rem;
	border-radius: 999px;
	border: 1px solid rgb(251 191 36 / 0.35);
	background: rgb(251 191 36 / 0.12);
	font-size: 0.6875rem;
	font-weight: 700;
	color: rgb(254 243 199);
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.tsc-releaser-hero-title {
	margin: 0 0 0.35rem;
	font-size: clamp(1.25rem, 3.5vw, 1.65rem);
	font-weight: 800;
	color: rgb(250 250 250);
	line-height: 1.2;
}

.tsc-releaser-hero-sub {
	margin: 0;
	max-width: 42rem;
	font-size: 0.8125rem;
	line-height: 1.55;
	color: rgb(161 161 170);
}

.tsc-releaser-panel-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	padding: 0.2rem 0.5rem;
	border-radius: 999px;
	border: 1px solid rgb(251 191 36 / 0.35);
	background: rgb(251 191 36 / 0.12);
	font-size: 0.6875rem;
	font-weight: 700;
	color: rgb(254 243 199);
}

.tsc-releaser-toolbar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-start;
	gap: 0.65rem;
	margin-bottom: 0.85rem;
}

.tsc-releaser-toolbar--hero {
	margin-top: 1rem;
	margin-bottom: 0;
	padding-top: 0.85rem;
	border-top: 1px solid rgb(251 191 36 / 0.18);
}

.tsc-releaser-back,
.tsc-releaser-toolbar-btn,
.tsc-releaser-inline-link {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.45rem 0.75rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(24 24 27 / 0.85);
	font-size: 0.75rem;
	font-weight: 600;
	color: rgb(212 212 216);
	text-decoration: none;
}

.tsc-releaser-back:hover,
.tsc-releaser-toolbar-btn:hover,
.tsc-releaser-inline-link:hover {
	border-color: rgb(251 191 36 / 0.45);
	color: rgb(254 243 199);
}

.tsc-releaser-groups {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr));
	gap: 0.75rem;
}

.tsc-releaser-group-card {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
	padding: 0.85rem;
	border-radius: 0.85rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: linear-gradient(160deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.88));
}

.tsc-releaser-group-head {
	display: flex;
	align-items: flex-start;
	gap: 0.65rem;
}

.tsc-releaser-group-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2.25rem;
	height: 2.25rem;
	border-radius: 0.65rem;
	background: rgb(251 191 36 / 0.12);
	color: rgb(251 191 36);
	flex-shrink: 0;
}

.tsc-releaser-group-title {
	margin: 0 0 0.2rem;
	font-size: 0.9375rem;
	font-weight: 800;
}

.tsc-releaser-group-title a {
	color: rgb(244 244 245);
	text-decoration: none;
}

.tsc-releaser-group-title a:hover {
	color: rgb(254 243 199);
}

.tsc-releaser-gcode {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	font-size: 0.6875rem;
	color: rgb(161 161 170);
}

.tsc-releaser-group-meta {
	display: grid;
	gap: 0.45rem;
	margin: 0;
}

.tsc-releaser-meta-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	font-size: 0.75rem;
}

.tsc-releaser-meta-row dt {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	margin: 0;
	color: rgb(161 161 170);
	font-weight: 600;
}

.tsc-releaser-meta-row dd {
	margin: 0;
	color: rgb(228 228 231);
	text-align: right;
}

.tsc-releaser-group-foot {
	margin-top: auto;
}

.tsc-releaser-group-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	width: 100%;
	justify-content: center;
	padding: 0.5rem 0.75rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(251 191 36 / 0.35);
	background: rgb(251 191 36 / 0.1);
	font-size: 0.75rem;
	font-weight: 700;
	color: rgb(254 243 199);
	text-decoration: none;
}

.tsc-releaser-group-btn:hover {
	background: rgb(251 191 36 / 0.16);
}

.tsc-releaser-details-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.85rem;
	margin-bottom: 0.85rem;
}

.tsc-releaser-stats {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(11rem, 1fr));
	gap: 0.55rem;
}

.tsc-releaser-stat {
	display: flex;
	align-items: flex-start;
	gap: 0.45rem;
	padding: 0.65rem 0.75rem;
	border-radius: 0.65rem;
	border: 1px solid rgb(39 39 42 / 0.55);
	background: rgb(9 9 11 / 0.45);
}

.tsc-releaser-stat-icon {
	color: rgb(251 191 36);
	flex-shrink: 0;
	margin-top: 0.1rem;
}

.tsc-releaser-stat-body {
	display: flex;
	flex-direction: column;
	gap: 0.15rem;
	min-width: 0;
}

.tsc-releaser-stat-label {
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: rgb(113 113 122);
}

.tsc-releaser-stat-value {
	font-size: 0.8125rem;
	font-weight: 700;
	color: rgb(244 244 245);
	word-break: break-word;
}

.tsc-releaser-members {
	display: flex;
	flex-direction: column;
	gap: 0.45rem;
}

.tsc-releaser-member {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.65rem;
	padding: 0.65rem 0.75rem;
	border-radius: 0.65rem;
	border: 1px solid rgb(39 39 42 / 0.55);
	background: rgb(9 9 11 / 0.35);
}

.tsc-releaser-member-main {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.45rem 0.75rem;
	min-width: 0;
}

.tsc-releaser-member-rank {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	padding: 0.15rem 0.45rem;
	border-radius: 999px;
	border: 1px solid rgb(251 191 36 / 0.35);
	background: rgb(251 191 36 / 0.1);
	font-size: 0.6875rem;
	font-weight: 700;
	color: rgb(254 243 199);
}

.tsc-releaser-member-actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.35rem;
}

.tsc-releaser-rank-form,
.tsc-releaser-delete-form,
.tsc-releaser-inline-status-form,
.tsc-releaser-inline-delete-form {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	margin: 0;
}

.tsc-releaser-select {
	padding: 0.35rem 0.55rem;
	border-radius: 0.45rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(24 24 27 / 0.9);
	color: rgb(228 228 231);
	font-size: 0.75rem;
}

.tsc-releaser-select--compact {
	padding: 0.25rem 0.4rem;
	font-size: 0.6875rem;
}

.tsc-releaser-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.3rem;
	padding: 0.4rem 0.65rem;
	border-radius: 0.45rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(24 24 27 / 0.85);
	font-size: 0.75rem;
	font-weight: 600;
	color: rgb(212 212 216);
	cursor: pointer;
	text-decoration: none;
}

.tsc-releaser-btn--primary {
	border-color: rgb(251 191 36 / 0.45);
	background: linear-gradient(180deg, rgb(251 191 36 / 0.28), rgb(251 191 36 / 0.14));
	color: rgb(254 243 199);
}

.tsc-releaser-btn--ghost:hover {
	border-color: rgb(251 191 36 / 0.4);
}

.tsc-releaser-btn--danger {
	border-color: rgb(239 68 68 / 0.4);
	color: rgb(254 202 202);
}

.tsc-releaser-btn--danger:hover {
	background: rgb(239 68 68 / 0.12);
}

.tsc-releaser-form-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.75rem;
	margin-bottom: 0.85rem;
}

.tsc-releaser-field {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
}

.tsc-releaser-field-label {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	font-size: 0.6875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: rgb(161 161 170);
}

.tsc-releaser-field input[type="text"] {
	padding: 0.55rem 0.75rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.75);
	color: rgb(244 244 245);
	font-size: 0.875rem;
}

.tsc-releaser-input {
	padding: 0.55rem 0.75rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.75);
	color: rgb(244 244 245);
	font-size: 0.875rem;
	width: 100%;
}

.tsc-releaser-page .tsc-suggest {
	position: relative;
}

.tsc-releaser-page .tsc-suggest--open {
	z-index: 5;
}

.tsc-releaser-page .tsc-suggest-dropdown {
	z-index: 10070;
}

.tsc-releaser-flash {
	display: flex;
	align-items: center;
	gap: 0.45rem;
	margin-bottom: 0.75rem;
	padding: 0.6rem 0.8rem;
	border-radius: 0.55rem;
	font-size: 0.75rem;
	font-weight: 600;
}

.tsc-releaser-flash--success {
	border: 1px solid rgb(74 222 128 / 0.35);
	background: rgb(74 222 128 / 0.1);
	color: rgb(134 239 172);
}

.tsc-releaser-flash--danger {
	border: 1px solid rgb(239 68 68 / 0.35);
	background: rgb(239 68 68 / 0.1);
	color: rgb(252 165 165);
}

.tsc-releaser-toolbar-btn--danger {
	border-color: rgb(239 68 68 / 0.4);
	color: rgb(254 202 202);
}

.tsc-releaser-toolbar-btn--danger:hover {
	background: rgb(239 68 68 / 0.12);
}

.tsc-releaser-delete-group-form {
	margin: 0;
}

.tsc-releaser-form-hint {
	margin: 0 0 0.75rem;
	font-size: 0.75rem;
	color: rgb(161 161 170);
}

.tsc-releaser-master-change {
	margin-top: 0.85rem;
	padding-top: 0.85rem;
	border-top: 1px dashed rgb(251 191 36 / 0.22);
}

.tsc-releaser-master-change-title {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 0.35rem;
	margin: 0 0 0.65rem;
	font-size: 0.75rem;
	font-weight: 700;
	color: rgb(254 243 199);
}

.tsc-releaser-master-change-hint {
	font-weight: 500;
	color: rgb(161 161 170);
}

.tsc-releaser-master-change-form {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	gap: 0.65rem;
}

.tsc-releaser-master-change-form .tsc-releaser-field,
.tsc-releaser-master-change-form .tsc-suggest {
	flex: 1 1 14rem;
	min-width: 0;
	margin: 0;
}

.tsc-releaser-form-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
}

.tsc-releaser-empty-inline {
	display: flex;
	align-items: center;
	gap: 0.45rem;
	padding: 0.75rem;
	border-radius: 0.65rem;
	border: 1px dashed rgb(39 39 42 / 0.65);
	color: rgb(161 161 170);
	font-size: 0.8125rem;
}

.tsc-releaser-muted {
	color: rgb(161 161 170);
	font-style: italic;
}

.tsc-releaser-user-link {
	text-decoration: none;
}

.tsc-releaser-pager {
	margin: 0.75rem 0;
	text-align: center;
}

.tsc-releaser-pager p {
	margin: 0;
}

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

.tsc-releaser-torrent-status {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	padding: 0.15rem 0.45rem;
	border-radius: 999px;
	font-size: 0.6875rem;
	font-weight: 700;
	margin-right: 0.45rem;
}

.tsc-releaser-torrent-status.is-live {
	border: 1px solid rgb(34 197 94 / 0.35);
	background: rgb(34 197 94 / 0.12);
	color: rgb(187 247 208);
}

.tsc-releaser-torrent-status.is-hidden {
	border: 1px solid rgb(239 68 68 / 0.35);
	background: rgb(239 68 68 / 0.12);
	color: rgb(254 202 202);
}

.tsc-releaser-torrent-actions {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
	width: 100%;
	margin-top: 0.35rem;
}

.tsc-torrent-action--admin {
	border-color: rgb(251 191 36 / 0.35);
}

.tsc-torrent-action--danger {
	border-color: rgb(239 68 68 / 0.35);
	color: rgb(254 202 202);
}

.tsc-torrent-action--danger:hover {
	background: rgb(239 68 68 / 0.12);
}

@media (max-width: 900px) {
	.tsc-releaser-details-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 767px) {
	.tsc-releaser-form-grid {
		grid-template-columns: 1fr;
	}

	.tsc-releaser-member {
		flex-direction: column;
		align-items: stretch;
	}

	.tsc-releaser-member-actions {
		width: 100%;
		justify-content: space-between;
	}
}

/* ═══════════════════════════════════════════════════════════
   Premium 404 — 404.php (index / details schema)
   ═══════════════════════════════════════════════════════════ */

.tsc-404-page {
	--tsc-404-accent: rgb(251 146 60);
	--tsc-404-accent-soft: rgb(251 146 60 / 0.16);
	--tsc-404-glow: rgb(251 146 60 / 0.22);
	min-width: 0;
	padding-bottom: 1.5rem;
}

.tsc-page-404 .maincontent > br {
	display: none;
}

.tsc-404-hero {
	position: relative;
	margin-bottom: 1rem;
	border-radius: 1rem;
	border: 1px solid rgb(251 146 60 / 0.28);
	overflow: hidden;
	background: rgb(9 9 11);
	box-shadow:
		0 0 0 1px rgb(251 146 60 / 0.06) inset,
		0 18px 48px rgb(0 0 0 / 0.45);
	min-height: clamp(18rem, 52vw, 28rem);
	display: grid;
	align-items: end;
}

.tsc-404-hero-media {
	position: absolute;
	inset: 0;
	z-index: 0;
}

.tsc-404-hero-img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center 42%;
	display: block;
}

html[data-tsc-theme="light"] .tsc-404-hero-img--dark,
html:not([data-tsc-theme="light"]) .tsc-404-hero-img--light {
	display: none;
}

.tsc-404-hero-vignette {
	position: absolute;
	inset: 0;
	background:
		linear-gradient(0deg, rgb(9 9 11 / 0.92) 0%, rgb(9 9 11 / 0.35) 42%, rgb(9 9 11 / 0.15) 100%),
		radial-gradient(ellipse 90% 70% at 50% 100%, rgb(251 146 60 / 0.12), transparent 60%);
	pointer-events: none;
}

html[data-tsc-theme="light"] .tsc-404-hero-vignette {
	background:
		linear-gradient(0deg, rgb(255 255 255 / 0.94) 0%, rgb(255 255 255 / 0.55) 45%, rgb(255 255 255 / 0.2) 100%),
		radial-gradient(ellipse 90% 70% at 50% 100%, rgb(251 146 60 / 0.1), transparent 60%);
}

.tsc-404-hero-scanlines {
	position: absolute;
	inset: 0;
	opacity: 0.08;
	background: repeating-linear-gradient(
		0deg,
		transparent,
		transparent 2px,
		rgb(251 146 60 / 0.15) 2px,
		rgb(251 146 60 / 0.15) 3px
	);
	pointer-events: none;
	mix-blend-mode: overlay;
}

.tsc-404-hero-content {
	position: relative;
	z-index: 1;
	padding: clamp(1rem, 3vw, 1.75rem);
	max-width: 44rem;
}

.tsc-404-hero-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	margin-bottom: 0.55rem;
	padding: 0.25rem 0.55rem;
	border-radius: 999px;
	border: 1px solid rgb(251 146 60 / 0.35);
	background: rgb(251 146 60 / 0.12);
	font-size: 0.6875rem;
	font-weight: 700;
	color: rgb(254 215 170);
	text-transform: uppercase;
	letter-spacing: 0.05em;
}

.tsc-404-code {
	display: flex;
	align-items: center;
	gap: 0.15rem;
	margin: 0 0 0.35rem;
	font-size: clamp(2.5rem, 10vw, 4.5rem);
	font-weight: 900;
	line-height: 1;
	color: rgb(250 250 250);
	text-shadow: 0 0 24px rgb(251 146 60 / 0.35);
	letter-spacing: 0.04em;
}

.tsc-404-code-hole {
	display: inline-block;
	width: 0.72em;
	height: 0.72em;
	border-radius: 50%;
	background:
		radial-gradient(circle at 50% 50%, rgb(0 0 0) 0 34%, rgb(251 146 60) 38% 52%, rgb(253 186 116 / 0.35) 58%, transparent 72%);
	box-shadow: 0 0 18px rgb(251 146 60 / 0.55);
	vertical-align: middle;
	transform: translateY(-0.04em);
}

.tsc-404-title {
	margin: 0 0 0.45rem;
	font-size: clamp(1.35rem, 4vw, 2rem);
	font-weight: 800;
	color: rgb(250 250 250);
	line-height: 1.15;
}

.tsc-404-sub {
	margin: 0 0 0.85rem;
	max-width: 36rem;
	font-size: 0.875rem;
	line-height: 1.6;
	color: rgb(212 212 216);
}

.tsc-404-path {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.45rem;
	margin-bottom: 0.85rem;
	padding: 0.45rem 0.65rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.55);
}

.tsc-404-path-label {
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: rgb(161 161 170);
}

.tsc-404-path-value {
	font-size: 0.75rem;
	color: rgb(253 186 116);
	word-break: break-all;
}

.tsc-404-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
}

.tsc-404-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.35rem;
	padding: 0.55rem 0.9rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(24 24 27 / 0.85);
	font-size: 0.8125rem;
	font-weight: 700;
	color: rgb(228 228 231);
	text-decoration: none;
	cursor: pointer;
	transition: border-color 0.15s, background 0.15s, transform 0.1s;
}

.tsc-404-btn:hover {
	border-color: rgb(251 146 60 / 0.45);
	color: rgb(255 237 213);
}

.tsc-404-btn:active {
	transform: scale(0.98);
}

.tsc-404-btn--primary {
	border-color: rgb(251 146 60 / 0.45);
	background: linear-gradient(180deg, rgb(251 146 60 / 0.35), rgb(251 146 60 / 0.18));
	color: rgb(255 237 213);
}

.tsc-404-btn--primary:hover {
	border-color: rgb(251 146 60 / 0.65);
	background: linear-gradient(180deg, rgb(251 146 60 / 0.45), rgb(251 146 60 / 0.24));
}

.tsc-404-btn--secondary {
	border-color: rgb(59 130 246 / 0.35);
}

.tsc-404-btn--secondary:hover {
	background: rgb(59 130 246 / 0.12);
	border-color: rgb(59 130 246 / 0.5);
	color: rgb(191 219 254);
}

.tsc-404-btn--ghost {
	background: transparent;
}

.tsc-404-help {
	padding: clamp(0.85rem, 2.5vw, 1.25rem);
	border-radius: 1rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: linear-gradient(160deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.9));
	box-shadow: 0 12px 32px rgb(0 0 0 / 0.25);
}

.tsc-404-help-head {
	margin-bottom: 0.75rem;
}

.tsc-404-help-title {
	display: flex;
	align-items: center;
	gap: 0.45rem;
	margin: 0 0 0.25rem;
	font-size: 1rem;
	font-weight: 800;
	color: rgb(244 244 245);
}

.tsc-404-help-sub {
	margin: 0;
	font-size: 0.8125rem;
	color: rgb(161 161 170);
}

.tsc-404-links {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(9.5rem, 1fr));
	gap: 0.45rem;
}

.tsc-404-link {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.55rem 0.75rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(39 39 42 / 0.55);
	background: rgb(9 9 11 / 0.45);
	font-size: 0.75rem;
	font-weight: 600;
	color: rgb(212 212 216);
	text-decoration: none;
	transition: border-color 0.15s, background 0.15s, color 0.15s;
}

.tsc-404-link:hover {
	border-color: rgb(251 146 60 / 0.4);
	background: rgb(251 146 60 / 0.08);
	color: rgb(254 215 170);
}

@media (max-width: 767px) {
	.tsc-404-hero {
		min-height: clamp(16rem, 68vw, 22rem);
	}

	.tsc-404-code {
		font-size: clamp(2rem, 16vw, 3rem);
	}

	.tsc-404-actions {
		flex-direction: column;
	}

	.tsc-404-btn {
		width: 100%;
	}

	.tsc-404-links {
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 420px) {
	.tsc-404-links {
		grid-template-columns: 1fr;
	}
}

/* ═══════════════════════════════════════════════════════════
   Premium PM-Spion — pmspion.php (index / details schema)
   ═══════════════════════════════════════════════════════════ */

.tsc-pmspion-page {
	--tsc-pmspion-accent: rgb(244 63 94);
	--tsc-pmspion-accent-soft: rgb(244 63 94 / 0.14);
	--tsc-pmspion-border: rgb(39 39 42 / 0.72);
	min-width: 0;
	padding-bottom: 1.5rem;
}

.tsc-index-block--pmspion {
	border-color: rgb(244 63 94 / 0.28);
	box-shadow:
		0 0 0 1px rgb(244 63 94 / 0.06) inset,
		0 12px 40px rgb(0 0 0 / 0.35);
}

.tsc-index-section-body--pmspion {
	padding: clamp(0.75rem, 2vw, 1.1rem);
	min-width: 0;
}

.tsc-page-pmspion .maincontent > br {
	display: none;
}

.tsc-pmspion-warning {
	display: flex;
	align-items: flex-start;
	gap: 0.65rem;
	margin-bottom: 1rem;
	padding: 0.75rem 0.9rem;
	border-radius: 0.75rem;
	border: 1px solid rgb(250 204 21 / 0.35);
	background: rgb(250 204 21 / 0.08);
	color: rgb(254 240 138);
	font-size: 0.8125rem;
}

.tsc-pmspion-warning strong {
	display: block;
	color: rgb(254 249 195);
	margin-bottom: 0.15rem;
}

.tsc-pmspion-warning span {
	color: rgb(253 224 71 / 0.9);
	font-size: 0.75rem;
}

.tsc-pmspion-hero {
	position: relative;
	margin-bottom: 1rem;
	padding: clamp(1rem, 3vw, 1.5rem);
	border-radius: 1rem;
	border: 1px solid rgb(244 63 94 / 0.28);
	background:
		radial-gradient(ellipse 80% 60% at 50% -20%, rgb(244 63 94 / 0.16), transparent 60%),
		linear-gradient(160deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.9));
	overflow: hidden;
}

.tsc-pmspion-hero-glow {
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at 80% 20%, rgb(244 63 94 / 0.1), transparent 45%);
	pointer-events: none;
}

.tsc-pmspion-hero-inner {
	position: relative;
	z-index: 1;
}

.tsc-pmspion-hero-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	margin-bottom: 0.55rem;
	padding: 0.25rem 0.55rem;
	border-radius: 999px;
	border: 1px solid rgb(244 63 94 / 0.35);
	background: rgb(244 63 94 / 0.12);
	font-size: 0.6875rem;
	font-weight: 700;
	color: rgb(254 205 211);
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.tsc-pmspion-hero-title {
	margin: 0 0 0.35rem;
	font-size: clamp(1.25rem, 3.5vw, 1.65rem);
	font-weight: 800;
	color: rgb(250 250 250);
	line-height: 1.2;
}

.tsc-pmspion-hero-sub {
	margin: 0;
	max-width: 42rem;
	font-size: 0.8125rem;
	line-height: 1.55;
	color: rgb(161 161 170);
}

.tsc-pmspion-panel-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	padding: 0.2rem 0.5rem;
	border-radius: 999px;
	border: 1px solid rgb(244 63 94 / 0.35);
	background: rgb(244 63 94 / 0.12);
	font-size: 0.6875rem;
	font-weight: 700;
	color: rgb(254 205 211);
}

.tsc-pmspion-search {
	display: flex;
	flex-direction: column;
	gap: 0.45rem;
}

.tsc-pmspion-search-label {
	font-size: 0.6875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: rgb(161 161 170);
}

.tsc-pmspion-search-row {
	display: flex;
	align-items: stretch;
	gap: 0.45rem;
}

.tsc-pmspion-search-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0 0.65rem;
	border-radius: 0.55rem 0 0 0.55rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	border-right: none;
	background: rgb(24 24 27 / 0.85);
	color: rgb(161 161 170);
}

.tsc-pmspion-search-row input[type="search"] {
	flex: 1 1 12rem;
	min-width: 0;
	padding: 0.55rem 0.75rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	border-left: none;
	border-right: none;
	background: rgb(9 9 11 / 0.75);
	color: rgb(244 244 245);
	font-size: 0.875rem;
}

.tsc-pmspion-search-row input[type="search"]:focus {
	outline: none;
	border-color: rgb(244 63 94 / 0.45);
	box-shadow: 0 0 0 2px rgb(244 63 94 / 0.15);
}

.tsc-pmspion-search-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.55rem 0.85rem;
	border-radius: 0 0.55rem 0.55rem 0;
	border: 1px solid rgb(244 63 94 / 0.45);
	background: linear-gradient(180deg, rgb(244 63 94 / 0.35), rgb(244 63 94 / 0.2));
	font-size: 0.75rem;
	font-weight: 700;
	color: rgb(255 228 230);
	cursor: pointer;
}

.tsc-pmspion-search-btn:hover {
	border-color: rgb(244 63 94 / 0.65);
}

.tsc-pmspion-table-wrap {
	overflow-x: auto;
	border-radius: 0.65rem;
	border: 1px solid rgb(39 39 42 / 0.55);
}

.tsc-pmspion-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.8125rem;
}

.tsc-pmspion-table thead th {
	padding: 0.55rem 0.75rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(24 24 27 / 0.9);
	font-size: 0.6875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: rgb(161 161 170);
	text-align: left;
}

.tsc-pmspion-table thead th.tsc-pmspion-col-count {
	text-align: center;
}

.tsc-pmspion-user-row td {
	padding: 0.65rem 0.75rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.35);
	vertical-align: middle;
}

.tsc-pmspion-user-row:last-child td {
	border-bottom: none;
}

.tsc-pmspion-user-link {
	text-decoration: none;
}

.tsc-pmspion-user-link:hover {
	text-decoration: underline;
}

.tsc-pmspion-deleted {
	color: rgb(161 161 170);
	font-style: italic;
}

.tsc-pmspion-count-cell {
	text-align: center;
}

.tsc-pmspion-count-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.35rem;
	min-width: 4.5rem;
	padding: 0.35rem 0.65rem;
	border-radius: 999px;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(24 24 27 / 0.85);
	font-size: 0.75rem;
	font-weight: 700;
	color: rgb(212 212 216);
	text-decoration: none;
	transition: border-color 0.15s, background 0.15s;
}

.tsc-pmspion-count-link--in {
	border-color: rgb(59 130 246 / 0.35);
}

.tsc-pmspion-count-link--in:hover {
	background: rgb(59 130 246 / 0.15);
}

.tsc-pmspion-count-link--out {
	border-color: rgb(251 146 60 / 0.35);
}

.tsc-pmspion-count-link--out:hover {
	background: rgb(251 146 60 / 0.15);
}

.tsc-pmspion-empty {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.45rem;
	padding: 2.5rem 1rem;
	color: rgb(161 161 170);
	text-align: center;
}

.tsc-pmspion-empty p {
	margin: 0;
	font-size: 0.875rem;
}

.tsc-pmspion-view-toolbar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.65rem;
	margin-bottom: 0.85rem;
}

.tsc-pmspion-back {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.4rem 0.65rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(24 24 27 / 0.85);
	font-size: 0.75rem;
	font-weight: 600;
	color: rgb(212 212 216);
	text-decoration: none;
}

.tsc-pmspion-back:hover {
	border-color: rgb(244 63 94 / 0.45);
	color: rgb(254 205 211);
}

.tsc-pmspion-mode-switch {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem;
}

.tsc-pmspion-mode-link {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	padding: 0.4rem 0.65rem;
	border-radius: 999px;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(24 24 27 / 0.85);
	font-size: 0.6875rem;
	font-weight: 600;
	color: rgb(161 161 170);
	text-decoration: none;
}

.tsc-pmspion-mode-link.is-active {
	border-color: rgb(244 63 94 / 0.55);
	background: rgb(244 63 94 / 0.16);
	color: rgb(254 205 211);
}

.tsc-pmspion-user-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
	margin-bottom: 0.85rem;
}

.tsc-pmspion-meta-chip,
.tsc-pmspion-meta-link {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.35rem 0.65rem;
	border-radius: 999px;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(24 24 27 / 0.75);
	font-size: 0.75rem;
	color: rgb(212 212 216);
	text-decoration: none;
}

.tsc-pmspion-meta-link:hover {
	border-color: rgb(244 63 94 / 0.45);
	color: rgb(254 205 211);
}

.tsc-pmspion-pager {
	margin: 0.75rem 0;
	text-align: center;
	font-size: 0.8125rem;
}

.tsc-pmspion-pager p {
	margin: 0;
}

.tsc-pmspion-messages {
	display: flex;
	flex-direction: column;
	gap: 0.85rem;
}

.tsc-pmspion-message {
	border-radius: 0.75rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: linear-gradient(180deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.9));
	overflow: hidden;
	box-shadow: 0 12px 32px rgb(0 0 0 / 0.25);
}

.tsc-pmspion-message-head {
	padding: 0.85rem 1rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.55);
	background: linear-gradient(180deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.85));
}

.tsc-pmspion-message-subject {
	margin: 0 0 0.65rem;
	font-size: 1rem;
	font-weight: 700;
	color: rgb(244 244 245);
	line-height: 1.35;
}

.tsc-pmspion-message-subject em {
	color: rgb(161 161 170);
	font-style: italic;
	font-weight: 500;
}

.tsc-pmspion-message-meta {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0.55rem;
}

.tsc-pmspion-meta-row {
	display: flex;
	flex-direction: column;
	gap: 0.2rem;
	padding: 0.5rem 0.6rem;
	border-radius: 0.5rem;
	border: 1px solid rgb(39 39 42 / 0.55);
	background: rgb(9 9 11 / 0.45);
	min-width: 0;
}

.tsc-pmspion-meta-label {
	font-size: 0.5625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(113 113 122);
}

.tsc-pmspion-meta-value {
	font-size: 0.75rem;
	color: rgb(212 212 216);
	word-break: break-word;
}

.tsc-pmspion-meta-value a {
	color: rgb(251 146 60);
	text-decoration: none;
}

.tsc-pmspion-meta-value a:hover {
	text-decoration: underline;
}

.tsc-pmspion-meta-value small {
	display: block;
	margin-top: 0.15rem;
	color: rgb(113 113 122);
	font-size: 0.6875rem;
}

.tsc-pmspion-system {
	font-weight: 700;
	color: rgb(96 165 250);
}

.tsc-pmspion-message-body {
	padding: 1rem;
	font-size: 0.8125rem;
	line-height: 1.6;
	color: rgb(212 212 216);
	overflow-wrap: anywhere;
}

.tsc-pmspion-message-body pre,
.tsc-pmspion-message-body code {
	max-width: 100%;
	overflow-x: auto;
}

@media (max-width: 900px) {
	.tsc-pmspion-message-meta {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 767px) {
	.tsc-pmspion-search-row {
		flex-wrap: wrap;
	}

	.tsc-pmspion-search-icon {
		display: none;
	}

	.tsc-pmspion-search-row input[type="search"] {
		flex: 1 1 100%;
		border: 1px solid rgb(39 39 42 / 0.65);
		border-radius: 0.55rem;
	}

	.tsc-pmspion-search-btn {
		flex: 1 1 100%;
		justify-content: center;
		border-radius: 0.55rem;
	}

	.tsc-pmspion-table thead {
		display: none;
	}

	.tsc-pmspion-table,
	.tsc-pmspion-table tbody,
	.tsc-pmspion-table tr,
	.tsc-pmspion-table td {
		display: block;
		width: 100%;
	}

	.tsc-pmspion-user-row {
		padding: 0.75rem;
		border-bottom: 1px solid rgb(39 39 42 / 0.45);
	}

	.tsc-pmspion-user-row td {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 0.75rem;
		padding: 0.35rem 0;
		border-bottom: none;
	}

	.tsc-pmspion-user-row td::before {
		content: attr(data-label);
		flex: 0 0 6.5rem;
		font-size: 0.6875rem;
		font-weight: 700;
		text-transform: uppercase;
		color: rgb(113 113 122);
	}

	.tsc-pmspion-count-cell {
		text-align: right;
	}

	.tsc-pmspion-view-toolbar {
		flex-direction: column;
		align-items: stretch;
	}

	.tsc-pmspion-mode-switch {
		width: 100%;
	}

	.tsc-pmspion-mode-link {
		flex: 1;
		justify-content: center;
	}
}

/* ═══════════════════════════════════════════════════════════
   Premium Spenden-Übersicht — donations_stats.php (index schema)
   ═══════════════════════════════════════════════════════════ */

.tsc-donations-stats-page {
	--tsc-donations-stats-accent: rgb(52 211 153);
	--tsc-donations-stats-accent-soft: rgb(52 211 153 / 0.14);
	--tsc-donations-stats-border: rgb(39 39 42 / 0.72);
	min-width: 0;
	padding-bottom: 1.5rem;
}

.tsc-index-block--donations-stats {
	border-color: rgb(52 211 153 / 0.28);
	box-shadow:
		0 0 0 1px rgb(52 211 153 / 0.06) inset,
		0 12px 40px rgb(0 0 0 / 0.35);
}

.tsc-index-section-body--donations-stats {
	padding: clamp(0.75rem, 2vw, 1.1rem);
	min-width: 0;
}

.tsc-page-donations-stats .maincontent > br {
	display: none;
}

.tsc-donations-stats-hero {
	position: relative;
	margin-bottom: 1rem;
	padding: clamp(1rem, 3vw, 1.5rem);
	border-radius: 1rem;
	border: 1px solid rgb(52 211 153 / 0.28);
	background:
		radial-gradient(ellipse 80% 60% at 50% -20%, rgb(52 211 153 / 0.16), transparent 60%),
		linear-gradient(160deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.9));
	overflow: hidden;
}

.tsc-donations-stats-hero-glow {
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at 80% 20%, rgb(52 211 153 / 0.1), transparent 45%);
	pointer-events: none;
}

.tsc-donations-stats-hero-inner {
	position: relative;
	z-index: 1;
}

.tsc-donations-stats-hero-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	margin-bottom: 0.55rem;
	padding: 0.25rem 0.55rem;
	border-radius: 999px;
	border: 1px solid rgb(52 211 153 / 0.35);
	background: rgb(52 211 153 / 0.12);
	font-size: 0.6875rem;
	font-weight: 700;
	color: rgb(167 243 208);
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.tsc-donations-stats-hero-title {
	margin: 0 0 0.35rem;
	font-size: clamp(1.25rem, 3.5vw, 1.65rem);
	font-weight: 800;
	color: rgb(250 250 250);
	line-height: 1.2;
}

.tsc-donations-stats-hero-sub {
	margin: 0 0 0.75rem;
	max-width: 42rem;
	font-size: 0.8125rem;
	line-height: 1.55;
	color: rgb(161 161 170);
}

.tsc-donations-stats-hero-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
}

.tsc-donations-stats-chip {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.3rem 0.55rem;
	border-radius: 999px;
	border: 1px solid var(--tsc-donations-stats-border);
	background: rgb(24 24 27 / 0.55);
	font-size: 0.6875rem;
	color: rgb(212 212 216);
}

.tsc-donations-stats-chip .tsc-icon {
	color: rgb(52 211 153 / 0.9);
}

.tsc-donations-stats-chip strong {
	color: rgb(244 244 245);
}

.tsc-donations-stats-chip--total {
	border-color: rgb(52 211 153 / 0.35);
	background: rgb(52 211 153 / 0.1);
}

.tsc-donations-stats-toolbar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.65rem;
	margin-bottom: 1rem;
}

.tsc-donations-stats-toolbar-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
}

.tsc-donations-stats-back,
.tsc-donations-stats-sort,
.tsc-donations-stats-add {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.45rem 0.75rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(24 24 27 / 0.85);
	font-size: 0.75rem;
	font-weight: 600;
	color: rgb(212 212 216);
	text-decoration: none;
	transition: border-color 0.15s, background 0.15s;
}

.tsc-donations-stats-back:hover,
.tsc-donations-stats-sort:hover {
	border-color: rgb(52 211 153 / 0.45);
	background: rgb(52 211 153 / 0.08);
	color: rgb(209 250 229);
}

.tsc-donations-stats-add {
	border-color: rgb(52 211 153 / 0.45);
	background: linear-gradient(180deg, rgb(52 211 153 / 0.28), rgb(52 211 153 / 0.14));
	color: rgb(209 250 229);
}

.tsc-donations-stats-add:hover {
	border-color: rgb(52 211 153 / 0.65);
	background: linear-gradient(180deg, rgb(52 211 153 / 0.38), rgb(52 211 153 / 0.2));
}

.tsc-donations-stats-panel-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	padding: 0.2rem 0.5rem;
	border-radius: 999px;
	border: 1px solid rgb(52 211 153 / 0.35);
	background: rgb(52 211 153 / 0.12);
	font-size: 0.6875rem;
	font-weight: 700;
	color: rgb(167 243 208);
}

.tsc-donations-stats-table-wrap {
	overflow-x: auto;
	border-radius: 0.65rem;
	border: 1px solid rgb(39 39 42 / 0.55);
}

.tsc-donations-stats-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.8125rem;
}

.tsc-donations-stats-table thead th {
	padding: 0.55rem 0.75rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(24 24 27 / 0.9);
	font-size: 0.6875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: rgb(161 161 170);
	text-align: left;
}

.tsc-donations-stats-table thead th.tsc-donations-stats-col-amount {
	text-align: right;
}

.tsc-donations-stats-row td {
	padding: 0.65rem 0.75rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.35);
	vertical-align: middle;
}

.tsc-donations-stats-row:last-child td {
	border-bottom: none;
}

.tsc-donations-stats-amount-cell {
	text-align: right;
	white-space: nowrap;
}

.tsc-donations-stats-tid,
.tsc-donations-stats-euro,
.tsc-donations-stats-keyword,
.tsc-donations-stats-date,
.tsc-donations-stats-user-link {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	min-width: 0;
}

.tsc-donations-stats-tid code {
	padding: 0.15rem 0.35rem;
	border-radius: 0.35rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.65);
	font-family: ui-monospace, monospace;
	font-size: 0.75rem;
	color: rgb(212 212 216);
	word-break: break-all;
}

.tsc-donations-stats-user-link {
	text-decoration: none;
	align-items: flex-start;
}

.tsc-donations-stats-user-link span {
	display: flex;
	flex-direction: column;
	gap: 0.1rem;
	min-width: 0;
}

.tsc-donations-stats-user-link small {
	font-size: 0.6875rem;
	font-weight: 500;
	color: rgb(113 113 122);
}

.tsc-donations-stats-user-link:hover {
	text-decoration: underline;
}

.tsc-donations-stats-euro strong {
	color: rgb(167 243 208);
	font-weight: 700;
}

.tsc-donations-stats-keyword {
	color: rgb(212 212 216);
}

.tsc-donations-stats-date {
	color: rgb(161 161 170);
	font-size: 0.75rem;
}

.tsc-donations-stats-muted {
	color: rgb(113 113 122);
	font-style: italic;
}

.tsc-donations-stats-empty {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0.65rem;
	padding: 2rem 1rem;
	text-align: center;
	color: rgb(161 161 170);
}

.tsc-donations-stats-empty .tsc-icon {
	color: rgb(52 211 153 / 0.55);
}

.tsc-donations-stats-empty p {
	margin: 0;
	font-size: 0.875rem;
}

.tsc-donations-stats-empty-link {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.45rem 0.85rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(52 211 153 / 0.45);
	background: rgb(52 211 153 / 0.12);
	font-size: 0.75rem;
	font-weight: 700;
	color: rgb(209 250 229);
	text-decoration: none;
}

.tsc-donations-stats-empty-link:hover {
	background: rgb(52 211 153 / 0.2);
}

@media (max-width: 767px) {
	.tsc-donations-stats-toolbar {
		flex-direction: column;
		align-items: stretch;
	}

	.tsc-donations-stats-toolbar-actions {
		flex-direction: column;
	}

	.tsc-donations-stats-back,
	.tsc-donations-stats-sort,
	.tsc-donations-stats-add {
		justify-content: center;
	}

	.tsc-donations-stats-table thead {
		display: none;
	}

	.tsc-donations-stats-table,
	.tsc-donations-stats-table tbody,
	.tsc-donations-stats-table tr,
	.tsc-donations-stats-table td {
		display: block;
		width: 100%;
	}

	.tsc-donations-stats-row {
		padding: 0.75rem;
		border-bottom: 1px solid rgb(39 39 42 / 0.45);
	}

	.tsc-donations-stats-row td {
		display: flex;
		align-items: flex-start;
		justify-content: space-between;
		gap: 0.75rem;
		padding: 0.35rem 0;
		border-bottom: none;
	}

	.tsc-donations-stats-row td::before {
		content: attr(data-label);
		flex: 0 0 6.75rem;
		font-size: 0.6875rem;
		font-weight: 700;
		text-transform: uppercase;
		color: rgb(113 113 122);
	}

	.tsc-donations-stats-amount-cell {
		text-align: right;
	}

	.tsc-donations-stats-tid-cell {
		flex-direction: column;
		align-items: stretch;
	}

	.tsc-donations-stats-tid-cell::before {
		margin-bottom: 0.15rem;
	}
}

/* ═══════════════════════════════════════════════════════════
   Premium Spender erfassen — donations_paypal.php (index schema)
   ═══════════════════════════════════════════════════════════ */

.tsc-donations-paypal-page {
	--tsc-donations-paypal-accent: rgb(52 211 153);
	--tsc-donations-paypal-accent-soft: rgb(52 211 153 / 0.14);
	--tsc-donations-paypal-border: rgb(39 39 42 / 0.72);
	min-width: 0;
	padding-bottom: 1.5rem;
}

.tsc-index-block--donations-paypal {
	border-color: rgb(52 211 153 / 0.28);
	box-shadow:
		0 0 0 1px rgb(52 211 153 / 0.06) inset,
		0 12px 40px rgb(0 0 0 / 0.35);
}

.tsc-index-section-body--donations-paypal {
	padding: clamp(0.85rem, 2vw, 1.15rem);
	min-width: 0;
}

.tsc-page-donations-paypal .maincontent > br {
	display: none;
}

.tsc-donations-paypal-hero {
	position: relative;
	margin-bottom: 1rem;
	padding: clamp(1rem, 3vw, 1.5rem);
	border-radius: 1rem;
	border: 1px solid rgb(52 211 153 / 0.28);
	background:
		radial-gradient(ellipse 80% 60% at 50% -20%, rgb(52 211 153 / 0.16), transparent 60%),
		linear-gradient(160deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.9));
	overflow: hidden;
}

.tsc-donations-paypal-hero-glow {
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at 80% 20%, rgb(52 211 153 / 0.1), transparent 45%);
	pointer-events: none;
}

.tsc-donations-paypal-hero-inner {
	position: relative;
	z-index: 1;
}

.tsc-donations-paypal-hero-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	margin-bottom: 0.55rem;
	padding: 0.25rem 0.55rem;
	border-radius: 999px;
	border: 1px solid rgb(52 211 153 / 0.35);
	background: rgb(52 211 153 / 0.12);
	font-size: 0.6875rem;
	font-weight: 700;
	color: rgb(167 243 208);
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.tsc-donations-paypal-hero-title {
	margin: 0 0 0.35rem;
	font-size: clamp(1.25rem, 3.5vw, 1.65rem);
	font-weight: 800;
	color: rgb(250 250 250);
	line-height: 1.2;
}

.tsc-donations-paypal-hero-sub {
	margin: 0;
	max-width: 42rem;
	font-size: 0.8125rem;
	line-height: 1.55;
	color: rgb(161 161 170);
}

.tsc-donations-paypal-toolbar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.65rem;
	margin-bottom: 1rem;
}

.tsc-donations-paypal-toolbar-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
}

.tsc-donations-paypal-back,
.tsc-donations-paypal-link {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.45rem 0.75rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(24 24 27 / 0.85);
	font-size: 0.75rem;
	font-weight: 600;
	color: rgb(212 212 216);
	text-decoration: none;
	transition: border-color 0.15s, background 0.15s;
}

.tsc-donations-paypal-back:hover,
.tsc-donations-paypal-link:hover {
	border-color: rgb(52 211 153 / 0.45);
	background: rgb(52 211 153 / 0.08);
	color: rgb(209 250 229);
}

.tsc-donations-paypal-live-pill {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.2rem 0.5rem;
	border-radius: 999px;
	border: 1px solid rgb(52 211 153 / 0.35);
	background: rgb(52 211 153 / 0.12);
	font-size: 0.6875rem;
	font-weight: 700;
	color: rgb(167 243 208);
}

.tsc-donations-paypal-live-dot {
	width: 0.45rem;
	height: 0.45rem;
	border-radius: 999px;
	background: rgb(52 211 153);
	box-shadow: 0 0 0 0 rgb(52 211 153 / 0.45);
	animation: tsc-donations-paypal-pulse 1.8s ease-out infinite;
}

@keyframes tsc-donations-paypal-pulse {
	0% { box-shadow: 0 0 0 0 rgb(52 211 153 / 0.45); }
	70% { box-shadow: 0 0 0 0.45rem rgb(52 211 153 / 0); }
	100% { box-shadow: 0 0 0 0 rgb(52 211 153 / 0); }
}

.tsc-donations-paypal-notice {
	display: flex;
	align-items: flex-start;
	gap: 0.65rem;
	margin-bottom: 1rem;
	padding: 0.75rem 0.9rem;
	border-radius: 0.75rem;
	font-size: 0.8125rem;
}

.tsc-donations-paypal-notice ul {
	margin: 0.35rem 0 0;
	padding-left: 1.1rem;
}

.tsc-donations-paypal-notice li {
	margin: 0.15rem 0;
}

.tsc-donations-paypal-notice strong {
	display: block;
	margin-bottom: 0.15rem;
}

.tsc-donations-paypal-notice span {
	font-size: 0.75rem;
}

.tsc-donations-paypal-notice code {
	padding: 0.1rem 0.3rem;
	border-radius: 0.3rem;
	background: rgb(9 9 11 / 0.45);
	font-family: ui-monospace, monospace;
	font-size: 0.6875rem;
}

.tsc-donations-paypal-notice--error {
	border: 1px solid rgb(239 68 68 / 0.35);
	background: rgb(239 68 68 / 0.1);
	color: rgb(254 202 202);
}

.tsc-donations-paypal-notice--error strong {
	color: rgb(254 226 226);
}

.tsc-donations-paypal-notice--success {
	border: 1px solid rgb(52 211 153 / 0.35);
	background: rgb(52 211 153 / 0.1);
	color: rgb(167 243 208);
}

.tsc-donations-paypal-notice--success strong {
	color: rgb(209 250 229);
}

.tsc-donations-paypal-notice--success a {
	color: rgb(209 250 229);
}

.tsc-donations-paypal-form {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	min-width: 0;
}

.tsc-donations-paypal-fields {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 16rem), 1fr));
	gap: 0.85rem;
}

.tsc-donations-paypal-field {
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
	min-width: 0;
}

.tsc-donations-paypal-field--user {
	grid-column: 1 / -1;
}

.tsc-donations-paypal-label {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	font-size: 0.75rem;
	font-weight: 700;
	color: rgb(212 212 216);
}

.tsc-donations-paypal-label .tsc-icon {
	color: rgb(52 211 153 / 0.9);
}

.tsc-donations-paypal-input,
.tsc-donations-paypal-user-input {
	width: 100%;
	min-width: 0;
	padding: 0.65rem 0.75rem;
	border-radius: 0.65rem;
	border: 1px solid var(--tsc-donations-paypal-border);
	background: rgb(9 9 11 / 0.85);
	color: rgb(244 244 245);
	font-size: 0.875rem;
}

.tsc-donations-paypal-input--mono {
	font-family: ui-monospace, monospace;
	font-size: 0.8125rem;
}

.tsc-donations-paypal-input:focus,
.tsc-donations-paypal-user-input:focus {
	outline: none;
	border-color: rgb(52 211 153 / 0.55);
	box-shadow: 0 0 0 2px rgb(52 211 153 / 0.15);
}

.tsc-donations-paypal-input-wrap {
	position: relative;
}

.tsc-donations-paypal-input-suffix {
	position: absolute;
	top: 50%;
	right: 0.75rem;
	transform: translateY(-50%);
	font-size: 0.8125rem;
	font-weight: 700;
	color: rgb(161 161 170);
	pointer-events: none;
}

.tsc-donations-paypal-input-wrap .tsc-donations-paypal-input {
	padding-right: 2rem;
}

.tsc-donations-paypal-user-picker {
	position: relative;
}

.tsc-donations-paypal-user-input-wrap {
	display: flex;
	align-items: stretch;
}

.tsc-donations-paypal-user-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0 0.65rem;
	border: 1px solid var(--tsc-donations-paypal-border);
	border-right: none;
	border-radius: 0.65rem 0 0 0.65rem;
	background: rgb(24 24 27 / 0.85);
	color: rgb(161 161 170);
}

.tsc-donations-paypal-user-input {
	border-radius: 0 0.65rem 0.65rem 0;
	border-left: none;
}

.tsc-donations-paypal-user-picker--loading .tsc-donations-paypal-user-input {
	background-image: linear-gradient(90deg, transparent, rgb(52 211 153 / 0.08), transparent);
	background-size: 200% 100%;
	animation: tsc-donations-paypal-shimmer 1.1s linear infinite;
}

@keyframes tsc-donations-paypal-shimmer {
	0% { background-position: 100% 0; }
	100% { background-position: -100% 0; }
}

.tsc-donations-paypal-user-results {
	position: absolute;
	z-index: 20;
	top: calc(100% + 0.35rem);
	left: 0;
	right: 0;
	max-height: 16rem;
	overflow: auto;
	border-radius: 0.65rem;
	border: 1px solid rgb(52 211 153 / 0.28);
	background: rgb(18 18 20 / 0.98);
	box-shadow: 0 16px 40px rgb(0 0 0 / 0.45);
}

.tsc-donations-paypal-user-option {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	width: 100%;
	padding: 0.65rem 0.75rem;
	border: none;
	border-bottom: 1px solid rgb(39 39 42 / 0.45);
	background: transparent;
	color: rgb(244 244 245);
	font-size: 0.8125rem;
	text-align: left;
	cursor: pointer;
}

.tsc-donations-paypal-user-option:last-child {
	border-bottom: none;
}

.tsc-donations-paypal-user-option:hover,
.tsc-donations-paypal-user-option.is-active {
	background: rgb(52 211 153 / 0.12);
}

.tsc-donations-paypal-user-option-meta {
	font-size: 0.6875rem;
	color: rgb(161 161 170);
	white-space: nowrap;
}

.tsc-donations-paypal-user-empty {
	padding: 0.75rem;
	font-size: 0.75rem;
	color: rgb(161 161 170);
}

.tsc-donations-paypal-selected-chip {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.65rem;
	margin-top: 0.55rem;
	padding: 0.65rem 0.75rem;
	border-radius: 0.65rem;
	border: 1px solid rgb(52 211 153 / 0.35);
	background: rgb(52 211 153 / 0.08);
}

.tsc-donations-paypal-selected-main {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	min-width: 0;
}

.tsc-donations-paypal-selected-main span {
	display: flex;
	flex-direction: column;
	gap: 0.1rem;
}

.tsc-donations-paypal-selected-main small {
	font-size: 0.6875rem;
	color: rgb(161 161 170);
	font-weight: 500;
}

.tsc-donations-paypal-selected-clear {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.75rem;
	height: 1.75rem;
	border-radius: 999px;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(24 24 27 / 0.85);
	color: rgb(161 161 170);
	cursor: pointer;
	flex-shrink: 0;
}

.tsc-donations-paypal-selected-clear:hover {
	border-color: rgb(239 68 68 / 0.45);
	color: rgb(254 202 202);
}

.tsc-donations-paypal-hint {
	margin: 0.35rem 0 0;
	font-size: 0.6875rem;
	color: rgb(113 113 122);
}

.tsc-donations-paypal-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.tsc-donations-paypal-submit {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	padding: 0.65rem 1rem;
	border-radius: 0.65rem;
	border: 1px solid rgb(52 211 153 / 0.45);
	background: linear-gradient(180deg, rgb(52 211 153 / 0.35), rgb(52 211 153 / 0.18));
	font-size: 0.8125rem;
	font-weight: 700;
	color: rgb(209 250 229);
	cursor: pointer;
}

.tsc-donations-paypal-submit:hover {
	border-color: rgb(52 211 153 / 0.65);
	background: linear-gradient(180deg, rgb(52 211 153 / 0.45), rgb(52 211 153 / 0.24));
}

.tsc-donations-paypal-is-hidden {
	display: none !important;
}

@media (max-width: 767px) {
	.tsc-donations-paypal-toolbar {
		flex-direction: column;
		align-items: stretch;
	}

	.tsc-donations-paypal-toolbar-actions {
		flex-direction: column;
	}

	.tsc-donations-paypal-back,
	.tsc-donations-paypal-link,
	.tsc-donations-paypal-submit {
		justify-content: center;
		width: 100%;
	}

	.tsc-donations-paypal-user-option {
		flex-direction: column;
		align-items: flex-start;
		gap: 0.2rem;
	}
}

/* ═══════════════════════════════════════════════════════════
   Premium CP Agents — cp_agents.php (index schema)
   ═══════════════════════════════════════════════════════════ */

.tsc-cp-agents-page {
	--tsc-cp-agents-accent: rgb(99 102 241);
	--tsc-cp-agents-accent-soft: rgb(99 102 241 / 0.14);
	--tsc-cp-agents-active: rgb(34 197 94);
	--tsc-cp-agents-inactive: rgb(239 68 68);
	--tsc-cp-agents-border: rgb(39 39 42 / 0.72);
	min-width: 0;
	padding-bottom: 1.5rem;
}

.tsc-index-block--cp-agents {
	border-color: rgb(99 102 241 / 0.28);
	box-shadow:
		0 0 0 1px rgb(99 102 241 / 0.06) inset,
		0 12px 40px rgb(0 0 0 / 0.35);
}

.tsc-index-section-body--cp-agents {
	padding: clamp(0.65rem, 2vw, 0.9rem);
	min-width: 0;
}

.tsc-page-cp-agents .maincontent > br {
	display: none;
}

.tsc-cp-agents-notice {
	display: flex;
	align-items: center;
	gap: 0.45rem;
	margin-bottom: 0.85rem;
}

.tsc-cp-agents-hero {
	position: relative;
	margin-bottom: 1rem;
	padding: clamp(1rem, 3vw, 1.5rem);
	border-radius: 1rem;
	border: 1px solid rgb(99 102 241 / 0.28);
	background:
		radial-gradient(ellipse 80% 60% at 50% -20%, rgb(99 102 241 / 0.16), transparent 60%),
		linear-gradient(160deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.9));
	overflow: hidden;
}

.tsc-cp-agents-hero-glow {
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at 80% 20%, rgb(99 102 241 / 0.1), transparent 45%);
	pointer-events: none;
}

.tsc-cp-agents-hero-inner {
	position: relative;
	z-index: 1;
}

.tsc-cp-agents-hero-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	margin-bottom: 0.55rem;
	padding: 0.25rem 0.55rem;
	border-radius: 999px;
	border: 1px solid rgb(99 102 241 / 0.35);
	background: rgb(99 102 241 / 0.12);
	font-size: 0.6875rem;
	font-weight: 700;
	color: rgb(199 210 254);
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.tsc-cp-agents-hero-title {
	margin: 0 0 0.35rem;
	font-size: clamp(1.25rem, 3.5vw, 1.65rem);
	font-weight: 800;
	color: rgb(250 250 250);
	line-height: 1.2;
}

.tsc-cp-agents-hero-sub {
	margin: 0 0 0.85rem;
	max-width: 42rem;
	font-size: 0.8125rem;
	line-height: 1.55;
	color: rgb(161 161 170);
}

.tsc-cp-agents-hero-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
}

.tsc-cp-agents-chip {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.35rem 0.65rem;
	border-radius: 999px;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(24 24 27 / 0.75);
	font-size: 0.75rem;
	color: rgb(212 212 216);
}

.tsc-cp-agents-chip strong {
	color: rgb(244 244 245);
}

.tsc-cp-agents-chip--active {
	border-color: rgb(34 197 94 / 0.35);
	background: rgb(34 197 94 / 0.1);
}

.tsc-cp-agents-chip--active .tsc-icon {
	color: rgb(74 222 128);
}

.tsc-cp-agents-chip--inactive {
	border-color: rgb(239 68 68 / 0.35);
	background: rgb(239 68 68 / 0.1);
}

.tsc-cp-agents-chip--inactive .tsc-icon {
	color: rgb(248 113 113);
}

.tsc-cp-agents-panel-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	padding: 0.2rem 0.5rem;
	border-radius: 999px;
	border: 1px solid rgb(99 102 241 / 0.35);
	background: rgb(99 102 241 / 0.12);
	font-size: 0.6875rem;
	font-weight: 700;
	color: rgb(199 210 254);
}

.tsc-cp-agents-toolbar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.65rem;
	margin-bottom: 0.75rem;
	padding-bottom: 0.75rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.55);
}

.tsc-cp-agents-sort {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem;
}

.tsc-cp-agents-sort-link {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	padding: 0.35rem 0.6rem;
	border-radius: 999px;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(24 24 27 / 0.85);
	font-size: 0.6875rem;
	font-weight: 600;
	color: rgb(161 161 170);
	text-decoration: none;
	transition: border-color 0.15s, background 0.15s, color 0.15s;
}

.tsc-cp-agents-sort-link:hover {
	border-color: rgb(99 102 241 / 0.45);
	color: rgb(228 228 231);
}

.tsc-cp-agents-sort-link.is-active {
	border-color: rgb(99 102 241 / 0.55);
	background: rgb(99 102 241 / 0.16);
	color: rgb(199 210 254);
}

.tsc-cp-agents-save {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.35rem;
	padding: 0.45rem 0.85rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(99 102 241 / 0.45);
	background: linear-gradient(180deg, rgb(99 102 241 / 0.35), rgb(99 102 241 / 0.2));
	font-size: 0.75rem;
	font-weight: 700;
	color: rgb(224 231 255);
	cursor: pointer;
	transition: border-color 0.15s, background 0.15s, transform 0.1s;
}

.tsc-cp-agents-save:hover {
	border-color: rgb(99 102 241 / 0.65);
	background: linear-gradient(180deg, rgb(99 102 241 / 0.45), rgb(99 102 241 / 0.28));
}

.tsc-cp-agents-save:active {
	transform: scale(0.98);
}

.tsc-cp-agents-save--top {
	flex-shrink: 0;
}

.tsc-cp-agents-table-wrap {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	border-radius: 0.65rem;
	border: 1px solid rgb(39 39 42 / 0.55);
}

.tsc-cp-agents-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.8125rem;
}

.tsc-cp-agents-table thead th {
	padding: 0.55rem 0.75rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(24 24 27 / 0.9);
	font-size: 0.6875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: rgb(161 161 170);
	text-align: left;
	white-space: nowrap;
}

.tsc-cp-agents-table thead th.tsc-cp-agents-col-hits,
.tsc-cp-agents-table thead th.tsc-cp-agents-col-date {
	text-align: center;
}

.tsc-cp-agents-row td {
	padding: 0.65rem 0.75rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.35);
	vertical-align: middle;
}

.tsc-cp-agents-row:last-child td {
	border-bottom: none;
}

.tsc-cp-agents-row.is-active {
	background: linear-gradient(90deg, rgb(34 197 94 / 0.06), transparent);
}

.tsc-cp-agents-row.is-inactive {
	background: linear-gradient(90deg, rgb(239 68 68 / 0.08), transparent);
}

.tsc-cp-agents-name {
	min-width: 12rem;
}

.tsc-cp-agents-name-text {
	display: block;
	font-weight: 600;
	color: rgb(244 244 245);
	word-break: break-word;
}

.tsc-cp-agents-status-pill {
	display: none;
}

.tsc-cp-agents-hits {
	text-align: center;
	color: rgb(212 212 216);
	white-space: nowrap;
}

.tsc-cp-agents-hits strong {
	color: rgb(244 244 245);
}

.tsc-cp-agents-date {
	text-align: center;
	color: rgb(161 161 170);
	white-space: nowrap;
	font-variant-numeric: tabular-nums;
}

.tsc-cp-agents-toggle {
	display: inline-flex;
	flex-wrap: wrap;
	gap: 0.25rem;
	padding: 0.2rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.65);
}

.tsc-cp-agents-toggle-opt {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	padding: 0.35rem 0.55rem;
	border-radius: 0.4rem;
	font-size: 0.6875rem;
	font-weight: 600;
	color: rgb(161 161 170);
	cursor: pointer;
	transition: background 0.15s, color 0.15s;
}

.tsc-cp-agents-toggle-opt input {
	position: absolute;
	opacity: 0;
	width: 0;
	height: 0;
	pointer-events: none;
}

.tsc-cp-agents-toggle-opt:has(input[value="0"]:checked) {
	background: rgb(239 68 68 / 0.18);
	color: rgb(254 202 202);
}

.tsc-cp-agents-toggle-opt:has(input[value="1"]:checked) {
	background: rgb(34 197 94 / 0.18);
	color: rgb(187 247 208);
}

.tsc-cp-agents-empty {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.45rem;
	padding: 2.5rem 1rem;
	color: rgb(161 161 170);
	text-align: center;
}

.tsc-cp-agents-empty p {
	margin: 0;
	font-size: 0.875rem;
}

.tsc-cp-agents-empty-hint {
	font-size: 0.75rem !important;
	color: rgb(113 113 122);
}

.tsc-cp-agents-savebar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.65rem;
	margin-top: 0.85rem;
	padding-top: 0.85rem;
	border-top: 1px solid rgb(39 39 42 / 0.55);
}

.tsc-cp-agents-savebar-hint {
	margin: 0;
	font-size: 0.75rem;
	color: rgb(113 113 122);
}

@media (max-width: 767px) {
	.tsc-cp-agents-save--top {
		display: none;
	}

	.tsc-cp-agents-table thead {
		display: none;
	}

	.tsc-cp-agents-table,
	.tsc-cp-agents-table tbody,
	.tsc-cp-agents-table tr,
	.tsc-cp-agents-table td {
		display: block;
		width: 100%;
	}

	.tsc-cp-agents-row {
		padding: 0.75rem;
		border-bottom: 1px solid rgb(39 39 42 / 0.45);
	}

	.tsc-cp-agents-row:last-child {
		border-bottom: none;
	}

	.tsc-cp-agents-row td {
		display: flex;
		align-items: flex-start;
		justify-content: space-between;
		gap: 0.75rem;
		padding: 0.35rem 0;
		border-bottom: none;
	}

	.tsc-cp-agents-row td::before {
		content: attr(data-label);
		flex: 0 0 6.5rem;
		font-size: 0.6875rem;
		font-weight: 700;
		text-transform: uppercase;
		letter-spacing: 0.03em;
		color: rgb(113 113 122);
	}

	.tsc-cp-agents-name {
		flex-direction: column;
		align-items: flex-start;
		gap: 0.35rem;
		padding-bottom: 0.45rem;
		margin-bottom: 0.25rem;
		border-bottom: 1px solid rgb(39 39 42 / 0.35);
	}

	.tsc-cp-agents-name::before {
		display: none;
	}

	.tsc-cp-agents-status-pill {
		display: inline-flex;
		align-items: center;
		gap: 0.25rem;
		padding: 0.15rem 0.45rem;
		border-radius: 999px;
		font-size: 0.625rem;
		font-weight: 700;
	}

	.tsc-cp-agents-status-pill--active {
		border: 1px solid rgb(34 197 94 / 0.35);
		background: rgb(34 197 94 / 0.12);
		color: rgb(187 247 208);
	}

	.tsc-cp-agents-status-pill--inactive {
		border: 1px solid rgb(239 68 68 / 0.35);
		background: rgb(239 68 68 / 0.12);
		color: rgb(254 202 202);
	}

	.tsc-cp-agents-hits,
	.tsc-cp-agents-date {
		text-align: right;
	}

	.tsc-cp-agents-status {
		flex-direction: column;
		align-items: stretch;
	}

	.tsc-cp-agents-status::before {
		margin-bottom: 0.25rem;
	}

	.tsc-cp-agents-toggle {
		width: 100%;
	}

	.tsc-cp-agents-toggle-opt {
		flex: 1;
		justify-content: center;
	}

	.tsc-cp-agents-savebar {
		position: sticky;
		bottom: 0.75rem;
		z-index: 5;
		margin-top: 1rem;
		padding: 0.75rem;
		border: 1px solid rgb(99 102 241 / 0.35);
		border-radius: 0.75rem;
		background: rgb(24 24 27 / 0.96);
		box-shadow: 0 8px 24px rgb(0 0 0 / 0.45);
	}

	.tsc-cp-agents-savebar-hint {
		width: 100%;
		text-align: center;
	}

	.tsc-cp-agents-savebar .tsc-cp-agents-save {
		width: 100%;
	}
}

@media (min-width: 768px) {
	.tsc-cp-agents-savebar .tsc-cp-agents-save {
		min-width: 12rem;
	}
}

/* ═══════════════════════════════════════════════════════════
   Premium Kategorien — kategorien.php (index schema)
   ═══════════════════════════════════════════════════════════ */

.tsc-kategorien-page {
	--tsc-kategorien-accent: rgb(251 146 60);
	--tsc-kategorien-accent-soft: rgb(251 146 60 / 0.14);
	--tsc-kategorien-glow: rgb(251 146 60 / 0.22);
	--tsc-kategorien-border: rgb(39 39 42 / 0.72);
	min-width: 0;
	padding-bottom: 1.5rem;
}

.tsc-index-block--kategorien {
	border-color: rgb(251 146 60 / 0.28);
	box-shadow:
		0 0 0 1px rgb(251 146 60 / 0.06) inset,
		0 12px 40px rgb(0 0 0 / 0.35);
}

.tsc-index-section-body--kategorien {
	padding: clamp(0.75rem, 2vw, 1.15rem);
	min-width: 0;
}

.tsc-page-kategorien .maincontent > br {
	display: none;
}

.tsc-kategorien-hero {
	position: relative;
	margin-bottom: 1rem;
	padding: clamp(1rem, 3vw, 1.5rem);
	border-radius: 1rem;
	border: 1px solid rgb(251 146 60 / 0.28);
	background:
		radial-gradient(ellipse 80% 60% at 50% -20%, rgb(251 146 60 / 0.16), transparent 60%),
		linear-gradient(160deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.9));
	overflow: hidden;
}

.tsc-kategorien-hero-glow {
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at 80% 20%, rgb(251 146 60 / 0.1), transparent 45%);
	pointer-events: none;
}

.tsc-kategorien-hero-inner {
	position: relative;
}

.tsc-kategorien-hero-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.25rem 0.55rem;
	border-radius: 999px;
	border: 1px solid rgb(251 146 60 / 0.35);
	background: rgb(251 146 60 / 0.1);
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(254 215 170);
	margin-bottom: 0.5rem;
}

.tsc-kategorien-hero-title {
	margin: 0 0 0.35rem;
	font-size: clamp(1.25rem, 3vw, 1.6rem);
	font-weight: 800;
	color: rgb(244 244 245);
}

.tsc-kategorien-hero-sub {
	margin: 0 0 0.75rem;
	font-size: 0.8125rem;
	color: rgb(161 161 170);
	line-height: 1.5;
	max-width: 42rem;
}

.tsc-kategorien-hero-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.tsc-kategorien-chip {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.4rem 0.65rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.45);
	font-size: 0.75rem;
	color: rgb(212 212 216);
}

.tsc-kategorien-chip .tsc-icon {
	color: rgb(251 146 60);
}

.tsc-kategorien-section-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	padding: 0.2rem 0.5rem;
	border-radius: 999px;
	border: 1px solid rgb(251 146 60 / 0.35);
	background: rgb(251 146 60 / 0.1);
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: rgb(254 215 170);
}

.tsc-kategorien-section-badge--muted {
	border-color: rgb(63 63 70 / 0.65);
	background: rgb(39 39 42 / 0.55);
	color: rgb(161 161 170);
}

.tsc-kategorien-notices {
	display: flex;
	flex-direction: column;
	gap: 0.45rem;
	margin-bottom: 0.85rem;
}

.tsc-kategorien-notice {
	display: flex;
	align-items: flex-start;
	gap: 0.45rem;
	padding: 0.65rem 0.8rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(248 113 113 / 0.35);
	background: rgb(248 113 113 / 0.08);
	font-size: 0.75rem;
	line-height: 1.45;
	color: rgb(252 165 165);
}

.tsc-kategorien-form-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.85rem 1rem;
}

.tsc-kategorien-field {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
	min-width: 0;
}

.tsc-kategorien-field--wide {
	grid-column: 1 / -1;
}

.tsc-kategorien-label,
.tsc-kategorien-row-label {
	font-size: 0.6875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: rgb(161 161 170);
}

.tsc-kategorien-input,
.tsc-kategorien-select {
	width: 100%;
	padding: 0.5rem 0.65rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(63 63 70 / 0.75);
	background: rgb(9 9 11 / 0.85);
	color: rgb(228 228 231);
	font-size: 0.8125rem;
	box-sizing: border-box;
}

.tsc-kategorien-input:focus,
.tsc-kategorien-select:focus {
	outline: none;
	border-color: rgb(251 146 60 / 0.55);
	box-shadow: 0 0 0 2px rgb(251 146 60 / 0.15);
}

.tsc-kategorien-hint {
	margin: 0;
	font-size: 0.6875rem;
	line-height: 1.45;
	color: rgb(113 113 122);
}

.tsc-kategorien-color-wrap {
	display: grid;
	grid-template-columns: auto 1fr auto;
	gap: 0.45rem;
	align-items: center;
}

.tsc-kategorien-color-picker {
	width: 2.35rem;
	height: 2.35rem;
	padding: 0;
	border: 1px solid rgb(63 63 70 / 0.75);
	border-radius: 0.45rem;
	background: transparent;
	cursor: pointer;
}

.tsc-kategorien-color-swatch,
.tsc-kategorien-row-swatch {
	display: block;
	width: 1.65rem;
	height: 1.65rem;
	border-radius: 0.4rem;
	border: 1px solid rgb(255 255 255 / 0.12);
	background: var(--kat-color, rgb(251 146 60));
	box-shadow: inset 0 0 0 1px rgb(0 0 0 / 0.15);
}

.tsc-kategorien-group-wrap {
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
}

.tsc-kategorien-form-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin-top: 0.85rem;
}

.tsc-kategorien-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.35rem;
	padding: 0.55rem 0.95rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(24 24 27 / 0.85);
	color: rgb(212 212 216);
	font-size: 0.75rem;
	font-weight: 700;
	cursor: pointer;
	text-decoration: none;
	transition: border-color 0.15s, background 0.15s, color 0.15s;
}

.tsc-kategorien-btn--primary {
	color: rgb(255 255 255);
	border-color: rgb(251 146 60 / 0.55);
	background: linear-gradient(135deg, rgb(251 146 60), rgb(234 88 12));
	box-shadow: 0 6px 18px rgb(251 146 60 / 0.22);
}

.tsc-kategorien-btn--primary:hover {
	filter: brightness(1.05);
	color: rgb(255 255 255);
}

.tsc-kategorien-groups {
	display: flex;
	flex-direction: column;
	gap: 0.65rem;
}

.tsc-kategorien-group {
	border: 1px solid var(--tsc-kategorien-border);
	border-radius: 0.75rem;
	background: rgb(9 9 11 / 0.45);
	overflow: hidden;
}

.tsc-kategorien-group-head {
	display: flex;
	align-items: center;
	gap: 0.55rem;
	padding: 0.7rem 0.85rem;
	cursor: pointer;
	list-style: none;
	background: linear-gradient(180deg, rgb(24 24 27 / 0.85), rgb(9 9 11 / 0.65));
	border-bottom: 1px solid rgb(39 39 42 / 0.55);
}

.tsc-kategorien-group-head::-webkit-details-marker {
	display: none;
}

.tsc-kategorien-group-title {
	flex: 1;
	font-size: 0.8125rem;
	font-weight: 700;
	color: rgb(244 244 245);
}

.tsc-kategorien-group-count {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 1.35rem;
	height: 1.35rem;
	padding: 0 0.35rem;
	border-radius: 999px;
	background: rgb(251 146 60 / 0.12);
	border: 1px solid rgb(251 146 60 / 0.25);
	font-size: 0.625rem;
	font-weight: 800;
	color: rgb(251 146 60);
}

.tsc-kategorien-group-chevron {
	color: rgb(113 113 122);
	transition: transform 0.15s ease;
}

.tsc-kategorien-group[open] .tsc-kategorien-group-chevron {
	transform: rotate(180deg);
}

.tsc-kategorien-group-body {
	display: flex;
	flex-direction: column;
}

.tsc-kategorien-row {
	display: grid;
	grid-template-columns: 4.5rem minmax(0, 1fr) auto;
	gap: 0.75rem;
	align-items: start;
	padding: 0.75rem 0.85rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.4);
}

.tsc-kategorien-row:last-child {
	border-bottom: none;
}

.tsc-kategorien-row--default {
	background: rgb(251 146 60 / 0.05);
}

.tsc-kategorien-row-preview {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 4.5rem;
	height: 4.5rem;
	border-radius: 0.65rem;
	border: 1px solid rgb(63 63 70 / 0.65);
	background:
		linear-gradient(145deg, rgb(24 24 27 / 0.9), rgb(9 9 11 / 0.75)),
		var(--kat-color, rgb(251 146 60));
	background-blend-mode: overlay;
	overflow: hidden;
}

.tsc-kategorien-row-icon {
	display: block;
	max-width: 2.25rem;
	max-height: 2.25rem;
	object-fit: contain;
	position: relative;
	z-index: 1;
}

.tsc-kategorien-row-icon--empty {
	color: rgb(161 161 170);
}

.tsc-kategorien-row-preview .tsc-kategorien-row-swatch {
	position: absolute;
	right: 0.25rem;
	bottom: 0.25rem;
	width: 0.85rem;
	height: 0.85rem;
	z-index: 2;
}

.tsc-kategorien-row-fields {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.55rem 0.75rem;
	min-width: 0;
}

.tsc-kategorien-row-field {
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
	min-width: 0;
}

.tsc-kategorien-row-side {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 0.45rem;
	padding-top: 1.1rem;
}

.tsc-kategorien-default-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	padding: 0.25rem 0.45rem;
	border-radius: 999px;
	border: 1px solid rgb(251 146 60 / 0.35);
	background: rgb(251 146 60 / 0.12);
	font-size: 0.625rem;
	font-weight: 700;
	color: rgb(251 146 60);
	white-space: nowrap;
}

.tsc-kategorien-delete,
.tsc-kategorien-std {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	font-size: 0.6875rem;
	font-weight: 600;
	color: rgb(161 161 170);
	cursor: pointer;
	white-space: nowrap;
}

.tsc-kategorien-delete input,
.tsc-kategorien-std input {
	accent-color: rgb(251 146 60);
	margin: 0;
}

.tsc-kategorien-delete-box {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.5rem;
	height: 1.5rem;
	border-radius: 0.375rem;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(24 24 27 / 0.75);
	color: rgb(161 161 170);
}

.tsc-kategorien-delete input:checked + .tsc-kategorien-delete-box {
	border-color: rgb(239 68 68 / 0.45);
	background: rgb(239 68 68 / 0.15);
	color: rgb(248 113 113);
}

.tsc-kategorien-edit-foot {
	margin-top: 0.85rem;
	padding-top: 0.85rem;
	border-top: 1px solid rgb(39 39 42 / 0.55);
}

.tsc-kategorien-edit-hint {
	display: flex;
	align-items: flex-start;
	gap: 0.4rem;
	margin: 0 0 0.65rem;
	font-size: 0.6875rem;
	line-height: 1.45;
	color: rgb(113 113 122);
}

.tsc-kategorien-edit-hint .tsc-icon {
	color: rgb(251 146 60);
	flex-shrink: 0;
	margin-top: 0.1rem;
}

.tsc-kategorien-empty {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.5rem;
	padding: 2rem 1rem;
	color: rgb(161 161 170);
	text-align: center;
}

@media (max-width: 900px) {
	.tsc-kategorien-form-grid,
	.tsc-kategorien-row-fields {
		grid-template-columns: 1fr;
	}

	.tsc-kategorien-row {
		grid-template-columns: 1fr;
	}

	.tsc-kategorien-row-side {
		flex-direction: row;
		flex-wrap: wrap;
		align-items: center;
		padding-top: 0;
	}
}

/* ═══════════════════════════════════════════════════════════
   Premium Cheater scan — cheater.php (index schema)
   ═══════════════════════════════════════════════════════════ */

.tsc-cheater-page {
	--tsc-cheater-accent: rgb(251 146 60);
	--tsc-cheater-accent-soft: rgb(251 146 60 / 0.14);
	--tsc-cheater-warn: rgb(234 179 8);
	--tsc-cheater-high: rgb(249 115 22);
	--tsc-cheater-critical: rgb(239 68 68);
	--tsc-cheater-border: rgb(39 39 42 / 0.72);
	min-width: 0;
	padding-bottom: 1.5rem;
}

.tsc-index-block--cheater {
	border-color: rgb(251 146 60 / 0.28);
	box-shadow:
		0 0 0 1px rgb(251 146 60 / 0.06) inset,
		0 12px 40px rgb(0 0 0 / 0.35);
}

.tsc-index-section-body--cheater {
	padding: clamp(0.75rem, 2vw, 1.15rem);
	min-width: 0;
}

.tsc-page-cheater .maincontent > br {
	display: none;
}

.tsc-cheater-hero {
	position: relative;
	margin-bottom: 1rem;
	padding: clamp(1rem, 3vw, 1.5rem);
	border-radius: 1rem;
	border: 1px solid rgb(251 146 60 / 0.28);
	background:
		radial-gradient(ellipse 80% 60% at 50% -20%, rgb(251 146 60 / 0.14), transparent 60%),
		linear-gradient(160deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.9));
	overflow: hidden;
}

.tsc-cheater-hero-glow {
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at 85% 15%, rgb(239 68 68 / 0.08), transparent 42%);
	pointer-events: none;
}

.tsc-cheater-hero-inner {
	position: relative;
}

.tsc-cheater-hero-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.25rem 0.55rem;
	border-radius: 999px;
	border: 1px solid rgb(251 146 60 / 0.35);
	background: rgb(251 146 60 / 0.1);
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(254 215 170);
	margin-bottom: 0.5rem;
}

.tsc-cheater-hero-title {
	margin: 0 0 0.35rem;
	font-size: clamp(1.25rem, 3vw, 1.6rem);
	font-weight: 800;
	color: rgb(244 244 245);
}

.tsc-cheater-hero-sub {
	margin: 0 0 0.75rem;
	font-size: 0.8125rem;
	color: rgb(161 161 170);
	line-height: 1.5;
	max-width: 44rem;
}

.tsc-cheater-hero-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.tsc-cheater-chip {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.4rem 0.65rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.45);
	font-size: 0.75rem;
	color: rgb(212 212 216);
}

.tsc-cheater-chip .tsc-icon {
	color: rgb(251 146 60);
}

.tsc-cheater-chip--critical .tsc-icon {
	color: rgb(248 113 113);
}

.tsc-cheater-chip--high .tsc-icon {
	color: rgb(251 146 60);
}

.tsc-cheater-section-badge {
	display: inline-flex;
	align-items: center;
	padding: 0.2rem 0.5rem;
	border-radius: 999px;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(39 39 42 / 0.55);
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: rgb(161 161 170);
}

.tsc-cheater-notice {
	display: flex;
	gap: 0.65rem;
	margin-bottom: 0.85rem;
	padding: 0.75rem 0.9rem;
	border-radius: 0.65rem;
	border: 1px solid rgb(234 179 8 / 0.35);
	background: rgb(234 179 8 / 0.08);
	font-size: 0.75rem;
	line-height: 1.55;
	color: rgb(212 212 216);
}

.tsc-cheater-notice .tsc-icon {
	color: rgb(234 179 8);
	flex-shrink: 0;
	margin-top: 0.1rem;
}

.tsc-cheater-notice-body p {
	margin: 0 0 0.45rem;
}

.tsc-cheater-notice-body p:last-child {
	margin-bottom: 0;
}

.tsc-cheater-notice-body code {
	font-size: 0.6875rem;
	padding: 0.08rem 0.3rem;
	border-radius: 0.25rem;
	background: rgb(9 9 11 / 0.45);
}

.tsc-cheater-toolbar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.65rem;
	margin-bottom: 0.85rem;
}

.tsc-cheater-legend {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem;
}

.tsc-cheater-legend-item {
	font-size: 0.625rem;
}

.tsc-cheater-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.45rem 0.75rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(24 24 27 / 0.85);
	color: rgb(212 212 216);
	font-size: 0.6875rem;
	font-weight: 700;
	text-decoration: none;
	cursor: pointer;
	transition: border-color 0.15s, background 0.15s, color 0.15s;
}

.tsc-cheater-btn--danger {
	border-color: rgb(239 68 68 / 0.4);
	background: rgb(239 68 68 / 0.12);
	color: rgb(252 165 165);
}

.tsc-cheater-btn--danger:hover {
	border-color: rgb(239 68 68 / 0.55);
	background: rgb(239 68 68 / 0.18);
	color: rgb(254 202 202);
}

.tsc-cheater-severity {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	padding: 0.15rem 0.45rem;
	border-radius: 999px;
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	border: 1px solid transparent;
}

.tsc-cheater-severity--warn {
	color: rgb(253 224 71);
	background: rgb(234 179 8 / 0.15);
	border-color: rgb(234 179 8 / 0.35);
}

.tsc-cheater-severity--high {
	color: rgb(253 186 116);
	background: rgb(249 115 22 / 0.15);
	border-color: rgb(249 115 22 / 0.35);
}

.tsc-cheater-severity--critical {
	color: rgb(252 165 165);
	background: rgb(239 68 68 / 0.15);
	border-color: rgb(239 68 68 / 0.35);
}

.tsc-cheater-table-shell {
	border: 1px solid var(--tsc-cheater-border);
	border-radius: 0.75rem;
	background: rgb(9 9 11 / 0.45);
	overflow: hidden;
}

.tsc-cheater-table-wrap {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.tsc-cheater-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.8125rem;
	min-width: 44rem;
}

.tsc-cheater-table thead th {
	padding: 0.65rem 0.75rem;
	font-size: 0.5625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(113 113 122);
	text-align: left;
	background: rgb(9 9 11 / 0.75);
	border-bottom: 1px solid var(--tsc-cheater-border);
	white-space: nowrap;
}

.tsc-cheater-table thead th .tsc-icon {
	color: rgb(251 146 60);
	margin-right: 0.15rem;
}

.tsc-cheater-table tbody td {
	padding: 0.7rem 0.75rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.35);
	color: rgb(212 212 216);
	vertical-align: middle;
}

.tsc-cheater-row:last-child td {
	border-bottom: none;
}

.tsc-cheater-row:hover td {
	background: rgb(24 24 27 / 0.45);
}

.tsc-cheater-row--critical td {
	background: rgb(239 68 68 / 0.04);
}

.tsc-cheater-row--high td {
	background: rgb(249 115 22 / 0.04);
}

.tsc-cheater-cell--torrent {
	min-width: 12rem;
	max-width: 24rem;
}

.tsc-cheater-torrent-link {
	display: block;
	color: rgb(228 228 231);
	font-weight: 600;
	text-decoration: none;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.tsc-cheater-torrent-link:hover {
	color: rgb(251 146 60);
}

.tsc-cheater-torrent-id {
	display: block;
	margin-top: 0.15rem;
	font-size: 0.625rem;
	color: rgb(113 113 122);
}

.tsc-cheater-cell--num {
	text-align: right;
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
}

.tsc-cheater-cell--excess {
	color: rgb(74 222 128);
	font-weight: 700;
}

.tsc-cheater-cell--ratio {
	min-width: 7rem;
}

.tsc-cheater-ratio-bar {
	display: block;
	margin-top: 0.3rem;
	height: 0.25rem;
	border-radius: 999px;
	background: rgb(39 39 42 / 0.75);
	overflow: hidden;
}

.tsc-cheater-ratio-fill {
	display: block;
	height: 100%;
	border-radius: inherit;
}

.tsc-cheater-ratio-fill--warn {
	background: rgb(234 179 8);
}

.tsc-cheater-ratio-fill--high {
	background: rgb(249 115 22);
}

.tsc-cheater-ratio-fill--critical {
	background: rgb(239 68 68);
}

.tsc-cheater-level {
	display: inline-flex;
	padding: 0.18rem 0.5rem;
	border-radius: 999px;
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.tsc-cheater-level--warn {
	color: rgb(253 224 71);
	background: rgb(234 179 8 / 0.12);
}

.tsc-cheater-level--high {
	color: rgb(253 186 116);
	background: rgb(249 115 22 / 0.12);
}

.tsc-cheater-level--critical {
	color: rgb(252 165 165);
	background: rgb(239 68 68 / 0.12);
}

.tsc-cheater-action {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	padding: 0.3rem 0.5rem;
	border-radius: 0.4rem;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(24 24 27 / 0.75);
	color: rgb(161 161 170);
	font-size: 0.625rem;
	font-weight: 600;
	text-decoration: none;
}

.tsc-cheater-action:hover {
	border-color: rgb(251 146 60 / 0.4);
	color: rgb(251 146 60);
	background: rgb(251 146 60 / 0.08);
}

.tsc-cheater-empty {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.35rem;
	padding: 2.5rem 1rem;
	color: rgb(161 161 170);
	text-align: center;
}

.tsc-cheater-empty .tsc-icon {
	color: rgb(74 222 128);
	margin-bottom: 0.25rem;
}

.tsc-cheater-empty-title {
	margin: 0;
	font-size: 0.875rem;
	font-weight: 700;
	color: rgb(212 212 216);
}

.tsc-cheater-empty-text {
	margin: 0;
	font-size: 0.75rem;
}

@media (max-width: 767px) {
	.tsc-cheater-toolbar {
		flex-direction: column;
		align-items: stretch;
	}

	.tsc-cheater-btn {
		justify-content: center;
	}

	.tsc-cheater-table {
		min-width: 0;
	}

	.tsc-cheater-table thead {
		display: none;
	}

	.tsc-cheater-table tbody {
		display: flex;
		flex-direction: column;
		gap: 0.65rem;
		padding: 0.65rem;
	}

	.tsc-cheater-row {
		display: block;
		border: 1px solid var(--tsc-cheater-border);
		border-radius: 0.75rem;
		background: linear-gradient(160deg, rgb(24 24 27 / 0.92), rgb(9 9 11 / 0.82));
		box-shadow: 0 10px 28px rgb(0 0 0 / 0.22);
		overflow: hidden;
	}

	.tsc-cheater-row td {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		gap: 0.75rem;
		width: 100%;
		border: none;
		border-bottom: 1px solid rgb(39 39 42 / 0.35);
		padding: 0.65rem 0.85rem;
	}

	.tsc-cheater-row td:last-child {
		border-bottom: none;
	}

	.tsc-cheater-row td::before {
		content: attr(data-label);
		font-size: 0.5625rem;
		font-weight: 700;
		text-transform: uppercase;
		letter-spacing: 0.06em;
		color: rgb(113 113 122);
		flex-shrink: 0;
		min-width: 4.5rem;
		padding-top: 0.15rem;
	}

	.tsc-cheater-cell--torrent {
		flex-direction: column;
		max-width: none;
	}

	.tsc-cheater-cell--torrent::before {
		display: none;
	}

	.tsc-cheater-cell--action::before {
		display: none;
	}

	.tsc-cheater-cell--action {
		justify-content: flex-end;
	}

	.tsc-cheater-torrent-link {
		white-space: normal;
	}

	.tsc-cheater-cell--num,
	.tsc-cheater-cell--ratio {
		text-align: right;
	}
}

/* ═══════════════════════════════════════════════════════════
   Premium Start/Stop Log — startstoplog.php
   ═══════════════════════════════════════════════════════════ */

.tsc-startstop-page {
	--tsc-startstop-accent: rgb(167 139 250);
	--tsc-startstop-accent-soft: rgb(167 139 250 / 0.14);
	--tsc-startstop-border: rgb(39 39 42 / 0.72);
	min-width: 0;
	padding-bottom: 1.5rem;
}

.tsc-index-block--startstop {
	border-color: rgb(167 139 250 / 0.28);
	box-shadow:
		0 0 0 1px rgb(167 139 250 / 0.06) inset,
		0 12px 40px rgb(0 0 0 / 0.35);
}

.tsc-index-section-body--startstop {
	padding: clamp(0.75rem, 2vw, 1.15rem);
	min-width: 0;
}

.tsc-page-startstop .maincontent > br {
	display: none;
}

.tsc-startstop-hero {
	position: relative;
	margin-bottom: 1rem;
	padding: clamp(1rem, 3vw, 1.5rem);
	border-radius: 1rem;
	border: 1px solid rgb(167 139 250 / 0.28);
	background:
		radial-gradient(ellipse 80% 60% at 50% -20%, rgb(167 139 250 / 0.14), transparent 60%),
		linear-gradient(160deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.9));
	overflow: hidden;
}

.tsc-startstop-hero-glow {
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at 85% 15%, rgb(139 92 246 / 0.1), transparent 42%);
	pointer-events: none;
}

.tsc-startstop-hero-inner {
	position: relative;
}

.tsc-startstop-hero-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.25rem 0.55rem;
	border-radius: 999px;
	border: 1px solid rgb(167 139 250 / 0.35);
	background: rgb(167 139 250 / 0.1);
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(221 214 254);
	margin-bottom: 0.5rem;
}

.tsc-startstop-hero-title {
	margin: 0 0 0.35rem;
	font-size: clamp(1.25rem, 3vw, 1.6rem);
	font-weight: 800;
	color: rgb(244 244 245);
}

.tsc-startstop-hero-sub {
	margin: 0 0 0.75rem;
	font-size: 0.8125rem;
	color: rgb(161 161 170);
	line-height: 1.5;
	max-width: 44rem;
}

.tsc-startstop-hero-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.tsc-startstop-chip {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.4rem 0.65rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.45);
	font-size: 0.75rem;
	color: rgb(212 212 216);
}

.tsc-startstop-chip .tsc-icon {
	color: rgb(167 139 250);
}

.tsc-startstop-section-badge {
	display: inline-flex;
	align-items: center;
	padding: 0.2rem 0.5rem;
	border-radius: 999px;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(39 39 42 / 0.55);
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: rgb(161 161 170);
}

.tsc-startstop-back {
	margin: 0 0 1rem;
}

.tsc-startstop-hub {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 18rem), 1fr));
	gap: 0.65rem;
	margin-bottom: 0.85rem;
}

.tsc-startstop-hub-card {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	padding: 0.85rem 1rem;
	border-radius: 0.75rem;
	border: 1px solid var(--tsc-startstop-border);
	background: linear-gradient(160deg, rgb(24 24 27 / 0.88), rgb(9 9 11 / 0.72));
	text-decoration: none;
	color: inherit;
	transition: border-color 0.15s, transform 0.15s, box-shadow 0.15s;
}

.tsc-startstop-hub-card:hover {
	border-color: rgb(167 139 250 / 0.45);
	box-shadow: 0 8px 24px rgb(0 0 0 / 0.25);
	transform: translateY(-1px);
}

.tsc-startstop-hub-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2.25rem;
	height: 2.25rem;
	border-radius: 0.55rem;
	background: rgb(167 139 250 / 0.12);
	color: rgb(196 181 253);
	flex-shrink: 0;
}

.tsc-startstop-hub-body {
	display: flex;
	flex-direction: column;
	gap: 0.15rem;
	min-width: 0;
	flex: 1;
}

.tsc-startstop-hub-title {
	font-size: 0.875rem;
	font-weight: 700;
	color: rgb(244 244 245);
}

.tsc-startstop-hub-desc {
	font-size: 0.6875rem;
	line-height: 1.45;
	color: rgb(161 161 170);
}

.tsc-startstop-hub-arrow {
	color: rgb(113 113 122);
	flex-shrink: 0;
}

.tsc-startstop-notice {
	display: flex;
	gap: 0.65rem;
	padding: 0.75rem 0.9rem;
	border-radius: 0.65rem;
	border: 1px solid rgb(167 139 250 / 0.28);
	background: rgb(167 139 250 / 0.06);
	font-size: 0.75rem;
	line-height: 1.55;
	color: rgb(212 212 216);
}

.tsc-startstop-notice .tsc-icon {
	color: rgb(167 139 250);
	flex-shrink: 0;
	margin-top: 0.1rem;
}

.tsc-startstop-notice-body p {
	margin: 0 0 0.45rem;
}

.tsc-startstop-notice-body p:last-child {
	margin-bottom: 0;
}

.tsc-startstop-search-panel {
	margin-bottom: 0.85rem;
	padding: 0.85rem;
	border-radius: 0.75rem;
	border: 1px solid var(--tsc-startstop-border);
	background: rgb(9 9 11 / 0.45);
}

.tsc-startstop-search-label {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	margin-bottom: 0.5rem;
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(161 161 170);
}

.tsc-startstop-search-row {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.tsc-startstop-input {
	flex: 1 1 14rem;
	min-width: 0;
	padding: 0.55rem 0.75rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(9 9 11 / 0.75);
	color: rgb(244 244 245);
	font-size: 0.8125rem;
}

.tsc-startstop-search-hint {
	margin: 0.45rem 0 0;
	font-size: 0.6875rem;
	color: rgb(113 113 122);
}

.tsc-startstop-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.45rem 0.75rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(24 24 27 / 0.85);
	color: rgb(212 212 216);
	font-size: 0.6875rem;
	font-weight: 700;
	text-decoration: none;
	cursor: pointer;
	transition: border-color 0.15s, background 0.15s, color 0.15s;
}

.tsc-startstop-btn--primary {
	border-color: rgb(167 139 250 / 0.45);
	background: rgb(167 139 250 / 0.14);
	color: rgb(221 214 254);
}

.tsc-startstop-btn--primary:hover {
	border-color: rgb(167 139 250 / 0.6);
	background: rgb(167 139 250 / 0.22);
	color: rgb(245 243 255);
}

.tsc-startstop-btn--ghost:hover {
	border-color: rgb(167 139 250 / 0.35);
	color: rgb(196 181 253);
}

.tsc-startstop-btn--danger {
	border-color: rgb(239 68 68 / 0.4);
	background: rgb(239 68 68 / 0.12);
	color: rgb(252 165 165);
}

.tsc-startstop-btn--sm {
	padding: 0.3rem 0.5rem;
	font-size: 0.625rem;
}

.tsc-startstop-inline-form {
	margin: 0;
}

.tsc-startstop-flash {
	display: flex;
	align-items: center;
	gap: 0.45rem;
	margin-bottom: 0.75rem;
	padding: 0.6rem 0.8rem;
	border-radius: 0.55rem;
	font-size: 0.75rem;
	font-weight: 600;
}

.tsc-startstop-flash--success {
	border: 1px solid rgb(74 222 128 / 0.35);
	background: rgb(74 222 128 / 0.1);
	color: rgb(134 239 172);
}

.tsc-startstop-legend {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem;
	margin-bottom: 0.65rem;
}

.tsc-startstop-legend-item {
	display: inline-flex;
	padding: 0.15rem 0.45rem;
	border-radius: 999px;
	font-size: 0.5625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	border: 1px solid transparent;
}

.tsc-startstop-table-shell {
	border: 1px solid var(--tsc-startstop-border);
	border-radius: 0.75rem;
	background: rgb(9 9 11 / 0.45);
	overflow: hidden;
}

.tsc-startstop-table-wrap {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.tsc-startstop-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.8125rem;
	min-width: 52rem;
}

.tsc-startstop-table thead th {
	padding: 0.65rem 0.75rem;
	font-size: 0.5625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(113 113 122);
	text-align: left;
	background: rgb(9 9 11 / 0.75);
	border-bottom: 1px solid var(--tsc-startstop-border);
	white-space: nowrap;
}

.tsc-startstop-table thead th .tsc-icon {
	color: rgb(167 139 250);
	margin-right: 0.15rem;
}

.tsc-startstop-table tbody td {
	padding: 0.7rem 0.75rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.35);
	color: rgb(212 212 216);
	vertical-align: middle;
}

.tsc-startstop-row:last-child td {
	border-bottom: none;
}

.tsc-startstop-row:hover td {
	background: rgb(24 24 27 / 0.45);
}

.tsc-startstop-row--timeout td,
.tsc-startstop-row--unknown_start td {
	background: rgb(234 179 8 / 0.04);
}

.tsc-startstop-link {
	color: rgb(196 181 253);
	text-decoration: none;
	font-weight: 600;
}

.tsc-startstop-link:hover {
	color: rgb(221 214 254);
	text-decoration: underline;
}

.tsc-startstop-muted {
	color: rgb(113 113 122);
	font-style: italic;
}

.tsc-startstop-cell--torrent {
	min-width: 10rem;
	max-width: 18rem;
}

.tsc-startstop-torrent-link {
	display: block;
	color: rgb(228 228 231);
	font-weight: 600;
	text-decoration: none;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.tsc-startstop-torrent-link:hover {
	color: rgb(196 181 253);
}

.tsc-startstop-torrent-id {
	display: block;
	margin-top: 0.15rem;
	font-size: 0.625rem;
	color: rgb(113 113 122);
}

.tsc-startstop-cell--time {
	white-space: nowrap;
	font-variant-numeric: tabular-nums;
	font-size: 0.75rem;
}

.tsc-startstop-cell--num {
	text-align: right;
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
}

.tsc-startstop-cell--client {
	max-width: 12rem;
}

.tsc-startstop-peer,
.tsc-startstop-ua {
	display: block;
	font-size: 0.625rem;
	color: rgb(161 161 170);
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.tsc-startstop-status {
	display: inline-flex;
	padding: 0.15rem 0.45rem;
	border-radius: 999px;
	font-size: 0.5625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	border: 1px solid transparent;
}

.tsc-startstop-status--ok {
	color: rgb(134 239 172);
	background: rgb(74 222 128 / 0.12);
	border-color: rgb(74 222 128 / 0.35);
}

.tsc-startstop-status--warn {
	color: rgb(253 224 71);
	background: rgb(234 179 8 / 0.12);
	border-color: rgb(234 179 8 / 0.35);
}

.tsc-startstop-status--high {
	color: rgb(253 186 116);
	background: rgb(249 115 22 / 0.12);
	border-color: rgb(249 115 22 / 0.35);
}

.tsc-startstop-status--muted {
	color: rgb(161 161 170);
	background: rgb(39 39 42 / 0.55);
	border-color: rgb(63 63 70 / 0.55);
}

.tsc-startstop-cell--ip {
	vertical-align: top;
	background: rgb(167 139 250 / 0.04);
}

.tsc-startstop-ip {
	display: block;
	font-weight: 700;
	color: rgb(228 228 231);
}

.tsc-startstop-ip-count {
	display: block;
	margin-top: 0.2rem;
	font-size: 0.625rem;
	color: rgb(161 161 170);
}

.tsc-startstop-timebar {
	display: block;
	width: 100%;
	height: 3px;
	border-radius: 999px;
	margin-bottom: 0.35rem;
}

.tsc-startstop-timebar--critical {
	background: rgb(239 68 68);
}

.tsc-startstop-timebar--high {
	background: rgb(249 115 22);
}

.tsc-startstop-timebar--warn {
	background: rgb(234 179 8);
}

.tsc-startstop-timebar--ok {
	background: rgb(74 222 128);
}

.tsc-startstop-legend-item.tsc-startstop-timebar--critical {
	color: rgb(252 165 165);
	background: rgb(239 68 68 / 0.12);
	border-color: rgb(239 68 68 / 0.35);
}

.tsc-startstop-legend-item.tsc-startstop-timebar--high {
	color: rgb(253 186 116);
	background: rgb(249 115 22 / 0.12);
	border-color: rgb(249 115 22 / 0.35);
}

.tsc-startstop-legend-item.tsc-startstop-timebar--warn {
	color: rgb(253 224 71);
	background: rgb(234 179 8 / 0.12);
	border-color: rgb(234 179 8 / 0.35);
}

.tsc-startstop-legend-item.tsc-startstop-timebar--ok {
	color: rgb(134 239 172);
	background: rgb(74 222 128 / 0.12);
	border-color: rgb(74 222 128 / 0.35);
}

.tsc-startstop-hash {
	font-size: 0.6875rem;
	padding: 0.15rem 0.35rem;
	border-radius: 0.35rem;
	background: rgb(9 9 11 / 0.55);
	color: rgb(196 181 253);
	word-break: break-all;
}

.tsc-startstop-empty {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.35rem;
	padding: 2.5rem 1rem;
	color: rgb(161 161 170);
	text-align: center;
}

.tsc-startstop-empty .tsc-icon {
	color: rgb(167 139 250);
	margin-bottom: 0.25rem;
}

.tsc-startstop-empty-title {
	margin: 0;
	font-size: 0.875rem;
	font-weight: 700;
	color: rgb(212 212 216);
}

.tsc-startstop-empty-text {
	margin: 0;
	font-size: 0.75rem;
}

@media (max-width: 767px) {
	.tsc-startstop-search-row {
		flex-direction: column;
	}

	.tsc-startstop-btn {
		justify-content: center;
		width: 100%;
	}

	.tsc-startstop-table {
		min-width: 0;
	}

	.tsc-startstop-table thead {
		display: none;
	}

	.tsc-startstop-table tbody {
		display: flex;
		flex-direction: column;
		gap: 0.65rem;
		padding: 0.65rem;
	}

	.tsc-startstop-row {
		display: block;
		border: 1px solid var(--tsc-startstop-border);
		border-radius: 0.75rem;
		background: linear-gradient(160deg, rgb(24 24 27 / 0.92), rgb(9 9 11 / 0.82));
		box-shadow: 0 10px 28px rgb(0 0 0 / 0.22);
		overflow: hidden;
	}

	.tsc-startstop-row td {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		gap: 0.75rem;
		width: 100%;
		border: none;
		border-bottom: 1px solid rgb(39 39 42 / 0.35);
		padding: 0.65rem 0.85rem;
	}

	.tsc-startstop-row td:last-child {
		border-bottom: none;
	}

	.tsc-startstop-row td::before {
		content: attr(data-label);
		font-size: 0.5625rem;
		font-weight: 700;
		text-transform: uppercase;
		letter-spacing: 0.06em;
		color: rgb(113 113 122);
		flex-shrink: 0;
		min-width: 4.5rem;
		padding-top: 0.15rem;
	}

	.tsc-startstop-cell--torrent,
	.tsc-startstop-cell--client {
		flex-direction: column;
		max-width: none;
	}

	.tsc-startstop-cell--torrent::before,
	.tsc-startstop-cell--action::before {
		display: none;
	}

	.tsc-startstop-cell--action {
		justify-content: flex-end;
	}

	.tsc-startstop-torrent-link {
		white-space: normal;
	}

	.tsc-startstop-cell--num {
		text-align: right;
	}

	.tsc-startstop-cell--ip[rowspan] {
		display: block;
		border-bottom: 1px solid rgb(167 139 250 / 0.25);
		background: rgb(167 139 250 / 0.08);
	}

	.tsc-startstop-cell--hash[rowspan] {
		display: block;
		border-bottom: 1px solid rgb(167 139 250 / 0.25);
		background: rgb(167 139 250 / 0.08);
	}
}

/* ═══════════════════════════════════════════════════════════
   Premium Unbestätigte User — unco.php
   ═══════════════════════════════════════════════════════════ */

.tsc-unco-page {
	--tsc-unco-accent: rgb(52 211 153);
	--tsc-unco-accent-soft: rgb(52 211 153 / 0.14);
	--tsc-unco-border: rgb(39 39 42 / 0.72);
	min-width: 0;
	padding-bottom: 1.5rem;
}

.tsc-index-block--unco {
	border-color: rgb(52 211 153 / 0.28);
	box-shadow:
		0 0 0 1px rgb(52 211 153 / 0.06) inset,
		0 12px 40px rgb(0 0 0 / 0.35);
}

.tsc-index-section-body--unco {
	padding: clamp(0.75rem, 2vw, 1.15rem);
	min-width: 0;
}

.tsc-page-unco .maincontent > br {
	display: none;
}

.tsc-unco-hero {
	position: relative;
	margin-bottom: 1rem;
	padding: clamp(1rem, 3vw, 1.5rem);
	border-radius: 1rem;
	border: 1px solid rgb(52 211 153 / 0.28);
	background:
		radial-gradient(ellipse 80% 60% at 50% -20%, rgb(52 211 153 / 0.14), transparent 60%),
		linear-gradient(160deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.9));
	overflow: hidden;
}

.tsc-unco-hero-glow {
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at 85% 15%, rgb(16 185 129 / 0.1), transparent 42%);
	pointer-events: none;
}

.tsc-unco-hero-inner { position: relative; }

.tsc-unco-hero-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.25rem 0.55rem;
	border-radius: 999px;
	border: 1px solid rgb(52 211 153 / 0.35);
	background: rgb(52 211 153 / 0.1);
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(167 243 208);
	margin-bottom: 0.5rem;
}

.tsc-unco-hero-title {
	margin: 0 0 0.35rem;
	font-size: clamp(1.25rem, 3vw, 1.6rem);
	font-weight: 800;
	color: rgb(244 244 245);
}

.tsc-unco-hero-sub {
	margin: 0 0 0.75rem;
	font-size: 0.8125rem;
	color: rgb(161 161 170);
	line-height: 1.5;
	max-width: 42rem;
}

.tsc-unco-hero-sub em {
	color: rgb(110 231 183);
	font-style: normal;
	font-weight: 600;
}

.tsc-unco-hero-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.tsc-unco-chip {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.4rem 0.65rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.45);
	font-size: 0.75rem;
	color: rgb(212 212 216);
}

.tsc-unco-chip .tsc-icon { color: rgb(52 211 153); }

.tsc-unco-section-badge {
	display: inline-flex;
	align-items: center;
	padding: 0.2rem 0.5rem;
	border-radius: 999px;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(39 39 42 / 0.55);
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: rgb(161 161 170);
}

.tsc-unco-flash {
	display: flex;
	align-items: center;
	gap: 0.45rem;
	margin-bottom: 0.75rem;
	padding: 0.6rem 0.8rem;
	border-radius: 0.55rem;
	font-size: 0.75rem;
	font-weight: 600;
}

.tsc-unco-flash--success {
	border: 1px solid rgb(74 222 128 / 0.35);
	background: rgb(74 222 128 / 0.1);
	color: rgb(134 239 172);
}

.tsc-unco-flash--warning {
	border: 1px solid rgb(234 179 8 / 0.35);
	background: rgb(234 179 8 / 0.1);
	color: rgb(253 224 71);
}

.tsc-unco-toolbar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.65rem;
	margin-bottom: 0.75rem;
	padding: 0.75rem;
	border-radius: 0.65rem;
	border: 1px solid var(--tsc-unco-border);
	background: rgb(9 9 11 / 0.45);
}

.tsc-unco-check-all {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	font-size: 0.75rem;
	font-weight: 600;
	color: rgb(212 212 216);
	cursor: pointer;
}

.tsc-unco-toolbar-actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.45rem;
}

.tsc-unco-action-label {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(161 161 170);
}

.tsc-unco-select {
	padding: 0.45rem 0.65rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(9 9 11 / 0.75);
	color: rgb(244 244 245);
	font-size: 0.75rem;
}

.tsc-unco-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.45rem 0.75rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(24 24 27 / 0.85);
	color: rgb(212 212 216);
	font-size: 0.6875rem;
	font-weight: 700;
	cursor: pointer;
	transition: border-color 0.15s, background 0.15s, color 0.15s;
}

.tsc-unco-btn--primary {
	border-color: rgb(52 211 153 / 0.45);
	background: rgb(52 211 153 / 0.14);
	color: rgb(167 243 208);
}

.tsc-unco-btn--primary:hover:not(:disabled) {
	border-color: rgb(52 211 153 / 0.6);
	background: rgb(52 211 153 / 0.22);
	color: rgb(209 250 229);
}

.tsc-unco-btn:disabled,
.tsc-unco-select:disabled {
	opacity: 0.45;
	cursor: not-allowed;
}

.tsc-unco-pagination {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.5rem;
	margin: 0.65rem 0;
}

.tsc-unco-pagination-nav,
.tsc-unco-pagination-pages {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem;
}

.tsc-unco-page-btn,
.tsc-unco-page-num {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	padding: 0.35rem 0.6rem;
	border-radius: 0.45rem;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(24 24 27 / 0.75);
	color: rgb(161 161 170);
	font-size: 0.6875rem;
	font-weight: 600;
	text-decoration: none;
}

.tsc-unco-page-btn:hover,
.tsc-unco-page-num:hover {
	border-color: rgb(52 211 153 / 0.35);
	color: rgb(167 243 208);
}

.tsc-unco-page-btn--disabled {
	opacity: 0.45;
	pointer-events: none;
}

.tsc-unco-page-num--active {
	border-color: rgb(52 211 153 / 0.45);
	background: rgb(52 211 153 / 0.12);
	color: rgb(167 243 208);
}

.tsc-unco-table-shell {
	border: 1px solid var(--tsc-unco-border);
	border-radius: 0.75rem;
	background: rgb(9 9 11 / 0.45);
	overflow: hidden;
}

.tsc-unco-table-wrap {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.tsc-unco-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.8125rem;
	min-width: 36rem;
}

.tsc-unco-table thead th {
	padding: 0.65rem 0.75rem;
	font-size: 0.5625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(113 113 122);
	text-align: left;
	background: rgb(9 9 11 / 0.75);
	border-bottom: 1px solid var(--tsc-unco-border);
	white-space: nowrap;
}

.tsc-unco-table thead th .tsc-icon {
	color: rgb(52 211 153);
	margin-right: 0.15rem;
}

.tsc-unco-table tbody td {
	padding: 0.7rem 0.75rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.35);
	color: rgb(212 212 216);
	vertical-align: middle;
}

.tsc-unco-row:last-child td { border-bottom: none; }
.tsc-unco-row:hover td { background: rgb(24 24 27 / 0.45); }

.tsc-unco-col-check,
.tsc-unco-cell--check {
	width: 2.5rem;
	text-align: center;
}

.tsc-unco-cell--id {
	font-variant-numeric: tabular-nums;
	color: rgb(161 161 170);
}

.tsc-unco-link {
	color: rgb(110 231 183);
	font-weight: 600;
	text-decoration: none;
}

.tsc-unco-link:hover {
	color: rgb(167 243 208);
	text-decoration: underline;
}

.tsc-unco-cell--email {
	word-break: break-all;
}

.tsc-unco-cell--date {
	white-space: nowrap;
	font-variant-numeric: tabular-nums;
	font-size: 0.75rem;
}

.tsc-unco-empty {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.35rem;
	padding: 2.5rem 1rem;
	color: rgb(161 161 170);
	text-align: center;
}

.tsc-unco-empty .tsc-icon {
	color: rgb(52 211 153);
	margin-bottom: 0.25rem;
}

.tsc-unco-empty-title {
	margin: 0;
	font-size: 0.875rem;
	font-weight: 700;
	color: rgb(212 212 216);
}

.tsc-unco-empty-text {
	margin: 0;
	font-size: 0.75rem;
}

@media (max-width: 767px) {
	.tsc-unco-toolbar {
		flex-direction: column;
		align-items: stretch;
	}

	.tsc-unco-toolbar-actions {
		flex-direction: column;
		align-items: stretch;
	}

	.tsc-unco-btn,
	.tsc-unco-select {
		width: 100%;
		justify-content: center;
	}

	.tsc-unco-table {
		min-width: 0;
	}

	.tsc-unco-table thead {
		display: none;
	}

	.tsc-unco-table tbody {
		display: flex;
		flex-direction: column;
		gap: 0.65rem;
		padding: 0.65rem;
	}

	.tsc-unco-row {
		display: block;
		border: 1px solid var(--tsc-unco-border);
		border-radius: 0.75rem;
		background: linear-gradient(160deg, rgb(24 24 27 / 0.92), rgb(9 9 11 / 0.82));
		box-shadow: 0 10px 28px rgb(0 0 0 / 0.22);
		overflow: hidden;
	}

	.tsc-unco-row td {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		gap: 0.75rem;
		width: 100%;
		border: none;
		border-bottom: 1px solid rgb(39 39 42 / 0.35);
		padding: 0.65rem 0.85rem;
	}

	.tsc-unco-row td:last-child {
		border-bottom: none;
	}

	.tsc-unco-row td::before {
		content: attr(data-label);
		font-size: 0.5625rem;
		font-weight: 700;
		text-transform: uppercase;
		letter-spacing: 0.06em;
		color: rgb(113 113 122);
		flex-shrink: 0;
		min-width: 4.5rem;
		padding-top: 0.15rem;
	}

	.tsc-unco-cell--check::before {
		display: none;
	}

	.tsc-unco-cell--check {
		justify-content: flex-start;
		border-bottom: 1px solid rgb(52 211 153 / 0.2);
		background: rgb(52 211 153 / 0.06);
	}
}

/* ═══════════════════════════════════════════════════════════
   Premium Quickban — quickban.php
   ═══════════════════════════════════════════════════════════ */

.tsc-quickban-page {
	--tsc-quickban-accent: rgb(248 113 113);
	--tsc-quickban-accent-soft: rgb(248 113 113 / 0.14);
	--tsc-quickban-border: rgb(39 39 42 / 0.72);
	min-width: 0;
	padding-bottom: 1.5rem;
}

.tsc-index-block--quickban {
	border-color: rgb(248 113 113 / 0.28);
	box-shadow:
		0 0 0 1px rgb(248 113 113 / 0.06) inset,
		0 12px 40px rgb(0 0 0 / 0.35);
}

.tsc-index-section-body--quickban {
	padding: clamp(0.75rem, 2vw, 1.15rem);
	min-width: 0;
}

.tsc-page-quickban .maincontent > br {
	display: none;
}

.tsc-quickban-hero {
	position: relative;
	margin-bottom: 1rem;
	padding: clamp(1rem, 3vw, 1.5rem);
	border-radius: 1rem;
	border: 1px solid rgb(248 113 113 / 0.28);
	background:
		radial-gradient(ellipse 80% 60% at 50% -20%, rgb(248 113 113 / 0.14), transparent 60%),
		linear-gradient(160deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.9));
	overflow: hidden;
}

.tsc-quickban-hero-glow {
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at 85% 15%, rgb(239 68 68 / 0.1), transparent 42%);
	pointer-events: none;
}

.tsc-quickban-hero-inner { position: relative; }

.tsc-quickban-hero-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.25rem 0.55rem;
	border-radius: 999px;
	border: 1px solid rgb(248 113 113 / 0.35);
	background: rgb(248 113 113 / 0.1);
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(254 202 202);
	margin-bottom: 0.5rem;
}

.tsc-quickban-hero-title {
	margin: 0 0 0.35rem;
	font-size: clamp(1.25rem, 3vw, 1.6rem);
	font-weight: 800;
	color: rgb(244 244 245);
}

.tsc-quickban-hero-sub {
	margin: 0 0 0.75rem;
	font-size: 0.8125rem;
	color: rgb(161 161 170);
	line-height: 1.5;
	max-width: 42rem;
}

.tsc-quickban-hero-sub strong {
	color: rgb(252 165 165);
}

.tsc-quickban-hero-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.tsc-quickban-chip {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.4rem 0.65rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.45);
	font-size: 0.75rem;
	color: rgb(212 212 216);
}

.tsc-quickban-chip .tsc-icon { color: rgb(248 113 113); }

.tsc-quickban-chip--danger {
	border-color: rgb(239 68 68 / 0.35);
	background: rgb(239 68 68 / 0.08);
}

.tsc-quickban-flash {
	display: flex;
	align-items: center;
	gap: 0.45rem;
	margin-bottom: 0.75rem;
	padding: 0.6rem 0.8rem;
	border-radius: 0.55rem;
	font-size: 0.75rem;
	font-weight: 600;
}

.tsc-quickban-flash--success {
	border: 1px solid rgb(74 222 128 / 0.35);
	background: rgb(74 222 128 / 0.1);
	color: rgb(134 239 172);
}

.tsc-quickban-flash--danger {
	border: 1px solid rgb(239 68 68 / 0.35);
	background: rgb(239 68 68 / 0.1);
	color: rgb(252 165 165);
}

.tsc-quickban-notice {
	display: flex;
	gap: 0.65rem;
	margin-bottom: 0.85rem;
	padding: 0.75rem 0.9rem;
	border-radius: 0.65rem;
	border: 1px solid rgb(239 68 68 / 0.35);
	background: rgb(239 68 68 / 0.08);
	font-size: 0.75rem;
	line-height: 1.55;
	color: rgb(212 212 216);
}

.tsc-quickban-notice .tsc-icon {
	color: rgb(248 113 113);
	flex-shrink: 0;
	margin-top: 0.1rem;
}

.tsc-quickban-notice-body p {
	margin: 0 0 0.45rem;
}

.tsc-quickban-notice-body p:last-child {
	margin-bottom: 0;
}

.tsc-quickban-search-panel {
	padding: 0.85rem;
	border-radius: 0.75rem;
	border: 1px solid var(--tsc-quickban-border);
	background: rgb(9 9 11 / 0.45);
}

.tsc-quickban-search-label {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	margin-bottom: 0.5rem;
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(161 161 170);
}

.tsc-quickban-search-row {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	align-items: flex-start;
}

.tsc-quickban-search-field {
	flex: 1 1 14rem;
	position: relative;
	min-width: 0;
}

.tsc-quickban-input {
	width: 100%;
	padding: 0.55rem 0.75rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(9 9 11 / 0.75);
	color: rgb(244 244 245);
	font-size: 0.8125rem;
}

.tsc-quickban-suggestions {
	position: absolute;
	z-index: 40;
	top: calc(100% + 0.25rem);
	left: 0;
	right: 0;
	border-radius: 0.65rem;
	border: 1px solid var(--tsc-quickban-border);
	background: rgb(24 24 27 / 0.98);
	box-shadow: 0 12px 32px rgb(0 0 0 / 0.45);
	overflow: hidden;
}

.tsc-quickban-suggest-list {
	display: flex;
	flex-direction: column;
	max-height: 16rem;
	overflow-y: auto;
}

.tsc-quickban-suggest-item {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.1rem;
	width: 100%;
	padding: 0.55rem 0.75rem;
	border: none;
	border-bottom: 1px solid rgb(39 39 42 / 0.45);
	background: transparent;
	color: rgb(212 212 216);
	text-align: left;
	cursor: pointer;
}

.tsc-quickban-suggest-item:last-child {
	border-bottom: none;
}

.tsc-quickban-suggest-item:hover {
	background: rgb(248 113 113 / 0.1);
}

.tsc-quickban-suggest-name {
	font-size: 0.8125rem;
	font-weight: 700;
	color: rgb(244 244 245);
}

.tsc-quickban-suggest-meta {
	font-size: 0.625rem;
	color: rgb(113 113 122);
}

.tsc-quickban-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.55rem 0.85rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(24 24 27 / 0.85);
	color: rgb(212 212 216);
	font-size: 0.75rem;
	font-weight: 700;
	cursor: pointer;
	transition: border-color 0.15s, background 0.15s, color 0.15s;
}

.tsc-quickban-btn--danger {
	border-color: rgb(239 68 68 / 0.45);
	background: rgb(239 68 68 / 0.14);
	color: rgb(252 165 165);
}

.tsc-quickban-btn--danger:hover:not(:disabled) {
	border-color: rgb(239 68 68 / 0.6);
	background: rgb(239 68 68 / 0.22);
	color: rgb(254 202 202);
}

.tsc-quickban-btn:disabled {
	opacity: 0.45;
	cursor: not-allowed;
}

.tsc-quickban-preview {
	margin-top: 0.85rem;
	padding: 0.75rem 0.85rem;
	border-radius: 0.65rem;
	border: 1px solid rgb(63 63 70 / 0.55);
	background: rgb(9 9 11 / 0.55);
}

.tsc-quickban-preview-head {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	margin-bottom: 0.5rem;
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(161 161 170);
}

.tsc-quickban-preview-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 10rem), 1fr));
	gap: 0.55rem 0.85rem;
	margin: 0;
}

.tsc-quickban-preview-grid dt {
	margin: 0;
	font-size: 0.5625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(113 113 122);
}

.tsc-quickban-preview-grid dd {
	margin: 0.1rem 0 0;
	font-size: 0.8125rem;
	color: rgb(228 228 231);
	word-break: break-word;
}

.tsc-users-page .suggestionsBox,
.tsc-quickban-page .suggestionsBox {
	position: absolute;
	z-index: 30;
	width: 100%;
}

.tsc-users-page .suggestionList a,
.tsc-quickban-page .suggestionList a {
	display: block;
	padding: 0.45rem 0.65rem;
	color: rgb(212 212 216);
	text-decoration: none;
	font-size: 0.8125rem;
}

.tsc-users-page .suggestionList a:hover {
	background: rgb(56 189 248 / 0.12);
	color: rgb(186 230 253);
}

@media (max-width: 767px) {
	.tsc-quickban-search-row {
		flex-direction: column;
	}

	.tsc-quickban-btn {
		width: 100%;
		justify-content: center;
	}
}

/* ═══════════════════════════════════════════════════════════
   Premium Blocked Login IPs — blockedlogin.php
   ═══════════════════════════════════════════════════════════ */

.tsc-blockedlogin-page {
	--tsc-blockedlogin-accent: rgb(251 191 36);
	--tsc-blockedlogin-accent-soft: rgb(251 191 36 / 0.14);
	--tsc-blockedlogin-border: rgb(39 39 42 / 0.72);
	min-width: 0;
	padding-bottom: 1.5rem;
}

.tsc-index-block--blockedlogin {
	border-color: rgb(251 191 36 / 0.28);
	box-shadow:
		0 0 0 1px rgb(251 191 36 / 0.06) inset,
		0 12px 40px rgb(0 0 0 / 0.35);
}

.tsc-index-section-body--blockedlogin {
	padding: clamp(0.75rem, 2vw, 1.15rem);
	min-width: 0;
}

.tsc-page-blockedlogin .maincontent > br {
	display: none;
}

.tsc-blockedlogin-hero {
	position: relative;
	margin-bottom: 1rem;
	padding: clamp(1rem, 3vw, 1.5rem);
	border-radius: 1rem;
	border: 1px solid rgb(251 191 36 / 0.28);
	background:
		radial-gradient(ellipse 80% 60% at 50% -20%, rgb(251 191 36 / 0.14), transparent 60%),
		linear-gradient(160deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.9));
	overflow: hidden;
}

.tsc-blockedlogin-hero-glow {
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at 85% 15%, rgb(245 158 11 / 0.1), transparent 42%);
	pointer-events: none;
}

.tsc-blockedlogin-hero-inner { position: relative; }

.tsc-blockedlogin-hero-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.25rem 0.55rem;
	border-radius: 999px;
	border: 1px solid rgb(251 191 36 / 0.35);
	background: rgb(251 191 36 / 0.1);
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(253 230 138);
	margin-bottom: 0.5rem;
}

.tsc-blockedlogin-hero-title {
	margin: 0 0 0.35rem;
	font-size: clamp(1.25rem, 3vw, 1.6rem);
	font-weight: 800;
	color: rgb(244 244 245);
}

.tsc-blockedlogin-hero-sub {
	margin: 0 0 0.75rem;
	font-size: 0.8125rem;
	color: rgb(161 161 170);
	line-height: 1.5;
	max-width: 42rem;
}

.tsc-blockedlogin-hero-sub strong {
	color: rgb(253 224 71);
}

.tsc-blockedlogin-hero-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.tsc-blockedlogin-chip {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.4rem 0.65rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.45);
	font-size: 0.75rem;
	color: rgb(212 212 216);
}

.tsc-blockedlogin-chip .tsc-icon { color: rgb(251 191 36); }

.tsc-blockedlogin-section-badge {
	font-size: 0.6875rem;
	font-weight: 700;
	color: rgb(161 161 170);
}

.tsc-blockedlogin-flash {
	display: flex;
	align-items: center;
	gap: 0.45rem;
	margin-bottom: 0.75rem;
	padding: 0.6rem 0.8rem;
	border-radius: 0.55rem;
	font-size: 0.75rem;
	font-weight: 600;
}

.tsc-blockedlogin-flash--success {
	border: 1px solid rgb(74 222 128 / 0.35);
	background: rgb(74 222 128 / 0.1);
	color: rgb(134 239 172);
}

.tsc-blockedlogin-flash--danger {
	border: 1px solid rgb(239 68 68 / 0.35);
	background: rgb(239 68 68 / 0.1);
	color: rgb(252 165 165);
}

.tsc-blockedlogin-notice {
	display: flex;
	gap: 0.65rem;
	margin-bottom: 0.85rem;
	padding: 0.75rem 0.9rem;
	border-radius: 0.65rem;
	border: 1px solid rgb(251 191 36 / 0.28);
	background: rgb(251 191 36 / 0.06);
	font-size: 0.75rem;
	line-height: 1.55;
	color: rgb(212 212 216);
}

.tsc-blockedlogin-notice .tsc-icon {
	color: rgb(251 191 36);
	flex-shrink: 0;
	margin-top: 0.1rem;
}

.tsc-blockedlogin-notice-body p {
	margin: 0 0 0.45rem;
}

.tsc-blockedlogin-notice-body p:last-child {
	margin-bottom: 0;
}

.tsc-blockedlogin-table-shell {
	border: 1px solid var(--tsc-blockedlogin-border);
	border-radius: 0.75rem;
	background: rgb(9 9 11 / 0.45);
	overflow: hidden;
}

.tsc-blockedlogin-table-wrap {
	overflow-x: auto;
}

.tsc-blockedlogin-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.8125rem;
}

.tsc-blockedlogin-table thead th {
	padding: 0.65rem 0.85rem;
	text-align: left;
	font-size: 0.5625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(161 161 170);
	background: rgb(24 24 27 / 0.85);
	border-bottom: 1px solid rgb(39 39 42 / 0.65);
	white-space: nowrap;
}

.tsc-blockedlogin-table thead th .tsc-icon {
	margin-right: 0.2rem;
	color: rgb(251 191 36);
}

.tsc-blockedlogin-table tbody td {
	padding: 0.7rem 0.85rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.45);
	color: rgb(212 212 216);
	vertical-align: middle;
}

.tsc-blockedlogin-table tbody tr:last-child td {
	border-bottom: none;
}

.tsc-blockedlogin-table tbody tr:hover td {
	background: rgb(251 191 36 / 0.04);
}

.tsc-blockedlogin-time-badge {
	display: inline-flex;
	align-items: center;
	padding: 0.25rem 0.55rem;
	border-radius: 999px;
	border: 1px solid rgb(251 191 36 / 0.35);
	background: rgb(251 191 36 / 0.12);
	font-size: 0.75rem;
	font-weight: 700;
	color: rgb(253 224 71);
	white-space: nowrap;
}

.tsc-blockedlogin-ip-link {
	color: rgb(186 230 253);
	text-decoration: none;
	font-family: ui-monospace, monospace;
	font-size: 0.75rem;
	word-break: break-all;
}

.tsc-blockedlogin-ip-link:hover {
	text-decoration: underline;
	color: rgb(224 242 254);
}

.tsc-blockedlogin-cell--date {
	white-space: nowrap;
	font-size: 0.75rem;
	font-variant-numeric: tabular-nums;
	color: rgb(161 161 170);
}

.tsc-blockedlogin-delete-form {
	margin: 0;
}

.tsc-blockedlogin-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.45rem 0.7rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(24 24 27 / 0.85);
	color: rgb(212 212 216);
	font-size: 0.75rem;
	font-weight: 700;
	cursor: pointer;
	transition: border-color 0.15s, background 0.15s, color 0.15s;
}

.tsc-blockedlogin-btn--danger {
	border-color: rgb(239 68 68 / 0.45);
	background: rgb(239 68 68 / 0.12);
	color: rgb(252 165 165);
}

.tsc-blockedlogin-btn--danger:hover {
	border-color: rgb(239 68 68 / 0.6);
	background: rgb(239 68 68 / 0.2);
	color: rgb(254 202 202);
}

.tsc-blockedlogin-empty {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.35rem;
	padding: 2.5rem 1rem;
	color: rgb(161 161 170);
	text-align: center;
}

.tsc-blockedlogin-empty .tsc-icon {
	color: rgb(52 211 153);
	margin-bottom: 0.25rem;
}

.tsc-blockedlogin-empty-title {
	margin: 0;
	font-size: 0.875rem;
	font-weight: 700;
	color: rgb(212 212 216);
}

.tsc-blockedlogin-empty-text {
	margin: 0;
	font-size: 0.75rem;
}

@media (max-width: 767px) {
	.tsc-blockedlogin-table {
		min-width: 0;
	}

	.tsc-blockedlogin-table thead {
		display: none;
	}

	.tsc-blockedlogin-table tbody {
		display: flex;
		flex-direction: column;
		gap: 0.65rem;
		padding: 0.65rem;
	}

	.tsc-blockedlogin-row {
		display: block;
		border: 1px solid var(--tsc-blockedlogin-border);
		border-radius: 0.75rem;
		background: linear-gradient(160deg, rgb(24 24 27 / 0.92), rgb(9 9 11 / 0.82));
		box-shadow: 0 10px 28px rgb(0 0 0 / 0.22);
		overflow: hidden;
	}

	.tsc-blockedlogin-row td {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		gap: 0.75rem;
		width: 100%;
		border: none;
		border-bottom: 1px solid rgb(39 39 42 / 0.35);
		padding: 0.65rem 0.85rem;
	}

	.tsc-blockedlogin-row td:last-child {
		border-bottom: none;
	}

	.tsc-blockedlogin-row td::before {
		content: attr(data-label);
		font-size: 0.5625rem;
		font-weight: 700;
		text-transform: uppercase;
		letter-spacing: 0.06em;
		color: rgb(113 113 122);
		flex-shrink: 0;
		min-width: 4.5rem;
		padding-top: 0.15rem;
	}

	.tsc-blockedlogin-cell--action::before {
		display: none;
	}

	.tsc-blockedlogin-cell--action {
		justify-content: flex-end;
		border-top: 1px solid rgb(251 191 36 / 0.15);
		background: rgb(251 191 36 / 0.04);
	}

	.tsc-blockedlogin-btn {
		width: 100%;
		justify-content: center;
	}
}

/* ═══════════════════════════════════════════════════════════
   Premium Reseed — reseed.php
   ═══════════════════════════════════════════════════════════ */

.tsc-reseed-page {
	--tsc-reseed-accent: rgb(167 139 250);
	--tsc-reseed-accent-soft: rgb(167 139 250 / 0.14);
	--tsc-reseed-border: rgb(39 39 42 / 0.72);
	min-width: 0;
}

.tsc-index-block--reseed {
	border-color: rgb(167 139 250 / 0.28);
	box-shadow:
		0 0 0 1px rgb(167 139 250 / 0.06) inset,
		0 12px 40px rgb(0 0 0 / 0.35);
}

.tsc-index-section-body--reseed {
	padding: clamp(0.75rem, 2vw, 1.15rem);
	min-width: 0;
}

.tsc-page-reseed .maincontent > br {
	display: none;
}

.tsc-reseed-hero {
	position: relative;
	margin-bottom: 1rem;
	padding: clamp(1rem, 3vw, 1.5rem);
	border-radius: 1rem;
	border: 1px solid rgb(167 139 250 / 0.28);
	background:
		radial-gradient(ellipse 80% 60% at 50% -20%, rgb(167 139 250 / 0.16), transparent 60%),
		linear-gradient(160deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.9));
	overflow: hidden;
}

.tsc-reseed-hero--error {
	border-color: rgb(239 68 68 / 0.35);
	background:
		radial-gradient(ellipse 80% 60% at 50% -20%, rgb(239 68 68 / 0.12), transparent 60%),
		linear-gradient(160deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.9));
}

.tsc-reseed-hero-glow {
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at 85% 15%, rgb(167 139 250 / 0.12), transparent 42%);
	pointer-events: none;
}

.tsc-reseed-hero--error .tsc-reseed-hero-glow {
	background: radial-gradient(circle at 85% 15%, rgb(239 68 68 / 0.1), transparent 42%);
}

.tsc-reseed-hero-inner { position: relative; }

.tsc-reseed-hero-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.25rem 0.55rem;
	border-radius: 999px;
	border: 1px solid rgb(167 139 250 / 0.35);
	background: rgb(167 139 250 / 0.12);
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(221 214 254);
	margin-bottom: 0.5rem;
}

.tsc-reseed-hero--error .tsc-reseed-hero-badge {
	border-color: rgb(239 68 68 / 0.35);
	background: rgb(239 68 68 / 0.1);
	color: rgb(254 202 202);
}

.tsc-reseed-hero-title {
	margin: 0 0 0.35rem;
	font-size: clamp(1.25rem, 3vw, 1.6rem);
	font-weight: 800;
	color: rgb(244 244 245);
}

.tsc-reseed-hero-sub {
	margin: 0;
	font-size: 0.8125rem;
	color: rgb(161 161 170);
	line-height: 1.55;
	max-width: 42rem;
}

.tsc-reseed-result {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 0.65rem;
	padding: 1rem 0.5rem 0.25rem;
}

.tsc-reseed-result-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 3rem;
	height: 3rem;
	border-radius: 999px;
	background: rgb(167 139 250 / 0.12);
	color: rgb(196 181 253);
}

.tsc-reseed-result--success .tsc-reseed-result-icon {
	background: rgb(74 222 128 / 0.12);
	color: rgb(134 239 172);
}

.tsc-reseed-result--already .tsc-reseed-result-icon {
	background: rgb(56 189 248 / 0.12);
	color: rgb(125 211 252);
}

.tsc-reseed-result--error .tsc-reseed-result-icon {
	background: rgb(239 68 68 / 0.12);
	color: rgb(252 165 165);
}

.tsc-reseed-result-title {
	margin: 0;
	font-size: 1rem;
	font-weight: 800;
	color: rgb(244 244 245);
}

.tsc-reseed-result-text {
	margin: 0;
	max-width: 34rem;
	font-size: 0.8125rem;
	line-height: 1.6;
	color: rgb(161 161 170);
}

.tsc-reseed-result-text strong {
	color: rgb(228 228 231);
}

.tsc-reseed-result-actions {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0.5rem;
	margin-top: 0.5rem;
}

.tsc-reseed-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.55rem 0.85rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(63 63 70 / 0.75);
	background: rgb(24 24 27 / 0.85);
	color: rgb(228 228 231);
	font-size: 0.8125rem;
	font-weight: 600;
	text-decoration: none;
	cursor: pointer;
}

.tsc-reseed-btn--primary {
	border-color: rgb(167 139 250 / 0.45);
	background: linear-gradient(180deg, rgb(167 139 250 / 0.24), rgb(167 139 250 / 0.12));
	color: rgb(237 233 254);
}

.tsc-reseed-btn--ghost:hover,
.tsc-reseed-btn--primary:hover {
	border-color: rgb(167 139 250 / 0.55);
	color: rgb(245 243 255);
}

/* ═══════════════════════════════════════════════════════════
   Premium External redirect — redir.php
   ═══════════════════════════════════════════════════════════ */

.tsc-redir-page {
	min-width: 0;
}

.tsc-index-block--redir {
	border-color: rgb(56 189 248 / 0.28);
	box-shadow:
		0 0 0 1px rgb(56 189 248 / 0.06) inset,
		0 12px 40px rgb(0 0 0 / 0.35);
}

.tsc-index-section-body--redir {
	padding: clamp(0.75rem, 2vw, 1.15rem);
	min-width: 0;
}

.tsc-page-redir .maincontent > br {
	display: none;
}

.tsc-redir-hero {
	position: relative;
	margin-bottom: 1rem;
	padding: clamp(1rem, 3vw, 1.5rem);
	border-radius: 1rem;
	border: 1px solid rgb(56 189 248 / 0.28);
	background:
		radial-gradient(ellipse 80% 60% at 50% -20%, rgb(56 189 248 / 0.16), transparent 60%),
		linear-gradient(160deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.9));
	overflow: hidden;
}

.tsc-redir-hero-glow {
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at 85% 15%, rgb(56 189 248 / 0.12), transparent 42%);
	pointer-events: none;
}

.tsc-redir-hero-inner { position: relative; }

.tsc-redir-hero-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.25rem 0.55rem;
	border-radius: 999px;
	border: 1px solid rgb(56 189 248 / 0.35);
	background: rgb(56 189 248 / 0.12);
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(186 230 253);
	margin-bottom: 0.5rem;
}

.tsc-redir-hero-title {
	margin: 0 0 0.35rem;
	font-size: clamp(1.25rem, 3vw, 1.6rem);
	font-weight: 800;
	color: rgb(244 244 245);
}

.tsc-redir-hero-sub {
	margin: 0;
	font-size: 0.8125rem;
	color: rgb(161 161 170);
	line-height: 1.55;
	max-width: 42rem;
}

.tsc-redir-hero-sub strong {
	color: rgb(186 230 253);
	font-weight: 600;
}

.tsc-redir-card {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 0.55rem;
	padding: 1.25rem 1rem;
	border-radius: 0.85rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.45);
}

.tsc-redir-card--error {
	border-color: rgb(239 68 68 / 0.35);
	background: rgb(239 68 68 / 0.06);
}

.tsc-redir-card-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 3rem;
	height: 3rem;
	border-radius: 999px;
	background: rgb(56 189 248 / 0.12);
	color: rgb(125 211 252);
}

.tsc-redir-card--error .tsc-redir-card-icon {
	background: rgb(239 68 68 / 0.12);
	color: rgb(252 165 165);
}

.tsc-redir-card-lead {
	margin: 0;
	font-size: 0.6875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(113 113 122);
}

.tsc-redir-card-host {
	margin: 0;
	font-size: 1.1rem;
	font-weight: 800;
	color: rgb(244 244 245);
	word-break: break-word;
}

.tsc-redir-card-url {
	margin: 0;
	max-width: 100%;
	font-size: 0.75rem;
	line-height: 1.5;
	color: rgb(161 161 170);
	word-break: break-all;
}

.tsc-redir-card-note {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	margin: 0.25rem 0 0;
	font-size: 0.75rem;
	color: rgb(113 113 122);
}

.tsc-redir-error-title {
	margin: 0;
	font-size: 1rem;
	font-weight: 800;
	color: rgb(254 202 202);
}

.tsc-redir-error-text {
	margin: 0;
	max-width: 30rem;
	font-size: 0.8125rem;
	line-height: 1.55;
	color: rgb(161 161 170);
}

.tsc-redir-actions {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0.5rem;
	margin-top: 0.35rem;
}

.tsc-redir-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.55rem 0.85rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(63 63 70 / 0.75);
	background: rgb(24 24 27 / 0.85);
	color: rgb(228 228 231);
	font-size: 0.8125rem;
	font-weight: 600;
	text-decoration: none;
}

.tsc-redir-btn--primary {
	border-color: rgb(56 189 248 / 0.45);
	background: linear-gradient(180deg, rgb(56 189 248 / 0.24), rgb(56 189 248 / 0.12));
	color: rgb(224 242 254);
}

.tsc-redir-btn--ghost:hover,
.tsc-redir-btn--primary:hover {
	border-color: rgb(56 189 248 / 0.55);
	color: rgb(240 249 255);
}

/* ═══════════════════════════════════════════════════════════
   Premium WHOIS — whois.php
   ═══════════════════════════════════════════════════════════ */

.tsc-whois-page {
	--tsc-whois-accent: rgb(45 212 191);
	--tsc-whois-accent-soft: rgb(45 212 191 / 0.14);
	--tsc-whois-border: rgb(39 39 42 / 0.72);
	min-width: 0;
	padding-bottom: 1.5rem;
}

.tsc-index-block--whois {
	border-color: rgb(45 212 191 / 0.28);
	box-shadow:
		0 0 0 1px rgb(45 212 191 / 0.06) inset,
		0 12px 40px rgb(0 0 0 / 0.35);
}

.tsc-index-section-body--whois {
	padding: clamp(0.75rem, 2vw, 1.15rem);
	min-width: 0;
}

.tsc-page-whois .maincontent > br {
	display: none;
}

.tsc-whois-hero {
	position: relative;
	margin-bottom: 1rem;
	padding: clamp(1rem, 3vw, 1.5rem);
	border-radius: 1rem;
	border: 1px solid rgb(45 212 191 / 0.28);
	background:
		radial-gradient(ellipse 80% 60% at 50% -20%, rgb(45 212 191 / 0.14), transparent 60%),
		linear-gradient(160deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.9));
	overflow: hidden;
}

.tsc-whois-hero-glow {
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at 85% 15%, rgb(45 212 191 / 0.12), transparent 42%);
	pointer-events: none;
}

.tsc-whois-hero-inner {
	position: relative;
}

.tsc-whois-hero-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.25rem 0.55rem;
	border-radius: 999px;
	border: 1px solid rgb(45 212 191 / 0.35);
	background: rgb(45 212 191 / 0.12);
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(153 246 228);
	margin-bottom: 0.5rem;
}

.tsc-whois-hero-title {
	margin: 0 0 0.35rem;
	font-size: clamp(1.25rem, 3vw, 1.6rem);
	font-weight: 800;
	color: rgb(244 244 245);
}

.tsc-whois-hero-sub {
	margin: 0 0 0.85rem;
	font-size: 0.8125rem;
	color: rgb(161 161 170);
	line-height: 1.55;
	max-width: 42rem;
}

.tsc-whois-hero-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
	margin-bottom: 0.85rem;
}

.tsc-whois-chip {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.35rem 0.6rem;
	border-radius: 999px;
	border: 1px solid rgb(63 63 70 / 0.75);
	background: rgb(9 9 11 / 0.55);
	font-size: 0.75rem;
	color: rgb(212 212 216);
}

.tsc-whois-chip .tsc-icon {
	color: rgb(45 212 191);
}

.tsc-whois-chip strong {
	color: rgb(240 253 250);
	font-weight: 700;
}

.tsc-whois-search {
	margin-top: 0.35rem;
	padding: 0.85rem;
	border-radius: 0.75rem;
	border: 1px solid var(--tsc-whois-border);
	background: rgb(9 9 11 / 0.45);
}

.tsc-whois-search-label {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	margin-bottom: 0.45rem;
	font-size: 0.6875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: rgb(161 161 170);
}

.tsc-whois-search-row {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.tsc-whois-input {
	flex: 1 1 12rem;
	min-width: 0;
	padding: 0.6rem 0.75rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(63 63 70 / 0.85);
	background: rgb(24 24 27 / 0.9);
	color: rgb(244 244 245);
	font-size: 0.875rem;
	font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
}

.tsc-whois-input:focus {
	outline: none;
	border-color: rgb(45 212 191 / 0.55);
	box-shadow: 0 0 0 3px rgb(45 212 191 / 0.12);
}

.tsc-whois-search-hint {
	margin: 0.45rem 0 0;
	font-size: 0.6875rem;
	color: rgb(113 113 122);
}

.tsc-whois-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.6rem 0.85rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(63 63 70 / 0.75);
	background: rgb(24 24 27 / 0.85);
	color: rgb(228 228 231);
	font-size: 0.8125rem;
	font-weight: 600;
	cursor: pointer;
	text-decoration: none;
}

.tsc-whois-btn--primary {
	border-color: rgb(45 212 191 / 0.45);
	background: linear-gradient(180deg, rgb(45 212 191 / 0.24), rgb(45 212 191 / 0.12));
	color: rgb(204 251 241);
}

.tsc-whois-btn--primary:hover {
	border-color: rgb(45 212 191 / 0.6);
	color: rgb(240 253 250);
}

.tsc-whois-section-badge {
	display: inline-flex;
	align-items: center;
	padding: 0.2rem 0.45rem;
	border-radius: 999px;
	border: 1px solid rgb(63 63 70 / 0.75);
	background: rgb(24 24 27 / 0.65);
	font-size: 0.625rem;
	font-weight: 700;
	color: rgb(161 161 170);
}

.tsc-whois-summary-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 14rem), 1fr));
	gap: 0.65rem;
}

.tsc-whois-summary-card {
	display: flex;
	gap: 0.65rem;
	align-items: flex-start;
	padding: 0.75rem;
	border-radius: 0.75rem;
	border: 1px solid var(--tsc-whois-border);
	background: rgb(9 9 11 / 0.45);
	min-width: 0;
}

.tsc-whois-summary-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.25rem;
	height: 2.25rem;
	border-radius: 0.55rem;
	background: var(--tsc-whois-accent-soft);
	color: rgb(94 234 212);
	flex-shrink: 0;
}

.tsc-whois-summary-body {
	min-width: 0;
}

.tsc-whois-summary-label {
	margin: 0 0 0.2rem;
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: rgb(113 113 122);
}

.tsc-whois-summary-value {
	margin: 0;
	font-size: 0.8125rem;
	line-height: 1.45;
	color: rgb(228 228 231);
	word-break: break-word;
}

.tsc-whois-fields {
	display: grid;
	gap: 0.45rem;
	margin: 0;
}

.tsc-whois-field {
	display: grid;
	grid-template-columns: minmax(7rem, 11rem) 1fr;
	gap: 0.5rem 0.85rem;
	padding: 0.65rem 0.75rem;
	border-radius: 0.65rem;
	border: 1px solid rgb(39 39 42 / 0.55);
	background: rgb(9 9 11 / 0.35);
	min-width: 0;
}

.tsc-whois-field--highlight {
	border-color: rgb(45 212 191 / 0.28);
	background: rgb(45 212 191 / 0.06);
}

.tsc-whois-field-key {
	margin: 0;
	font-size: 0.6875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: rgb(161 161 170);
	word-break: break-word;
}

.tsc-whois-field-value {
	margin: 0;
	font-size: 0.8125rem;
	line-height: 1.5;
	color: rgb(228 228 231);
	word-break: break-word;
	font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
}

.tsc-whois-field--highlight .tsc-whois-field-value {
	color: rgb(240 253 250);
}

.tsc-whois-link {
	color: rgb(94 234 212);
	text-decoration: none;
	word-break: break-all;
}

.tsc-whois-link:hover {
	text-decoration: underline;
}

.tsc-whois-notice {
	display: flex;
	gap: 0.65rem;
	align-items: flex-start;
	padding: 0.85rem;
	border-radius: 0.75rem;
	border: 1px solid rgb(239 68 68 / 0.35);
	background: rgb(239 68 68 / 0.08);
}

.tsc-whois-notice .tsc-icon {
	color: rgb(252 165 165);
	flex-shrink: 0;
	margin-top: 0.1rem;
}

.tsc-whois-notice-body p {
	margin: 0;
	font-size: 0.8125rem;
	line-height: 1.55;
	color: rgb(254 202 202);
}

.tsc-whois-empty {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 0.45rem;
	padding: 1.5rem 1rem;
}

.tsc-whois-empty .tsc-icon {
	color: rgb(45 212 191);
	opacity: 0.85;
}

.tsc-whois-empty-title {
	margin: 0;
	font-size: 1rem;
	font-weight: 700;
	color: rgb(244 244 245);
}

.tsc-whois-empty-text {
	margin: 0;
	max-width: 28rem;
	font-size: 0.8125rem;
	line-height: 1.55;
	color: rgb(161 161 170);
}

.tsc-whois-raw {
	border-radius: 0.65rem;
	border: 1px solid var(--tsc-whois-border);
	background: rgb(9 9 11 / 0.45);
	overflow: hidden;
}

.tsc-whois-raw-toggle {
	display: flex;
	align-items: center;
	gap: 0.4rem;
	padding: 0.65rem 0.75rem;
	font-size: 0.75rem;
	font-weight: 600;
	color: rgb(161 161 170);
	cursor: pointer;
	list-style: none;
}

.tsc-whois-raw-toggle::-webkit-details-marker {
	display: none;
}

.tsc-whois-raw[open] .tsc-whois-raw-toggle {
	border-bottom: 1px solid var(--tsc-whois-border);
	color: rgb(212 212 216);
}

.tsc-whois-raw-pre {
	margin: 0;
	padding: 0.85rem;
	max-height: 24rem;
	overflow: auto;
	font-size: 0.6875rem;
	line-height: 1.55;
	color: rgb(161 161 170);
	white-space: pre-wrap;
	word-break: break-word;
}

@media (max-width: 640px) {
	.tsc-whois-search-row {
		flex-direction: column;
	}

	.tsc-whois-btn {
		justify-content: center;
		width: 100%;
	}

	.tsc-whois-field {
		grid-template-columns: 1fr;
		gap: 0.25rem;
	}

	.tsc-whois-field-key {
		font-size: 0.625rem;
	}
}

/* ═══════════════════════════════════════════════════════════
   Premium Add User — adduser.php
   ═══════════════════════════════════════════════════════════ */

.tsc-adduser-page {
	--tsc-adduser-accent: rgb(52 211 153);
	--tsc-adduser-accent-soft: rgb(52 211 153 / 0.14);
	--tsc-adduser-border: rgb(39 39 42 / 0.72);
	min-width: 0;
	padding-bottom: 1.5rem;
}

.tsc-index-block--adduser {
	border-color: rgb(52 211 153 / 0.28);
	box-shadow:
		0 0 0 1px rgb(52 211 153 / 0.06) inset,
		0 12px 40px rgb(0 0 0 / 0.35);
}

.tsc-index-section-body--adduser {
	padding: clamp(0.75rem, 2vw, 1.15rem);
	min-width: 0;
}

.tsc-page-adduser .maincontent > br {
	display: none;
}

.tsc-adduser-hero {
	position: relative;
	margin-bottom: 1rem;
	padding: clamp(1rem, 3vw, 1.5rem);
	border-radius: 1rem;
	border: 1px solid rgb(52 211 153 / 0.28);
	background:
		radial-gradient(ellipse 80% 60% at 50% -20%, rgb(52 211 153 / 0.14), transparent 60%),
		linear-gradient(160deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.9));
	overflow: hidden;
}

.tsc-adduser-hero-glow {
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at 85% 15%, rgb(16 185 129 / 0.1), transparent 42%);
	pointer-events: none;
}

.tsc-adduser-hero-inner { position: relative; }

.tsc-adduser-hero-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.25rem 0.55rem;
	border-radius: 999px;
	border: 1px solid rgb(52 211 153 / 0.35);
	background: rgb(52 211 153 / 0.1);
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(167 243 208);
	margin-bottom: 0.5rem;
}

.tsc-adduser-hero-title {
	margin: 0 0 0.35rem;
	font-size: clamp(1.25rem, 3vw, 1.6rem);
	font-weight: 800;
	color: rgb(244 244 245);
}

.tsc-adduser-hero-sub {
	margin: 0 0 0.75rem;
	font-size: 0.8125rem;
	color: rgb(161 161 170);
	line-height: 1.5;
	max-width: 42rem;
}

.tsc-adduser-hero-sub strong {
	color: rgb(110 231 183);
}

.tsc-adduser-hero-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.tsc-adduser-chip {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.4rem 0.65rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.45);
	font-size: 0.75rem;
	color: rgb(212 212 216);
}

.tsc-adduser-chip .tsc-icon { color: rgb(52 211 153); }

.tsc-adduser-flash {
	display: flex;
	align-items: center;
	gap: 0.45rem;
	margin-bottom: 0.75rem;
	padding: 0.6rem 0.8rem;
	border-radius: 0.55rem;
	font-size: 0.75rem;
	font-weight: 600;
}

.tsc-adduser-flash--success {
	border: 1px solid rgb(74 222 128 / 0.35);
	background: rgb(74 222 128 / 0.1);
	color: rgb(134 239 172);
}

.tsc-adduser-flash--danger {
	border: 1px solid rgb(239 68 68 / 0.35);
	background: rgb(239 68 68 / 0.1);
	color: rgb(252 165 165);
}

.tsc-adduser-notice {
	display: flex;
	gap: 0.65rem;
	margin-bottom: 0.85rem;
	padding: 0.75rem 0.9rem;
	border-radius: 0.65rem;
	border: 1px solid rgb(52 211 153 / 0.25);
	background: rgb(52 211 153 / 0.06);
	font-size: 0.75rem;
	line-height: 1.55;
	color: rgb(212 212 216);
}

.tsc-adduser-notice .tsc-icon {
	color: rgb(52 211 153);
	flex-shrink: 0;
	margin-top: 0.1rem;
}

.tsc-adduser-notice-body p {
	margin: 0 0 0.45rem;
}

.tsc-adduser-notice-body p:last-child {
	margin-bottom: 0;
}

.tsc-adduser-form-panel {
	padding: 0.85rem;
	border-radius: 0.75rem;
	border: 1px solid var(--tsc-adduser-border);
	background: rgb(9 9 11 / 0.45);
}

.tsc-adduser-form-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 14rem), 1fr));
	gap: 0.75rem;
}

.tsc-adduser-field {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
	min-width: 0;
}

.tsc-adduser-label {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(161 161 170);
}

.tsc-adduser-input {
	width: 100%;
	padding: 0.55rem 0.75rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(9 9 11 / 0.75);
	color: rgb(244 244 245);
	font-size: 0.8125rem;
}

.tsc-adduser-input:focus {
	outline: none;
	border-color: rgb(52 211 153 / 0.55);
	box-shadow: 0 0 0 3px rgb(52 211 153 / 0.15);
}

.tsc-adduser-form-actions {
	margin-top: 0.85rem;
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.tsc-adduser-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.35rem;
	padding: 0.55rem 0.9rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(24 24 27 / 0.85);
	color: rgb(212 212 216);
	font-size: 0.75rem;
	font-weight: 700;
	cursor: pointer;
	transition: border-color 0.15s, background 0.15s, color 0.15s;
}

.tsc-adduser-btn--primary {
	border-color: rgb(52 211 153 / 0.45);
	background: rgb(52 211 153 / 0.14);
	color: rgb(167 243 208);
}

.tsc-adduser-btn--primary:hover {
	border-color: rgb(52 211 153 / 0.6);
	background: rgb(52 211 153 / 0.22);
	color: rgb(209 250 229);
}

@media (max-width: 767px) {
	.tsc-adduser-form-grid {
		grid-template-columns: 1fr;
	}

	.tsc-adduser-btn {
		width: 100%;
	}
}

/* ═══════════════════════════════════════════════════════════
   Premium Seedbonus — mybonus.php (details schema)
   ═══════════════════════════════════════════════════════════ */

.tsc-mybonus-page {
	--tsc-mybonus-accent: rgb(251 146 60);
	--tsc-mybonus-accent-soft: rgb(251 146 60 / 0.14);
	--tsc-mybonus-glow: rgb(251 146 60 / 0.22);
	--tsc-mybonus-border: rgb(39 39 42 / 0.72);
	min-width: 0;
}

.tsc-index-block--mybonus {
	border-color: rgb(251 146 60 / 0.28);
	box-shadow:
		0 0 0 1px rgb(251 146 60 / 0.06) inset,
		0 12px 40px rgb(0 0 0 / 0.35);
}

.tsc-index-section-body--mybonus {
	padding: clamp(0.75rem, 2vw, 1.15rem);
	min-width: 0;
}

.tsc-page-mybonus .maincontent > br {
	display: none;
}

.tsc-mybonus-hero {
	position: relative;
	margin-bottom: 1rem;
	padding: clamp(1rem, 3vw, 1.6rem);
	border-radius: 1rem;
	border: 1px solid rgb(251 146 60 / 0.28);
	background:
		radial-gradient(ellipse 80% 60% at 50% -20%, rgb(251 146 60 / 0.18), transparent 60%),
		linear-gradient(160deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.9));
	overflow: hidden;
	min-height: auto;
}

.tsc-details-hero--mybonus .tsc-details-hero-inner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: clamp(0.85rem, 2.5vw, 1.35rem);
}

.tsc-mybonus-hero-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: clamp(3.5rem, 10vw, 4.5rem);
	height: clamp(3.5rem, 10vw, 4.5rem);
	border-radius: 1rem;
	border: 1px solid rgb(251 146 60 / 0.35);
	background: rgb(251 146 60 / 0.12);
	color: rgb(251 146 60);
	flex-shrink: 0;
}

.tsc-mybonus-hero-copy { min-width: 0; flex: 1 1 14rem; }

.tsc-mybonus-hero-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.25rem 0.55rem;
	border-radius: 999px;
	border: 1px solid rgb(251 146 60 / 0.35);
	background: rgb(251 146 60 / 0.1);
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(254 215 170);
	margin-bottom: 0.5rem;
}

.tsc-mybonus-hero-title {
	margin: 0 0 0.35rem;
	font-size: clamp(1.25rem, 3vw, 1.75rem);
	font-weight: 800;
	color: rgb(244 244 245);
}

.tsc-mybonus-hero-sub {
	margin: 0 0 0.75rem;
	font-size: clamp(0.75rem, 2vw, 0.875rem);
	color: rgb(161 161 170);
	line-height: 1.5;
	max-width: 42rem;
}

.tsc-mybonus-hero-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
}

.tsc-mybonus-chip {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.3rem 0.55rem;
	border-radius: 999px;
	border: 1px solid var(--tsc-mybonus-border);
	background: rgb(24 24 27 / 0.55);
	font-size: 0.6875rem;
	color: rgb(212 212 216);
}

.tsc-mybonus-chip .tsc-icon { color: rgb(251 146 60 / 0.9); }

.tsc-mybonus-chip--points {
	border-color: rgb(251 146 60 / 0.35);
	background: rgb(251 146 60 / 0.1);
}

.tsc-mybonus-chip--points strong {
	color: rgb(254 215 170);
	font-size: 0.8125rem;
}

.tsc-mybonus-header-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.25rem 0.6rem;
	border-radius: 999px;
	border: 1px solid rgb(251 146 60 / 0.35);
	background: rgb(251 146 60 / 0.1);
	font-size: 0.6875rem;
	font-weight: 700;
	color: rgb(254 215 170);
}

.tsc-mybonus-header-badge .tsc-icon { color: rgb(251 146 60); }

.tsc-mybonus-flash { margin-bottom: 1rem; }

.tsc-mybonus-hero-stats {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 9.5rem), 1fr));
	gap: 0.55rem;
	margin-bottom: 0.85rem;
}

.tsc-mybonus-stat {
	display: flex;
	align-items: center;
	gap: 0.55rem;
	padding: 0.65rem 0.75rem;
	border-radius: 0.75rem;
	border: 1px solid var(--tsc-mybonus-border);
	background: rgb(9 9 11 / 0.45);
	min-width: 0;
}

.tsc-mybonus-stat--accent {
	border-color: rgb(251 146 60 / 0.35);
	background: linear-gradient(135deg, rgb(251 146 60 / 0.14), rgb(9 9 11 / 0.35));
}

.tsc-mybonus-stat-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2rem;
	height: 2rem;
	border-radius: 0.55rem;
	background: rgb(251 146 60 / 0.12);
	color: rgb(251 146 60);
	flex-shrink: 0;
}

.tsc-mybonus-stat-body {
	display: flex;
	flex-direction: column;
	gap: 0.1rem;
	min-width: 0;
}

.tsc-mybonus-stat-label {
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: rgb(113 113 122);
}

.tsc-mybonus-stat-value {
	font-size: 0.8125rem;
	font-weight: 800;
	color: rgb(244 244 245);
	line-height: 1.2;
}

.tsc-mybonus-progress {
	margin-top: 0.15rem;
	padding: 0.75rem 0.85rem;
	border-radius: 0.75rem;
	border: 1px solid rgb(251 146 60 / 0.22);
	background: rgb(9 9 11 / 0.5);
}

.tsc-mybonus-progress--complete {
	display: flex;
	align-items: center;
	gap: 0.45rem;
	font-size: 0.75rem;
	font-weight: 600;
	color: rgb(187 247 208);
	border-color: rgb(34 197 94 / 0.28);
	background: rgb(34 197 94 / 0.08);
}

.tsc-mybonus-progress-head {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 0.5rem;
	margin-bottom: 0.45rem;
	font-size: 0.75rem;
	color: rgb(212 212 216);
}

.tsc-mybonus-progress-label {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
}

.tsc-mybonus-progress-pct {
	font-weight: 800;
	color: rgb(254 215 170);
}

.tsc-mybonus-progress-track {
	height: 0.45rem;
	border-radius: 999px;
	background: rgb(39 39 42 / 0.85);
	overflow: hidden;
}

.tsc-mybonus-progress-fill {
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, rgb(251 146 60), rgb(234 88 12));
	box-shadow: 0 0 12px rgb(251 146 60 / 0.45);
	transition: width 0.35s ease;
}

.tsc-mybonus-progress-meta {
	display: flex;
	align-items: center;
	gap: 0.35rem;
	margin-top: 0.45rem;
	font-size: 0.6875rem;
	color: rgb(161 161 170);
}

.tsc-mybonus-info-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 14rem), 1fr));
	gap: 0.65rem;
	margin-bottom: 1rem;
}

.tsc-mybonus-info-card {
	padding: 0.85rem;
	border-radius: 0.8rem;
	border: 1px solid var(--tsc-mybonus-border);
	background: linear-gradient(160deg, rgb(24 24 27 / 0.8), rgb(9 9 11 / 0.55));
}

.tsc-mybonus-info-card-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.1rem;
	height: 2.1rem;
	margin-bottom: 0.55rem;
	border-radius: 0.6rem;
	border: 1px solid rgb(251 146 60 / 0.28);
	background: rgb(251 146 60 / 0.1);
	color: rgb(251 146 60);
}

.tsc-mybonus-info-card-title {
	margin: 0 0 0.35rem;
	font-size: 0.8125rem;
	font-weight: 700;
	color: rgb(244 244 245);
}

.tsc-mybonus-info-card-text {
	margin: 0;
	font-size: 0.75rem;
	color: rgb(161 161 170);
	line-height: 1.5;
}

.tsc-mybonus-form { min-width: 0; }

.tsc-mybonus-rewards {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 15rem), 1fr));
	gap: 0.75rem;
}

.tsc-mybonus-reward {
	display: flex;
	flex-direction: column;
	gap: 0.65rem;
	padding: 0.9rem;
	border-radius: 0.9rem;
	border: 1px solid var(--tsc-mybonus-border);
	background: linear-gradient(165deg, rgb(24 24 27 / 0.92), rgb(9 9 11 / 0.78));
	box-shadow: 0 8px 24px rgb(0 0 0 / 0.2);
	transition: border-color 0.15s, transform 0.15s, box-shadow 0.15s;
}

.tsc-mybonus-reward--ready {
	border-color: rgb(251 146 60 / 0.38);
	box-shadow:
		0 0 0 1px rgb(251 146 60 / 0.06) inset,
		0 10px 28px rgb(251 146 60 / 0.08);
}

.tsc-mybonus-reward--ready:hover {
	transform: translateY(-2px);
	border-color: rgb(251 146 60 / 0.55);
}

.tsc-mybonus-reward--locked { opacity: 0.88; }

.tsc-mybonus-reward-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 3rem;
	height: 3rem;
	border-radius: 0.85rem;
	border: 1px solid rgb(251 146 60 / 0.25);
	background: rgb(251 146 60 / 0.1);
	color: rgb(251 146 60);
}

.tsc-mybonus-reward--locked .tsc-mybonus-reward-icon {
	color: rgb(113 113 122);
	border-color: rgb(63 63 70 / 0.55);
	background: rgb(24 24 27 / 0.65);
}

.tsc-mybonus-reward-body { flex: 1; min-width: 0; }

.tsc-mybonus-reward-top {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 0.5rem;
	margin-bottom: 0.35rem;
}

.tsc-mybonus-reward-id,
.tsc-mybonus-reward-cost {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	font-size: 0.6875rem;
	font-weight: 700;
	color: rgb(161 161 170);
}

.tsc-mybonus-reward-cost {
	padding: 0.15rem 0.45rem;
	border-radius: 999px;
	border: 1px solid rgb(251 146 60 / 0.25);
	background: rgb(251 146 60 / 0.08);
	color: rgb(254 215 170);
}

.tsc-mybonus-reward-title {
	margin: 0 0 0.35rem;
	font-size: 0.9375rem;
	font-weight: 800;
	color: rgb(244 244 245);
	line-height: 1.25;
}

.tsc-mybonus-reward-hint {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	margin: 0;
	font-size: 0.6875rem;
	font-weight: 600;
	color: rgb(248 113 113);
}

.tsc-mybonus-reward-hint--ready { color: rgb(74 222 128); }

.tsc-mybonus-reward-action .tsc-mybonus-btn { width: 100%; }

.tsc-mybonus-table-shell {
	border: 1px solid var(--tsc-mybonus-border);
	border-radius: 0.85rem;
	background: rgb(9 9 11 / 0.45);
	overflow: hidden;
}

.tsc-mybonus-table-wrap,
.tsc-mybonus-table-shell { overflow-x: auto; }

.tsc-mybonus-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.8125rem;
}

.tsc-mybonus-table thead th {
	padding: 0.7rem 0.75rem;
	text-align: left;
	font-size: 0.6875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: rgb(161 161 170);
	background: rgb(24 24 27 / 0.85);
	border-bottom: 1px solid var(--tsc-mybonus-border);
}

.tsc-mybonus-table thead th .tsc-icon { color: rgb(251 146 60 / 0.85); margin-right: 0.2rem; }

.tsc-mybonus-table tbody td {
	padding: 0.7rem 0.75rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.35);
	color: rgb(212 212 216);
	vertical-align: middle;
}

.tsc-mybonus-row:hover td { background: rgb(24 24 27 / 0.45); }
.tsc-mybonus-row--empty td { padding: 0; border: none; background: transparent !important; }

.tsc-mybonus-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.35rem;
	padding: 0.45rem 0.75rem;
	border-radius: 0.55rem;
	border: 1px solid var(--tsc-mybonus-border);
	background: rgb(24 24 27 / 0.85);
	color: rgb(244 244 245);
	font-size: 0.75rem;
	font-weight: 600;
	cursor: pointer;
	transition: border-color 0.15s, background 0.15s;
}

.tsc-mybonus-btn--primary {
	border-color: rgb(251 146 60 / 0.45);
	background: linear-gradient(135deg, rgb(251 146 60 / 0.22), rgb(234 88 12 / 0.12));
	color: rgb(254 243 199);
}

.tsc-mybonus-btn--primary:hover {
	border-color: rgb(251 146 60 / 0.65);
	background: linear-gradient(135deg, rgb(251 146 60 / 0.32), rgb(234 88 12 / 0.18));
}

.tsc-mybonus-btn--disabled {
	opacity: 0.55;
	cursor: not-allowed;
}

.tsc-mybonus-rank-nav {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem;
}

.tsc-mybonus-rank-link {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	padding: 0.35rem 0.65rem;
	border-radius: 999px;
	border: 1px solid var(--tsc-mybonus-border);
	background: rgb(9 9 11 / 0.45);
	font-size: 0.6875rem;
	font-weight: 600;
	color: rgb(212 212 216);
	text-decoration: none;
}

.tsc-mybonus-rank-link .tsc-icon { color: rgb(251 146 60 / 0.85); }

.tsc-mybonus-rank-link:hover {
	border-color: rgb(251 146 60 / 0.45);
	color: rgb(254 215 170);
}

.tsc-mybonus-rank-link--active {
	border-color: rgb(251 146 60 / 0.55);
	background: rgb(251 146 60 / 0.15);
	color: rgb(254 215 170);
}

.tsc-mybonus-rank {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	padding: 0.2rem 0.5rem;
	border-radius: 999px;
	font-size: 0.75rem;
	font-weight: 800;
	border: 1px solid rgb(63 63 70 / 0.55);
	background: rgb(24 24 27 / 0.65);
	color: rgb(212 212 216);
}

.tsc-mybonus-rank--gold {
	border-color: rgb(250 204 21 / 0.45);
	background: rgb(250 204 21 / 0.12);
	color: rgb(254 240 138);
}

.tsc-mybonus-rank--silver {
	border-color: rgb(161 161 170 / 0.45);
	background: rgb(161 161 170 / 0.12);
	color: rgb(228 228 231);
}

.tsc-mybonus-rank--bronze {
	border-color: rgb(217 119 6 / 0.45);
	background: rgb(217 119 6 / 0.12);
	color: rgb(253 186 116);
}

.tsc-mybonus-row--top1 td { background: rgb(250 204 21 / 0.04); }
.tsc-mybonus-row--top2 td { background: rgb(161 161 170 / 0.04); }
.tsc-mybonus-row--top3 td { background: rgb(217 119 6 / 0.05); }

.tsc-mybonus-user-link,
.tsc-mybonus-user-anon,
.tsc-mybonus-user-deleted,
.tsc-mybonus-points,
.tsc-mybonus-date {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
}

.tsc-mybonus-user-link { text-decoration: none; }
.tsc-mybonus-user-anon { color: rgb(161 161 170); font-weight: 600; }
.tsc-mybonus-user-deleted { color: rgb(113 113 122); font-style: italic; }
.tsc-mybonus-points { font-weight: 700; color: rgb(254 215 170); }
.tsc-mybonus-points .tsc-icon { color: rgb(251 146 60); }
.tsc-mybonus-date { font-size: 0.75rem; color: rgb(161 161 170); }
.tsc-mybonus-date .tsc-icon { color: rgb(113 113 122); }

.tsc-mybonus-empty {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.5rem;
	padding: 2rem 1rem;
	color: rgb(161 161 170);
	text-align: center;
}

.tsc-mybonus-empty p { margin: 0; font-size: 0.8125rem; }

@media (max-width: 767px) {
	.tsc-mybonus-hero-stats {
		grid-template-columns: 1fr;
	}

	.tsc-mybonus-rewards {
		grid-template-columns: 1fr;
	}

	.tsc-mybonus-info-grid {
		grid-template-columns: 1fr;
	}

	.tsc-mybonus-table-shell {
		border: none;
		background: transparent;
		overflow: visible;
	}

	.tsc-mybonus-table {
		display: block;
		min-width: 0;
		width: 100%;
	}

	.tsc-mybonus-table thead { display: none; }

	.tsc-mybonus-table tbody {
		display: flex;
		flex-direction: column;
		gap: 0.75rem;
	}

	.tsc-mybonus-row {
		display: block;
		border: 1px solid var(--tsc-mybonus-border);
		border-radius: 0.85rem;
		background: linear-gradient(160deg, rgb(24 24 27 / 0.92), rgb(9 9 11 / 0.82));
		box-shadow: 0 10px 28px rgb(0 0 0 / 0.22);
		overflow: hidden;
	}

	.tsc-mybonus-row:hover td { background: transparent; }

	.tsc-mybonus-row td {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		gap: 0.75rem;
		padding: 0.55rem 0.75rem;
		border-bottom: 1px solid rgb(39 39 42 / 0.35);
	}

	.tsc-mybonus-row td:last-child { border-bottom: none; }

	.tsc-mybonus-row td::before {
		content: attr(data-label);
		flex-shrink: 0;
		font-size: 0.625rem;
		font-weight: 700;
		text-transform: uppercase;
		letter-spacing: 0.04em;
		color: rgb(113 113 122);
	}

	.tsc-td-action {
		justify-content: flex-end;
	}

	.tsc-td-action .tsc-mybonus-btn {
		width: 100%;
	}

	.tsc-details-hero--mybonus .tsc-details-hero-inner {
		flex-direction: column;
		align-items: flex-start;
	}
}

/* ═══════════════════════════════════════════════════════════
   Premium BitBucket — bitbucket.php (live image host)
   ═══════════════════════════════════════════════════════════ */

.tsc-bitbucket-page {
	--tsc-bb-accent: rgb(251 146 60);
	--tsc-bb-accent-soft: rgb(251 146 60 / 0.14);
	min-width: 0;
}

.tsc-page-bitbucket .maincontent > br {
	display: none;
}

.tsc-index-section-body--bitbucket {
	padding: clamp(0.75rem, 2vw, 1.15rem);
	min-width: 0;
}

.tsc-bitbucket-is-hidden {
	display: none !important;
}

.tsc-bitbucket-hero {
	position: relative;
	margin-bottom: 1rem;
	padding: clamp(1rem, 3vw, 1.6rem);
	border-radius: 1rem;
	border: 1px solid rgb(251 146 60 / 0.28);
	background:
		radial-gradient(ellipse 80% 55% at 12% -10%, rgb(251 146 60 / 0.2), transparent 58%),
		radial-gradient(ellipse 60% 45% at 95% 20%, rgb(56 189 248 / 0.08), transparent 50%),
		linear-gradient(160deg, rgb(24 24 27 / 0.96), rgb(9 9 11 / 0.9));
	overflow: hidden;
}

.tsc-bitbucket-hero-glow {
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at 70% 10%, rgb(251 146 60 / 0.1), transparent 42%);
	pointer-events: none;
}

.tsc-bitbucket-hero-inner { position: relative; }

.tsc-bitbucket-hero-top {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	margin-bottom: 0.85rem;
}

.tsc-bitbucket-hero-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.25rem 0.55rem;
	border-radius: 999px;
	border: 1px solid rgb(251 146 60 / 0.35);
	background: rgb(251 146 60 / 0.1);
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(254 215 170);
	margin-bottom: 0.45rem;
}

.tsc-bitbucket-hero-title {
	margin: 0 0 0.35rem;
	font-size: clamp(1.25rem, 3vw, 1.75rem);
	font-weight: 800;
	color: rgb(244 244 245);
}

.tsc-bitbucket-hero-sub {
	margin: 0;
	font-size: 0.8125rem;
	color: rgb(161 161 170);
	line-height: 1.55;
	max-width: 38rem;
}

.tsc-bitbucket-quota-ring {
	--tsc-bb-pct: 0;
	position: relative;
	width: 6.5rem;
	height: 6.5rem;
	flex-shrink: 0;
}

.tsc-bitbucket-quota-svg {
	width: 100%;
	height: 100%;
	transform: rotate(-90deg);
}

.tsc-bitbucket-quota-track {
	fill: none;
	stroke: rgb(39 39 42 / 0.85);
	stroke-width: 8;
}

.tsc-bitbucket-quota-fill {
	fill: none;
	stroke: rgb(251 146 60);
	stroke-width: 8;
	stroke-linecap: round;
	stroke-dasharray: 326.7;
	stroke-dashoffset: calc(326.7 - (326.7 * var(--tsc-bb-pct) / 100));
	transition: stroke-dashoffset 0.6s ease, stroke 0.3s ease;
}

.tsc-bitbucket-quota-ring--warn .tsc-bitbucket-quota-fill { stroke: rgb(250 204 21); }
.tsc-bitbucket-quota-ring--danger .tsc-bitbucket-quota-fill { stroke: rgb(248 113 113); }

.tsc-bitbucket-quota-center {
	position: absolute;
	inset: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	font-size: 0.6875rem;
	color: rgb(161 161 170);
}

.tsc-bitbucket-quota-center strong {
	font-size: 1.1rem;
	color: rgb(244 244 245);
	line-height: 1.1;
}

.tsc-bitbucket-hero-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin-bottom: 0.75rem;
}

.tsc-bitbucket-chip {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.4rem 0.65rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.45);
	font-size: 0.75rem;
	color: rgb(212 212 216);
}

.tsc-bitbucket-chip .tsc-icon { color: rgb(251 146 60); }
.tsc-bitbucket-chip--link {
	text-decoration: none;
	transition: border-color 0.15s, color 0.15s, background 0.15s;
}
.tsc-bitbucket-chip--link:hover {
	color: rgb(251 146 60);
	border-color: rgb(251 146 60 / 0.4);
}

.tsc-bitbucket-quota-bar {
	height: 0.45rem;
	border-radius: 999px;
	background: rgb(39 39 42 / 0.85);
	overflow: hidden;
	margin-bottom: 0.35rem;
}

.tsc-bitbucket-quota-bar-fill {
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, rgb(251 146 60), rgb(253 186 116));
	transition: width 0.55s ease;
}

.tsc-bitbucket-quota-bar--warn .tsc-bitbucket-quota-bar-fill {
	background: linear-gradient(90deg, rgb(234 179 8), rgb(250 204 21));
}
.tsc-bitbucket-quota-bar--danger .tsc-bitbucket-quota-bar-fill {
	background: linear-gradient(90deg, rgb(239 68 68), rgb(248 113 113));
}

.tsc-bitbucket-quota-label {
	margin: 0;
	font-size: 0.6875rem;
	color: rgb(113 113 122);
}

.tsc-bitbucket-notice {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	gap: 0.75rem;
	padding: 0.85rem 1rem;
	margin-bottom: 1rem;
	border-radius: 0.75rem;
	border: 1px solid rgb(234 179 8 / 0.25);
	background: rgb(234 179 8 / 0.08);
	color: rgb(253 224 71);
	font-size: 0.8125rem;
	line-height: 1.5;
}

.tsc-bitbucket-notice p { margin: 0 0 0.35rem; }
.tsc-bitbucket-notice p:last-child { margin-bottom: 0; }

.tsc-bitbucket-upload { min-width: 0; }

.tsc-bitbucket-dropzone {
	position: relative;
	display: block;
	padding: clamp(1.25rem, 4vw, 2rem);
	border-radius: 1rem;
	border: 2px dashed rgb(63 63 70 / 0.75);
	background:
		radial-gradient(circle at 50% 0%, rgb(251 146 60 / 0.08), transparent 55%),
		rgb(9 9 11 / 0.45);
	cursor: pointer;
	transition: border-color 0.2s, background 0.2s, transform 0.2s, box-shadow 0.2s;
	overflow: hidden;
}

.tsc-bitbucket-dropzone:hover,
.tsc-bitbucket-dropzone:focus-visible {
	border-color: rgb(251 146 60 / 0.55);
	box-shadow: 0 0 0 1px rgb(251 146 60 / 0.12) inset, 0 16px 40px rgb(0 0 0 / 0.25);
	outline: none;
}

.tsc-bitbucket-dropzone--active {
	border-color: rgb(251 146 60);
	background: rgb(251 146 60 / 0.08);
	transform: scale(1.01);
}

.tsc-bitbucket-dropzone-orbit {
	position: absolute;
	inset: -40%;
	background: conic-gradient(from 0deg, transparent, rgb(251 146 60 / 0.15), transparent 35%);
	animation: tsc-bb-orbit 4s linear infinite;
	opacity: 0;
	transition: opacity 0.25s;
	pointer-events: none;
}

.tsc-bitbucket-dropzone--active .tsc-bitbucket-dropzone-orbit,
.tsc-bitbucket-dropzone:hover .tsc-bitbucket-dropzone-orbit {
	opacity: 1;
}

@keyframes tsc-bb-orbit {
	to { transform: rotate(360deg); }
}

.tsc-bitbucket-dropzone-inner {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.35rem;
	text-align: center;
}

.tsc-bitbucket-dropzone-icon {
	color: rgb(251 146 60);
	font-size: 2rem;
}

.tsc-bitbucket-dropzone-title {
	font-size: 1rem;
	font-weight: 800;
	color: rgb(244 244 245);
}

.tsc-bitbucket-dropzone-sub,
.tsc-bitbucket-dropzone-meta {
	font-size: 0.75rem;
	color: rgb(161 161 170);
}

.tsc-bitbucket-file-input {
	position: absolute;
	width: 0.1px;
	height: 0.1px;
	opacity: 0;
	overflow: hidden;
	z-index: -1;
}

.tsc-bitbucket-avatar-toggle {
	display: inline-flex;
	align-items: center;
	gap: 0.55rem;
	margin-top: 0.75rem;
	cursor: pointer;
	font-size: 0.8125rem;
	color: rgb(212 212 216);
}

.tsc-bitbucket-avatar-toggle input { position: absolute; opacity: 0; pointer-events: none; }

.tsc-bitbucket-avatar-toggle-box {
	width: 1.1rem;
	height: 1.1rem;
	border-radius: 0.3rem;
	border: 1px solid rgb(63 63 70);
	background: rgb(9 9 11 / 0.65);
	transition: background 0.15s, border-color 0.15s;
}

.tsc-bitbucket-avatar-toggle input:checked + .tsc-bitbucket-avatar-toggle-box {
	border-color: rgb(251 146 60);
	background: rgb(251 146 60 / 0.25);
	box-shadow: inset 0 0 0 2px rgb(9 9 11);
}

.tsc-bitbucket-avatar-toggle-text em {
	color: rgb(113 113 122);
	font-style: normal;
	font-size: 0.6875rem;
}

.tsc-bitbucket-upload-queue {
	display: flex;
	flex-direction: column;
	gap: 0.55rem;
	margin-top: 0.85rem;
}

.tsc-bitbucket-queue-item {
	padding: 0.75rem 0.85rem;
	border-radius: 0.75rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.55);
}

.tsc-bitbucket-queue-head {
	display: flex;
	justify-content: space-between;
	gap: 0.75rem;
	margin-bottom: 0.45rem;
	font-size: 0.75rem;
}

.tsc-bitbucket-queue-name {
	font-weight: 700;
	color: rgb(244 244 245);
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.tsc-bitbucket-queue-status { color: rgb(161 161 170); flex-shrink: 0; }
.tsc-bitbucket-queue-item--uploading .tsc-bitbucket-queue-status { color: rgb(251 146 60); }
.tsc-bitbucket-queue-item--done .tsc-bitbucket-queue-status { color: rgb(74 222 128); }
.tsc-bitbucket-queue-item--error .tsc-bitbucket-queue-status { color: rgb(248 113 113); }

.tsc-bitbucket-queue-track {
	position: relative;
	height: 0.45rem;
	border-radius: 999px;
	background: rgb(39 39 42 / 0.85);
	overflow: hidden;
}

.tsc-bitbucket-queue-fill {
	height: 100%;
	width: 0;
	border-radius: inherit;
	background: linear-gradient(90deg, rgb(251 146 60), rgb(253 186 116));
	transition: width 0.15s linear;
}

.tsc-bitbucket-queue-shimmer {
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, transparent, rgb(255 255 255 / 0.18), transparent);
	animation: tsc-bb-shimmer 1.2s ease-in-out infinite;
	opacity: 0;
}

.tsc-bitbucket-queue-item--uploading .tsc-bitbucket-queue-shimmer { opacity: 1; }

@keyframes tsc-bb-shimmer {
	0% { transform: translateX(-100%); }
	100% { transform: translateX(100%); }
}

.tsc-bitbucket-queue-meta {
	display: flex;
	justify-content: space-between;
	margin-top: 0.3rem;
	font-size: 0.6875rem;
	color: rgb(113 113 122);
}

.tsc-bitbucket-gallery-toolbar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.65rem;
	margin-bottom: 0.85rem;
}

.tsc-bitbucket-gallery-meta {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	font-size: 0.75rem;
	font-weight: 700;
	color: rgb(161 161 170);
}

.tsc-bitbucket-search {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	flex: 1;
	min-width: min(100%, 14rem);
	padding: 0.45rem 0.7rem;
	border-radius: 0.65rem;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(9 9 11 / 0.55);
}

.tsc-bitbucket-search input {
	flex: 1;
	min-width: 0;
	border: 0;
	background: transparent;
	color: rgb(244 244 245);
	font-size: 0.8125rem;
	outline: none;
}

.tsc-bitbucket-gallery-actions {
	display: inline-flex;
	gap: 0.4rem;
	margin-left: auto;
}

.tsc-bitbucket-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.45rem 0.75rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(24 24 27 / 0.85);
	color: rgb(212 212 216);
	font-size: 0.75rem;
	font-weight: 700;
	cursor: pointer;
	transition: border-color 0.15s, background 0.15s, color 0.15s;
}

.tsc-bitbucket-btn:hover:not(:disabled) {
	border-color: rgb(251 146 60 / 0.45);
	color: rgb(251 146 60);
}

.tsc-bitbucket-btn:disabled {
	opacity: 0.45;
	cursor: not-allowed;
}

.tsc-bitbucket-btn--ghost { background: transparent; }
.tsc-bitbucket-btn--danger {
	border-color: rgb(239 68 68 / 0.35);
	color: rgb(248 113 113);
}

.tsc-bitbucket-gallery {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 11rem), 1fr));
	gap: 0.75rem;
}

.tsc-bitbucket-card {
	position: relative;
	display: flex;
	flex-direction: column;
	border-radius: 0.85rem;
	border: 1px solid rgb(39 39 42 / 0.72);
	background: linear-gradient(165deg, rgb(24 24 27 / 0.94), rgb(9 9 11 / 0.88));
	overflow: hidden;
	box-shadow: 0 10px 28px rgb(0 0 0 / 0.2);
	transition: transform 0.2s, border-color 0.2s, box-shadow 0.2s;
}

.tsc-bitbucket-card--new {
	animation: tsc-bb-card-in 0.55s ease;
	border-color: rgb(251 146 60 / 0.45);
	box-shadow: 0 0 0 1px rgb(251 146 60 / 0.15) inset, 0 16px 36px rgb(251 146 60 / 0.12);
}

.tsc-bitbucket-card--removing {
	animation: tsc-bb-card-out 0.28s ease forwards;
}

@keyframes tsc-bb-card-in {
	from { opacity: 0; transform: translateY(12px) scale(0.96); }
	to { opacity: 1; transform: none; }
}

@keyframes tsc-bb-card-out {
	to { opacity: 0; transform: scale(0.92); }
}

.tsc-bitbucket-card-select {
	position: absolute;
	top: 0.45rem;
	left: 0.45rem;
	z-index: 3;
}

.tsc-bitbucket-card-select input { position: absolute; opacity: 0; pointer-events: none; }

.tsc-bitbucket-card-select-ui {
	display: block;
	width: 1.15rem;
	height: 1.15rem;
	border-radius: 0.35rem;
	border: 1px solid rgb(255 255 255 / 0.35);
	background: rgb(0 0 0 / 0.45);
	box-shadow: 0 2px 8px rgb(0 0 0 / 0.35);
	transition: background 0.15s, border-color 0.15s;
}

.tsc-bitbucket-card-select input:checked + .tsc-bitbucket-card-select-ui {
	background: rgb(251 146 60);
	border-color: rgb(251 146 60);
}

.tsc-bitbucket-card-preview {
	position: relative;
	display: block;
	width: 100%;
	padding: 0;
	border: 0;
	background: rgb(0 0 0 / 0.35);
	cursor: zoom-in;
	aspect-ratio: 1 / 1;
	overflow: hidden;
}

.tsc-bitbucket-card-preview img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.35s ease;
}

.tsc-bitbucket-card:hover .tsc-bitbucket-card-preview img {
	transform: scale(1.05);
}

.tsc-bitbucket-card-overlay {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgb(0 0 0 / 0.35);
	color: rgb(255 255 255);
	opacity: 0;
	transition: opacity 0.2s;
}

.tsc-bitbucket-card-preview:hover .tsc-bitbucket-card-overlay { opacity: 1; }

.tsc-bitbucket-card-body { padding: 0.65rem 0.7rem 0.75rem; }

.tsc-bitbucket-card-name {
	margin: 0 0 0.15rem;
	font-size: 0.75rem;
	font-weight: 700;
	color: rgb(244 244 245);
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.tsc-bitbucket-card-meta {
	margin: 0 0 0.45rem;
	font-size: 0.6875rem;
	color: rgb(113 113 122);
}

.tsc-bitbucket-card-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.3rem;
}

.tsc-bitbucket-copy,
.tsc-bitbucket-delete-one {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.85rem;
	height: 1.85rem;
	border-radius: 0.45rem;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(9 9 11 / 0.65);
	color: rgb(161 161 170);
	cursor: pointer;
	transition: border-color 0.15s, color 0.15s, background 0.15s;
}

.tsc-bitbucket-copy:hover {
	border-color: rgb(251 146 60 / 0.45);
	color: rgb(251 146 60);
	background: rgb(251 146 60 / 0.1);
}

.tsc-bitbucket-delete-one:hover {
	border-color: rgb(239 68 68 / 0.45);
	color: rgb(248 113 113);
	background: rgb(239 68 68 / 0.1);
}

.tsc-bitbucket-empty,
.tsc-bitbucket-no-results {
	grid-column: 1 / -1;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	padding: 2.5rem 1rem;
	border-radius: 0.85rem;
	border: 1px dashed rgb(63 63 70 / 0.65);
	color: rgb(161 161 170);
	text-align: center;
}

.tsc-bitbucket-empty-hint {
	font-size: 0.75rem;
	color: rgb(113 113 122);
}

.tsc-bitbucket-lightbox {
	position: fixed;
	inset: 0;
	z-index: 1200;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 1rem;
}

.tsc-bitbucket-lightbox-backdrop {
	position: absolute;
	inset: 0;
	background: rgb(0 0 0 / 0.82);
	backdrop-filter: blur(6px);
}

.tsc-bitbucket-lightbox-panel {
	position: relative;
	max-width: min(96vw, 56rem);
	max-height: 90vh;
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
}

.tsc-bitbucket-lightbox-panel img {
	max-width: 100%;
	max-height: calc(90vh - 4rem);
	border-radius: 0.75rem;
	box-shadow: 0 24px 60px rgb(0 0 0 / 0.45);
}

.tsc-bitbucket-lightbox-close {
	position: absolute;
	top: -0.25rem;
	right: -0.25rem;
	width: 2rem;
	height: 2rem;
	border-radius: 999px;
	border: 1px solid rgb(63 63 70);
	background: rgb(24 24 27);
	color: rgb(244 244 245);
	cursor: pointer;
	z-index: 2;
}

.tsc-bitbucket-lightbox-actions {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0.45rem;
}

body.tsc-bitbucket-lightbox-open { overflow: hidden; }

.tsc-bitbucket-toast {
	position: fixed;
	right: 1rem;
	bottom: 1rem;
	z-index: 1300;
	padding: 0.75rem 1rem;
	border-radius: 0.65rem;
	border: 1px solid rgb(34 197 94 / 0.35);
	background: rgb(20 83 45 / 0.92);
	color: rgb(187 247 208);
	font-size: 0.8125rem;
	font-weight: 600;
	box-shadow: 0 16px 40px rgb(0 0 0 / 0.35);
	animation: tsc-bb-toast-in 0.25s ease;
}

.tsc-bitbucket-toast--error {
	border-color: rgb(239 68 68 / 0.35);
	background: rgb(127 29 29 / 0.92);
	color: rgb(254 202 202);
}

@keyframes tsc-bb-toast-in {
	from { opacity: 0; transform: translateY(8px); }
	to { opacity: 1; transform: none; }
}

@media (max-width: 640px) {
	.tsc-bitbucket-hero-top {
		flex-direction: column;
		align-items: flex-start;
	}

	.tsc-bitbucket-gallery-toolbar {
		flex-direction: column;
		align-items: stretch;
	}

	.tsc-bitbucket-gallery-actions {
		margin-left: 0;
		width: 100%;
	}

	.tsc-bitbucket-gallery-actions .tsc-bitbucket-btn {
		flex: 1;
		justify-content: center;
	}
}

/* ═══════════════════════════════════════════════════════════
   Premium Tracker Groups — teams.php (index schema)
   ═══════════════════════════════════════════════════════════ */

.tsc-teams-page {
	--tsc-teams-accent: rgb(251 146 60);
	--tsc-teams-accent-soft: rgb(251 146 60 / 0.14);
	--tsc-teams-border: rgb(39 39 42 / 0.72);
	min-width: 0;
}

.tsc-page-teams .maincontent > br {
	display: none;
}

.tsc-index-section-body--teams {
	padding: clamp(0.75rem, 2vw, 1.15rem);
	min-width: 0;
}

.tsc-teams-hero {
	position: relative;
	margin-bottom: 1rem;
	padding: clamp(1rem, 3vw, 1.6rem);
	border-radius: 1rem;
	border: 1px solid rgb(251 146 60 / 0.28);
	background:
		radial-gradient(ellipse 80% 60% at 50% -20%, rgb(251 146 60 / 0.18), transparent 60%),
		linear-gradient(160deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.9));
	overflow: hidden;
}

.tsc-teams-hero-glow {
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at 78% 18%, rgb(251 146 60 / 0.12), transparent 45%);
	pointer-events: none;
}

.tsc-teams-hero-inner { position: relative; }

.tsc-teams-hero-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.25rem 0.55rem;
	border-radius: 999px;
	border: 1px solid rgb(251 146 60 / 0.35);
	background: rgb(251 146 60 / 0.1);
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(254 215 170);
	margin-bottom: 0.5rem;
}

.tsc-teams-hero-title {
	margin: 0 0 0.35rem;
	font-size: clamp(1.25rem, 3vw, 1.75rem);
	font-weight: 800;
	color: rgb(244 244 245);
}

.tsc-teams-hero-sub {
	margin: 0 0 0.75rem;
	font-size: 0.8125rem;
	color: rgb(161 161 170);
	line-height: 1.55;
	max-width: 44rem;
}

.tsc-teams-hero-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.tsc-teams-chip {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.4rem 0.65rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.45);
	font-size: 0.75rem;
	color: rgb(212 212 216);
}

.tsc-teams-chip .tsc-icon { color: rgb(251 146 60); }
.tsc-teams-chip--live { border-color: rgb(34 197 94 / 0.35); color: rgb(187 247 208); }
.tsc-teams-chip--live .tsc-icon { color: rgb(74 222 128); }
.tsc-teams-chip--link {
	text-decoration: none;
	transition: border-color 0.15s ease, color 0.15s ease, background 0.15s ease;
}
.tsc-teams-chip--link:hover {
	color: rgb(251 146 60);
	border-color: rgb(251 146 60 / 0.4);
	background: rgb(39 39 42 / 0.55);
}

.tsc-teams-notice {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	gap: 0.75rem;
	padding: 0.85rem 1rem;
	margin-bottom: 1rem;
	border-radius: 0.75rem;
	border: 1px solid rgb(96 165 250 / 0.28);
	background: rgb(96 165 250 / 0.08);
	color: rgb(191 219 254);
	font-size: 0.8125rem;
	line-height: 1.5;
}

.tsc-teams-notice p { margin: 0 0 0.35rem; }
.tsc-teams-notice p:last-child { margin-bottom: 0; }
.tsc-teams-notice a { color: rgb(251 146 60); }
.tsc-teams-notice-icon .tsc-icon { color: rgb(96 165 250); }

.tsc-teams-toolbar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	margin-bottom: 0.85rem;
}

.tsc-teams-filter {
	display: inline-flex;
	flex-wrap: wrap;
	gap: 0.35rem;
	padding: 0.25rem;
	border-radius: 0.65rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.45);
}

.tsc-teams-filter-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	padding: 0.4rem 0.7rem;
	border: 0;
	border-radius: 0.45rem;
	background: transparent;
	color: rgb(161 161 170);
	font-size: 0.75rem;
	font-weight: 700;
	cursor: pointer;
	transition: background 0.15s ease, color 0.15s ease;
}

.tsc-teams-filter-btn:hover {
	color: rgb(244 244 245);
	background: rgb(39 39 42 / 0.65);
}

.tsc-teams-filter-btn--active {
	color: rgb(254 215 170);
	background: rgb(251 146 60 / 0.16);
	box-shadow: inset 0 0 0 1px rgb(251 146 60 / 0.28);
}

.tsc-teams-search {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	min-width: min(100%, 16rem);
	padding: 0.45rem 0.7rem;
	border-radius: 0.65rem;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(9 9 11 / 0.55);
	color: rgb(161 161 170);
}

.tsc-teams-search input {
	flex: 1;
	min-width: 0;
	border: 0;
	background: transparent;
	color: rgb(244 244 245);
	font-size: 0.8125rem;
	outline: none;
}

.tsc-teams-search input::placeholder { color: rgb(113 113 122); }

.tsc-teams-jump {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
	margin-bottom: 1rem;
	padding-bottom: 0.15rem;
}

.tsc-teams-jump-link {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	padding: 0.35rem 0.6rem;
	border-radius: 999px;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(24 24 27 / 0.75);
	color: rgb(212 212 216);
	font-size: 0.6875rem;
	font-weight: 600;
	text-decoration: none;
	transition: border-color 0.15s ease, color 0.15s ease, transform 0.15s ease;
}

.tsc-teams-jump-link:hover {
	color: rgb(251 146 60);
	border-color: rgb(251 146 60 / 0.4);
	transform: translateY(-1px);
}

.tsc-teams-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 22rem), 1fr));
	gap: 0.85rem;
}

.tsc-teams-is-hidden {
	display: none !important;
}

.tsc-teams-card {
	position: relative;
	display: flex;
	flex-direction: column;
	border-radius: 0.9rem;
	border: 1px solid rgb(39 39 42 / 0.72);
	background: linear-gradient(165deg, rgb(24 24 27 / 0.94), rgb(9 9 11 / 0.88));
	box-shadow: 0 12px 32px rgb(0 0 0 / 0.22);
	overflow: hidden;
	scroll-margin-top: 5.5rem;
}

.tsc-teams-card-banner {
	border-bottom: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.55);
}

.tsc-teams-card-banner img {
	display: block;
	width: 100%;
	max-height: 7.5rem;
	object-fit: cover;
	object-position: center;
}

.tsc-teams-card-header {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 0.75rem;
	padding: 0.9rem 1rem 0.75rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.55);
}

.tsc-teams-card-heading { min-width: 0; }

.tsc-teams-type-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	padding: 0.2rem 0.45rem;
	margin-bottom: 0.35rem;
	border-radius: 999px;
	font-size: 0.625rem;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.05em;
}

.tsc-teams-type-badge--crew {
	border: 1px solid rgb(251 146 60 / 0.35);
	background: rgb(251 146 60 / 0.12);
	color: rgb(254 215 170);
}

.tsc-teams-type-badge--support {
	border: 1px solid rgb(96 165 250 / 0.35);
	background: rgb(96 165 250 / 0.12);
	color: rgb(191 219 254);
}

.tsc-teams-card-title {
	margin: 0 0 0.2rem;
	font-size: 1rem;
	font-weight: 800;
	color: rgb(244 244 245);
	line-height: 1.25;
}

.tsc-teams-card-title a {
	color: inherit;
	text-decoration: none;
}

.tsc-teams-card-title a:hover { color: rgb(251 146 60); }

.tsc-teams-suffix {
	font-size: 0.75rem;
	font-weight: 600;
	color: rgb(161 161 170);
}

.tsc-teams-card-sub {
	margin: 0;
	font-size: 0.6875rem;
	color: rgb(161 161 170);
}

.tsc-teams-card-sub a { color: rgb(251 146 60); }
.tsc-teams-card-sub-live { color: rgb(74 222 128); font-weight: 700; }

.tsc-teams-card-admin {
	display: inline-flex;
	flex-wrap: wrap;
	gap: 0.3rem;
	flex-shrink: 0;
}

.tsc-teams-members {
	display: flex;
	flex-direction: column;
	gap: 0.45rem;
	padding: 0.75rem;
}

.tsc-teams-member {
	position: relative;
	display: grid;
	grid-template-columns: auto 1fr auto;
	gap: 0.65rem;
	align-items: center;
	padding: 0.7rem 0.8rem;
	border-radius: 0.7rem;
	border: 1px solid rgb(39 39 42 / 0.55);
	background: rgb(9 9 11 / 0.42);
}

.tsc-teams-member-crown {
	position: absolute;
	top: 0.35rem;
	right: 2.6rem;
	color: rgb(250 204 21);
}

.tsc-teams-member-avatar {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2.2rem;
	height: 2.2rem;
	border-radius: 0.6rem;
	background: rgb(251 146 60 / 0.12);
	color: rgb(254 215 170);
}

.tsc-teams-member-name {
	font-size: 0.875rem;
	text-decoration: none;
}

.tsc-teams-member-name:hover { text-decoration: underline; }

.tsc-teams-member-meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.4rem;
	margin-top: 0.15rem;
}

.tsc-teams-online {
	display: inline-flex;
	align-items: center;
	gap: 0.2rem;
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
}

.tsc-teams-online--on { color: rgb(74 222 128); }
.tsc-teams-online--off { color: rgb(113 113 122); }

.tsc-teams-leader-badge {
	padding: 0.1rem 0.35rem;
	border-radius: 999px;
	border: 1px solid rgb(250 204 21 / 0.35);
	background: rgb(250 204 21 / 0.1);
	color: rgb(250 204 21);
	font-size: 0.5625rem;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.05em;
}

.tsc-teams-member-actions {
	margin-top: 0.25rem;
}

.tsc-teams-member-action {
	font-size: 0.6875rem;
	font-weight: 600;
	color: rgb(251 146 60);
	text-decoration: none;
}

.tsc-teams-member-action--danger { color: rgb(248 113 113); }

.tsc-teams-member-pm {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2rem;
	height: 2rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(24 24 27 / 0.85);
	color: rgb(251 146 60);
	text-decoration: none;
}

.tsc-teams-member-pm:hover {
	border-color: rgb(251 146 60 / 0.45);
	background: rgb(251 146 60 / 0.12);
}

.tsc-teams-empty,
.tsc-teams-empty-card,
.tsc-teams-no-results {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	padding: 2rem 1rem;
	border-radius: 0.8rem;
	border: 1px dashed rgb(63 63 70 / 0.65);
	color: rgb(161 161 170);
	text-align: center;
}

.tsc-teams-empty-card {
	margin: 0.75rem;
	padding: 1.25rem;
}

.tsc-teams-empty p,
.tsc-teams-empty-card p,
.tsc-teams-no-results p {
	margin: 0;
	font-size: 0.8125rem;
}

.tsc-teams-no-results {
	grid-column: 1 / -1;
}

.tsc-teams-admin {
	min-width: 0;
}

.tsc-teams-admin-hint {
	margin: 0 0 0.85rem;
	font-size: 0.75rem;
}

.tsc-teams-admin-hint a {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	color: rgb(251 146 60);
	text-decoration: none;
	font-weight: 600;
}

.tsc-teams-admin-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin-top: 0.85rem;
}

@media (max-width: 640px) {
	.tsc-teams-toolbar {
		flex-direction: column;
		align-items: stretch;
	}

	.tsc-teams-search {
		width: 100%;
	}

	.tsc-teams-card-header {
		flex-direction: column;
	}
}

/* ═══════════════════════════════════════════════════════════
   Premium Admin User Search — usersearch.php
   ═══════════════════════════════════════════════════════════ */

.tsc-usersearch-page {
	--tsc-us-accent: rgb(251 146 60);
	--tsc-us-accent-soft: rgb(251 146 60 / 0.14);
	--tsc-us-border: rgb(39 39 42 / 0.72);
	min-width: 0;
}

.tsc-page-usersearch .maincontent > br {
	display: none;
}

.tsc-index-section-body--usersearch {
	padding: clamp(0.75rem, 2vw, 1.15rem);
	min-width: 0;
}

.tsc-usersearch-is-hidden {
	display: none !important;
}

.tsc-usersearch-hero {
	position: relative;
	margin-bottom: 1rem;
	padding: clamp(1rem, 3vw, 1.6rem);
	border-radius: 1rem;
	border: 1px solid rgb(251 146 60 / 0.28);
	background:
		radial-gradient(ellipse 80% 60% at 50% -20%, rgb(251 146 60 / 0.18), transparent 60%),
		linear-gradient(160deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.9));
	overflow: hidden;
}

.tsc-usersearch-hero-glow {
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at 78% 18%, rgb(251 146 60 / 0.12), transparent 45%);
	pointer-events: none;
}

.tsc-usersearch-hero-inner { position: relative; }

.tsc-usersearch-hero-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.25rem 0.55rem;
	border-radius: 999px;
	border: 1px solid rgb(251 146 60 / 0.35);
	background: rgb(251 146 60 / 0.1);
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(254 215 170);
	margin-bottom: 0.5rem;
}

.tsc-usersearch-hero-title {
	margin: 0 0 0.35rem;
	font-size: clamp(1.25rem, 3vw, 1.75rem);
	font-weight: 800;
	color: rgb(244 244 245);
}

.tsc-usersearch-hero-sub {
	margin: 0 0 0.75rem;
	font-size: 0.8125rem;
	color: rgb(161 161 170);
	line-height: 1.55;
	max-width: 44rem;
}

.tsc-usersearch-hero-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.tsc-usersearch-chip {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.4rem 0.65rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.45);
	font-size: 0.75rem;
	color: rgb(212 212 216);
}

.tsc-usersearch-chip .tsc-icon { color: rgb(251 146 60); }

.tsc-usersearch-chip--link {
	text-decoration: none;
	transition: border-color 0.15s ease, color 0.15s ease, background 0.15s ease;
}

.tsc-usersearch-chip--link:hover {
	color: rgb(251 146 60);
	border-color: rgb(251 146 60 / 0.4);
	background: rgb(39 39 42 / 0.55);
}

.tsc-usersearch-presets {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.5rem;
	margin-bottom: 0.85rem;
	padding-bottom: 0.85rem;
	border-bottom: 1px solid var(--tsc-us-border);
}

.tsc-usersearch-presets-label {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	font-size: 0.6875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: rgb(161 161 170);
}

.tsc-usersearch-presets-list {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
}

.tsc-usersearch-preset {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.35rem 0.6rem;
	border-radius: 999px;
	border: 1px solid rgb(39 39 42 / 0.75);
	background: rgb(24 24 27 / 0.65);
	font-size: 0.6875rem;
	font-weight: 600;
	color: rgb(212 212 216);
	cursor: pointer;
	transition: border-color 0.15s ease, background 0.15s ease, color 0.15s ease, transform 0.1s ease;
}

.tsc-usersearch-preset:hover {
	border-color: rgb(251 146 60 / 0.45);
	color: rgb(254 215 170);
}

.tsc-usersearch-preset--active {
	border-color: rgb(251 146 60 / 0.55);
	background: rgb(251 146 60 / 0.16);
	color: rgb(254 215 170);
	box-shadow: inset 0 0 0 1px rgb(251 146 60 / 0.25);
}

.tsc-usersearch-toolbar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.65rem;
	margin-bottom: 0.85rem;
}

.tsc-usersearch-live-toggle {
	cursor: pointer;
}

.tsc-usersearch-live-toggle input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

.tsc-usersearch-live-pill {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	padding: 0.35rem 0.65rem;
	border-radius: 999px;
	border: 1px solid rgb(34 197 94 / 0.35);
	background: rgb(34 197 94 / 0.1);
	font-size: 0.6875rem;
	font-weight: 700;
	color: rgb(187 247 208);
}

.tsc-usersearch-live-dot {
	width: 0.45rem;
	height: 0.45rem;
	border-radius: 50%;
	background: rgb(74 222 128);
	box-shadow: 0 0 0.5rem rgb(74 222 128 / 0.8);
	animation: tsc-us-pulse 1.8s ease-in-out infinite;
}

@keyframes tsc-us-pulse {
	0%, 100% { opacity: 1; transform: scale(1); }
	50% { opacity: 0.55; transform: scale(0.85); }
}

.tsc-usersearch-live-toggle input:not(:checked) + .tsc-usersearch-live-pill {
	border-color: rgb(63 63 70 / 0.65);
	background: rgb(24 24 27 / 0.55);
	color: rgb(161 161 170);
}

.tsc-usersearch-live-toggle input:not(:checked) + .tsc-usersearch-live-pill .tsc-usersearch-live-dot {
	background: rgb(113 113 122);
	box-shadow: none;
	animation: none;
}

.tsc-usersearch-toolbar-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
}

.tsc-usersearch-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.45rem 0.75rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(63 63 70 / 0.75);
	background: rgb(24 24 27 / 0.75);
	font-size: 0.75rem;
	font-weight: 600;
	color: rgb(212 212 216);
	cursor: pointer;
	transition: border-color 0.15s ease, background 0.15s ease, color 0.15s ease;
}

.tsc-usersearch-btn--ghost:hover {
	border-color: rgb(251 146 60 / 0.45);
	color: rgb(254 215 170);
}

.tsc-usersearch-btn--primary {
	border-color: rgb(251 146 60 / 0.55);
	background: linear-gradient(135deg, rgb(251 146 60 / 0.25), rgb(234 88 12 / 0.18));
	color: rgb(254 215 170);
}

.tsc-usersearch-btn--primary:hover {
	background: linear-gradient(135deg, rgb(251 146 60 / 0.35), rgb(234 88 12 / 0.28));
}

.tsc-usersearch-btn--sm {
	padding: 0.35rem 0.55rem;
	font-size: 0.6875rem;
}

.tsc-usersearch-btn--copied {
	border-color: rgb(34 197 94 / 0.55) !important;
	color: rgb(187 247 208) !important;
}

.tsc-usersearch-help {
	padding: 0.85rem 1rem;
	margin-bottom: 0.85rem;
	border-radius: 0.75rem;
	border: 1px solid rgb(96 165 250 / 0.28);
	background: rgb(96 165 250 / 0.08);
	color: rgb(191 219 254);
	font-size: 0.8125rem;
	line-height: 1.55;
}

.tsc-usersearch-help p { margin: 0 0 0.45rem; }
.tsc-usersearch-help p:last-child { margin-bottom: 0; }
.tsc-usersearch-help code {
	padding: 0.1rem 0.3rem;
	border-radius: 0.25rem;
	background: rgb(9 9 11 / 0.35);
	font-size: 0.75rem;
}

.tsc-usersearch-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 18rem), 1fr));
	gap: 0.75rem;
}

.tsc-usersearch-group {
	margin: 0;
	padding: 0.85rem;
	border-radius: 0.75rem;
	border: 1px solid var(--tsc-us-border);
	background: rgb(9 9 11 / 0.35);
	min-width: 0;
}

.tsc-usersearch-group legend {
	display: flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0 0.35rem;
	font-size: 0.6875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: rgb(251 146 60);
}

.tsc-usersearch-fields {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 10rem), 1fr));
	gap: 0.55rem;
	margin-top: 0.55rem;
}

.tsc-usersearch-fields--range {
	grid-template-columns: 1fr;
}

.tsc-usersearch-label {
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
	font-size: 0.6875rem;
	font-weight: 600;
	color: rgb(161 161 170);
	min-width: 0;
}

.tsc-usersearch-label--check {
	flex-direction: row;
	align-items: center;
	gap: 0.5rem;
}

.tsc-usersearch-label--active,
.tsc-usersearch-field--active {
	color: rgb(254 215 170);
}

.tsc-usersearch-input,
.tsc-usersearch-select {
	width: 100%;
	padding: 0.45rem 0.55rem;
	border-radius: 0.45rem;
	border: 1px solid rgb(63 63 70 / 0.75);
	background: rgb(24 24 27 / 0.85);
	font-size: 0.8125rem;
	color: rgb(244 244 245);
	min-width: 0;
}

.tsc-usersearch-input:focus,
.tsc-usersearch-select:focus {
	outline: none;
	border-color: rgb(251 146 60 / 0.55);
	box-shadow: 0 0 0 2px rgb(251 146 60 / 0.15);
}

.tsc-usersearch-field--active.tsc-usersearch-input,
.tsc-usersearch-field--active.tsc-usersearch-select {
	border-color: rgb(251 146 60 / 0.45);
	background: rgb(251 146 60 / 0.06);
}

.tsc-usersearch-range-row {
	display: grid;
	grid-template-columns: 5.5rem minmax(5rem, 1fr) minmax(4rem, 1fr) minmax(4rem, 1fr);
	gap: 0.35rem;
	align-items: center;
}

.tsc-usersearch-range-label {
	font-size: 0.6875rem;
	font-weight: 600;
	color: rgb(161 161 170);
}

.tsc-usersearch-range-sep {
	text-align: center;
	color: rgb(113 113 122);
}

.tsc-usersearch-sort-pair {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0.35rem;
}

.tsc-usersearch-check {
	display: inline-flex;
	align-items: center;
	cursor: pointer;
}

.tsc-usersearch-check input {
	position: absolute;
	opacity: 0;
}

.tsc-usersearch-check-box {
	width: 1.1rem;
	height: 1.1rem;
	border-radius: 0.3rem;
	border: 1px solid rgb(63 63 70 / 0.85);
	background: rgb(24 24 27 / 0.85);
	transition: border-color 0.15s ease, background 0.15s ease;
}

.tsc-usersearch-check input:checked + .tsc-usersearch-check-box {
	border-color: rgb(251 146 60 / 0.65);
	background: rgb(251 146 60 / 0.25);
	box-shadow: inset 0 0 0 1px rgb(251 146 60 / 0.35);
}

.tsc-usersearch-results {
	position: relative;
	min-height: 6rem;
}

.tsc-usersearch-results--loading::after {
	content: '';
	position: absolute;
	inset: 0;
	background: rgb(9 9 11 / 0.45);
	border-radius: 0.65rem;
	pointer-events: none;
}

.tsc-usersearch-results-head {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.5rem;
	margin-bottom: 0.65rem;
}

.tsc-usersearch-results-meta {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	font-size: 0.8125rem;
	color: rgb(212 212 216);
}

.tsc-usersearch-results-page {
	color: rgb(161 161 170);
	font-size: 0.75rem;
}

.tsc-usersearch-table-wrap {
	overflow-x: auto;
	border-radius: 0.65rem;
	border: 1px solid var(--tsc-us-border);
}

.tsc-usersearch-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.75rem;
}

.tsc-usersearch-table thead th {
	padding: 0.55rem 0.5rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.85);
	background: rgb(24 24 27 / 0.85);
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: rgb(161 161 170);
	text-align: left;
	white-space: nowrap;
}

.tsc-usersearch-table tbody td {
	padding: 0.5rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.55);
	color: rgb(212 212 216);
	vertical-align: top;
}

.tsc-usersearch-table tbody tr:hover td {
	background: rgb(39 39 42 / 0.35);
}

.tsc-usersearch-cell-name { min-width: 8rem; }
.tsc-usersearch-cell-mono { font-family: ui-monospace, monospace; font-size: 0.6875rem; }
.tsc-usersearch-cell-email { max-width: 10rem; word-break: break-all; }
.tsc-usersearch-cell-date { white-space: nowrap; font-size: 0.6875rem; }
.tsc-usersearch-cell-num { text-align: right; white-space: nowrap; }
.tsc-usersearch-cell-history { white-space: nowrap; }

.tsc-usersearch-ip-banned {
	color: rgb(248 113 113);
	font-weight: 700;
}

.tsc-usersearch-badges {
	display: flex;
	flex-wrap: wrap;
	gap: 0.25rem;
	margin-top: 0.25rem;
}

.tsc-usersearch-badge {
	display: inline-block;
	padding: 0.1rem 0.35rem;
	border-radius: 999px;
	font-size: 0.5625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.03em;
}

.tsc-usersearch-badge--disabled { background: rgb(239 68 68 / 0.2); color: rgb(252 165 165); }
.tsc-usersearch-badge--pending { background: rgb(234 179 8 / 0.2); color: rgb(253 224 71); }
.tsc-usersearch-badge--warned { background: rgb(249 115 22 / 0.2); color: rgb(253 186 116); }
.tsc-usersearch-badge--donor { background: rgb(236 72 153 / 0.2); color: rgb(249 168 212); }
.tsc-usersearch-badge--online { background: rgb(34 197 94 / 0.2); color: rgb(134 239 172); }

.tsc-usersearch-cards {
	display: none;
}

.tsc-usersearch-card {
	padding: 0.85rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.55);
}

.tsc-usersearch-card-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 0.5rem;
	margin-bottom: 0.35rem;
}

.tsc-usersearch-card-meta {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.35rem 0.65rem;
	margin: 0.5rem 0 0;
	font-size: 0.6875rem;
}

.tsc-usersearch-card-meta dt {
	margin: 0;
	color: rgb(113 113 122);
	font-weight: 600;
}

.tsc-usersearch-card-meta dd {
	margin: 0;
	color: rgb(212 212 216);
	word-break: break-word;
}

.tsc-usersearch-empty,
.tsc-usersearch-idle,
.tsc-usersearch-error {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0.35rem;
	padding: 2rem 1rem;
	text-align: center;
	color: rgb(161 161 170);
}

.tsc-usersearch-empty .tsc-icon,
.tsc-usersearch-idle .tsc-icon,
.tsc-usersearch-error .tsc-icon {
	color: rgb(251 146 60);
	opacity: 0.65;
}

.tsc-usersearch-empty-hint {
	font-size: 0.75rem;
	color: rgb(113 113 122);
}

.tsc-usersearch-error .tsc-icon { color: rgb(248 113 113); }

.tsc-usersearch-pager {
	margin: 0.65rem 0;
	font-size: 0.8125rem;
	text-align: center;
	color: rgb(161 161 170);
}

.tsc-usersearch-pager a {
	color: rgb(251 146 60);
	text-decoration: none;
}

.tsc-usersearch-pager a:hover { text-decoration: underline; }

@media (max-width: 900px) {
	.tsc-usersearch-table { display: none; }
	.tsc-usersearch-cards { display: block; }
	.tsc-usersearch-range-row {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 520px) {
	.tsc-usersearch-toolbar {
		flex-direction: column;
		align-items: stretch;
	}
	.tsc-usersearch-toolbar-actions {
		justify-content: stretch;
	}
	.tsc-usersearch-toolbar-actions .tsc-usersearch-btn {
		flex: 1;
		justify-content: center;
	}
	.tsc-usersearch-card-meta {
		grid-template-columns: 1fr;
	}
}

/* ═══════════════════════════════════════════════════════════
   Premium Support Tickets — staffbox.php
   ═══════════════════════════════════════════════════════════ */

.tsc-staffbox-page {
	--tsc-sb-accent: rgb(56 189 248);
	--tsc-sb-accent-soft: rgb(56 189 248 / 0.14);
	--tsc-sb-border: rgb(39 39 42 / 0.72);
	min-width: 0;
}

.tsc-page-staffbox .maincontent > br {
	display: none;
}

.tsc-index-section-body--staffbox {
	padding: clamp(0.75rem, 2vw, 1.15rem);
	min-width: 0;
}

.tsc-index-block--staffbox {
	border-color: rgb(56 189 248 / 0.22);
	box-shadow:
		0 0 0 1px rgb(56 189 248 / 0.05) inset,
		0 12px 40px rgb(0 0 0 / 0.28);
}

.tsc-staffbox-ticket-layout .tsc-index-section-body--staffbox {
	padding: clamp(0.85rem, 2vw, 1.2rem);
	padding-bottom: clamp(1rem, 2.5vw, 1.35rem);
}

.tsc-staffbox-ticket-layout .tsc-ticket-thread {
	padding-bottom: 0.15rem;
}

.tsc-staffbox-ticket-layout .tsc-staffbox-quicklinks {
	margin-bottom: 0.15rem;
}

.tsc-staffbox-reply-form {
	padding-bottom: 0.15rem;
}

.tsc-staffbox-hero {
	position: relative;
	margin-bottom: 1rem;
	padding: clamp(1rem, 3vw, 1.6rem);
	border-radius: 1rem;
	border: 1px solid rgb(56 189 248 / 0.28);
	background:
		radial-gradient(ellipse 80% 60% at 50% -20%, rgb(56 189 248 / 0.18), transparent 60%),
		linear-gradient(160deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.9));
	overflow: hidden;
}

.tsc-staffbox-hero-glow {
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at 78% 18%, rgb(56 189 248 / 0.12), transparent 45%);
	pointer-events: none;
}

.tsc-staffbox-hero-inner { position: relative; }

.tsc-staffbox-hero-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.25rem 0.55rem;
	border-radius: 999px;
	border: 1px solid rgb(56 189 248 / 0.35);
	background: rgb(56 189 248 / 0.1);
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(186 230 253);
	margin-bottom: 0.5rem;
}

.tsc-staffbox-hero-title {
	margin: 0 0 0.35rem;
	font-size: clamp(1.25rem, 3vw, 1.75rem);
	font-weight: 800;
	color: rgb(244 244 245);
}

.tsc-staffbox-hero-sub {
	margin: 0 0 0.75rem;
	font-size: 0.8125rem;
	color: rgb(161 161 170);
	line-height: 1.55;
	max-width: 44rem;
}

.tsc-staffbox-hero-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.tsc-staffbox-chip {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.4rem 0.65rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.45);
	font-size: 0.75rem;
	color: rgb(212 212 216);
}

.tsc-staffbox-chip .tsc-icon { color: rgb(56 189 248); }
.tsc-staffbox-chip--open { border-color: rgb(34 197 94 / 0.35); }
.tsc-staffbox-chip--open .tsc-icon { color: rgb(74 222 128); }
.tsc-staffbox-chip--claimed { border-color: rgb(251 146 60 / 0.35); }
.tsc-staffbox-chip--claimed .tsc-icon { color: rgb(251 146 60); }
.tsc-staffbox-chip--link {
	text-decoration: none;
	transition: border-color 0.15s ease, color 0.15s ease;
}
.tsc-staffbox-chip--link:hover {
	color: rgb(56 189 248);
	border-color: rgb(56 189 248 / 0.4);
}

.tsc-staffbox-toolbar {
	display: grid;
	gap: 0.65rem;
	margin-bottom: 1rem;
}

.tsc-staffbox-toolbar-row {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
	align-items: center;
}

.tsc-staffbox-toolbar-row--actions {
	padding-top: 0.25rem;
	border-top: 1px solid var(--tsc-sb-border);
}

.tsc-staffbox-search {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	flex: 1 1 12rem;
	min-width: 0;
	padding: 0.35rem 0.55rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(63 63 70 / 0.75);
	background: rgb(24 24 27 / 0.85);
}

.tsc-staffbox-search input {
	flex: 1;
	border: 0;
	background: transparent;
	color: rgb(244 244 245);
	font-size: 0.8125rem;
	min-width: 0;
}

.tsc-staffbox-search input:focus { outline: none; }
.tsc-staffbox-search .tsc-icon { color: rgb(113 113 122); }

.tsc-staffbox-select {
	padding: 0.45rem 0.55rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(63 63 70 / 0.75);
	background: rgb(24 24 27 / 0.85);
	color: rgb(212 212 216);
	font-size: 0.75rem;
}

.tsc-staffbox-filter-check {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	font-size: 0.75rem;
	color: rgb(161 161 170);
	cursor: pointer;
}

.tsc-staffbox-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.45rem 0.75rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(63 63 70 / 0.75);
	background: rgb(24 24 27 / 0.75);
	font-size: 0.75rem;
	font-weight: 600;
	color: rgb(212 212 216);
	cursor: pointer;
	text-decoration: none;
	transition: border-color 0.15s ease, background 0.15s ease, color 0.15s ease;
}

.tsc-staffbox-btn--primary {
	border-color: rgb(56 189 248 / 0.55);
	background: linear-gradient(135deg, rgb(56 189 248 / 0.22), rgb(14 165 233 / 0.16));
	color: rgb(186 230 253);
}

.tsc-staffbox-btn--claim {
	border-color: rgb(34 197 94 / 0.45);
	background: rgb(34 197 94 / 0.12);
	color: rgb(187 247 208);
}

.tsc-staffbox-btn--danger {
	border-color: rgb(239 68 68 / 0.45);
	color: rgb(252 165 165);
}

.tsc-staffbox-btn--ghost:hover,
.tsc-staffbox-btn--primary:hover {
	border-color: rgb(56 189 248 / 0.55);
	color: rgb(186 230 253);
}

.tsc-staffbox-btn--sm {
	padding: 0.35rem 0.55rem;
	font-size: 0.6875rem;
}

.tsc-staffbox-list-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 0.65rem;
	margin-bottom: 0.65rem;
	font-size: 0.8125rem;
	color: rgb(161 161 170);
}

.tsc-staffbox-table-wrap {
	overflow-x: auto;
	border-radius: 0.65rem;
	border: 1px solid var(--tsc-sb-border);
}

.tsc-staffbox-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.75rem;
}

.tsc-staffbox-table thead th {
	padding: 0.55rem 0.5rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.85);
	background: rgb(24 24 27 / 0.85);
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: rgb(161 161 170);
	text-align: left;
	white-space: nowrap;
}

.tsc-staffbox-table tbody td {
	padding: 0.5rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.55);
	color: rgb(212 212 216);
	vertical-align: middle;
}

.tsc-staffbox-table tbody tr:hover td {
	background: rgb(39 39 42 / 0.35);
}

.tsc-staffbox-cell-id a {
	font-family: ui-monospace, monospace;
	font-weight: 700;
	color: rgb(56 189 248);
	text-decoration: none;
}

.tsc-staffbox-cell-subject a {
	color: rgb(244 244 245);
	text-decoration: none;
	font-weight: 600;
}

.tsc-staffbox-cell-subject a:hover,
.tsc-staffbox-cell-id a:hover { text-decoration: underline; }

.tsc-staffbox-status,
.tsc-staffbox-priority,
.tsc-staffbox-cat {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	padding: 0.15rem 0.45rem;
	border-radius: 999px;
	font-size: 0.5625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	white-space: nowrap;
}

.tsc-staffbox-status--open { background: rgb(34 197 94 / 0.15); color: rgb(134 239 172); }
.tsc-staffbox-status--claimed { background: rgb(251 146 60 / 0.15); color: rgb(253 186 116); }
.tsc-staffbox-status--answered { background: rgb(56 189 248 / 0.15); color: rgb(186 230 253); }
.tsc-staffbox-status--closed { background: rgb(113 113 122 / 0.2); color: rgb(161 161 170); }

.tsc-staffbox-priority--low { background: rgb(113 113 122 / 0.2); color: rgb(161 161 170); }
.tsc-staffbox-priority--normal { background: rgb(56 189 248 / 0.12); color: rgb(186 230 253); }
.tsc-staffbox-priority--high { background: rgb(251 146 60 / 0.15); color: rgb(253 186 116); }
.tsc-staffbox-priority--urgent { background: rgb(239 68 68 / 0.18); color: rgb(252 165 165); }

.tsc-staffbox-cat--support { background: rgb(56 189 248 / 0.12); color: rgb(186 230 253); }
.tsc-staffbox-cat--staff { background: rgb(251 146 60 / 0.12); color: rgb(253 186 116); }
.tsc-staffbox-cat--report { background: rgb(239 68 68 / 0.12); color: rgb(252 165 165); }
.tsc-staffbox-cat--other { background: rgb(113 113 122 / 0.15); color: rgb(161 161 170); }

.tsc-staffbox-cards { display: none; }

.tsc-staffbox-card {
	padding: 0.85rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.55);
}

.tsc-staffbox-card-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.5rem;
	margin-bottom: 0.35rem;
}

.tsc-staffbox-card-id {
	font-family: ui-monospace, monospace;
	font-weight: 700;
	color: rgb(56 189 248);
	text-decoration: none;
}

.tsc-staffbox-card-subject {
	margin: 0 0 0.35rem;
	font-size: 0.875rem;
}

.tsc-staffbox-card-subject a {
	color: rgb(244 244 245);
	text-decoration: none;
}

.tsc-staffbox-card-meta { margin-bottom: 0.35rem; }

.tsc-staffbox-card-foot {
	display: flex;
	justify-content: space-between;
	gap: 0.5rem;
	font-size: 0.6875rem;
	color: rgb(161 161 170);
}

.tsc-staffbox-empty {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.35rem;
	padding: 2rem 1rem;
	color: rgb(161 161 170);
	text-align: center;
}

.tsc-staffbox-pager {
	margin: 0.65rem 0;
	text-align: center;
	font-size: 0.8125rem;
	color: rgb(161 161 170);
}

.tsc-staffbox-pager a {
	color: rgb(56 189 248);
	text-decoration: none;
}

.tsc-staffbox-back {
	margin-bottom: 0.75rem;
}

.tsc-staffbox-back a {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	font-size: 0.8125rem;
	color: rgb(56 189 248);
	text-decoration: none;
}

.tsc-staffbox-ticket-hero {
	margin-bottom: 1rem;
	padding: clamp(0.85rem, 2vw, 1.25rem);
	border-radius: 1rem;
	border: 1px solid rgb(56 189 248 / 0.25);
	background: linear-gradient(160deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.88));
}

.tsc-staffbox-ticket-hero-top {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
	gap: 0.75rem;
}

.tsc-staffbox-ticket-no {
	font-family: ui-monospace, monospace;
	font-size: 0.75rem;
	font-weight: 700;
	color: rgb(56 189 248);
}

.tsc-staffbox-ticket-title {
	margin: 0.25rem 0 0.5rem;
	font-size: clamp(1.1rem, 2.5vw, 1.5rem);
	color: rgb(244 244 245);
}

.tsc-staffbox-ticket-badges {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem;
}

.tsc-staffbox-ticket-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
}

.tsc-staffbox-lock-banner {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	gap: 0.75rem;
	align-items: start;
	padding: 0.85rem 1rem;
	margin-bottom: 1rem;
	border-radius: 0.75rem;
	border: 1px solid rgb(251 146 60 / 0.35);
	background: rgb(251 146 60 / 0.1);
	color: rgb(253 186 116);
	font-size: 0.8125rem;
}

.tsc-staffbox-lock-banner p {
	margin: 0.25rem 0 0;
	color: rgb(251 191 36 / 0.85);
	font-size: 0.75rem;
}

.tsc-staffbox-ticket-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(14rem, 20rem);
	gap: 1rem;
	align-items: start;
	margin-bottom: 1.5rem;
}

.tsc-staffbox-ticket-main,
.tsc-staffbox-ticket-side {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	min-width: 0;
}

.tsc-staffbox-ticket-main .tsc-index-block,
.tsc-staffbox-ticket-side .tsc-index-block {
	margin-bottom: 0;
}

.tsc-staffbox-msg-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 0.65rem 1rem;
	margin-bottom: 0.75rem;
	font-size: 0.75rem;
	color: rgb(161 161 170);
}

.tsc-staffbox-msg-label {
	color: rgb(113 113 122);
	font-weight: 600;
	text-transform: uppercase;
	font-size: 0.625rem;
	letter-spacing: 0.04em;
}

.tsc-staffbox-msg-body {
	padding: 0.85rem;
	border-radius: 0.65rem;
	border: 1px solid var(--tsc-sb-border);
	background: rgb(9 9 11 / 0.35);
	font-size: 0.8125rem;
	line-height: 1.55;
	color: rgb(212 212 216);
	overflow-x: auto;
}

.tsc-staffbox-msg-body--answer {
	border-color: rgb(34 197 94 / 0.25);
	background: rgb(34 197 94 / 0.06);
}

.tsc-staffbox-info-list {
	margin: 0;
	font-size: 0.75rem;
}

.tsc-staffbox-info-list > div {
	display: grid;
	grid-template-columns: 5.5rem minmax(0, 1fr);
	gap: 0.35rem;
	padding: 0.35rem 0;
	border-bottom: 1px solid rgb(39 39 42 / 0.45);
}

.tsc-staffbox-info-list dt {
	margin: 0;
	color: rgb(113 113 122);
	font-weight: 600;
}

.tsc-staffbox-info-list dd {
	margin: 0;
	color: rgb(212 212 216);
}

.tsc-staffbox-info-email { word-break: break-all; }

.tsc-staffbox-quicklinks {
	display: grid;
	gap: 0.35rem;
	margin-top: 0.75rem;
}

.tsc-staffbox-quicklink {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.4rem 0.55rem;
	border-radius: 0.45rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.35);
	font-size: 0.75rem;
	color: rgb(212 212 216);
	text-decoration: none;
}

.tsc-staffbox-quicklink:hover {
	border-color: rgb(56 189 248 / 0.4);
	color: rgb(186 230 253);
}

.tsc-staffbox-note-form {
	display: grid;
	gap: 0.45rem;
	margin-bottom: 0.65rem;
}

.tsc-staffbox-note-input {
	width: 100%;
	padding: 0.55rem;
	border-radius: 0.45rem;
	border: 1px solid rgb(63 63 70 / 0.75);
	background: rgb(24 24 27 / 0.85);
	color: rgb(244 244 245);
	font-size: 0.8125rem;
	resize: vertical;
	min-height: 4rem;
}

.tsc-staffbox-notes {
	margin: 0;
	padding: 0.65rem;
	border-radius: 0.45rem;
	border: 1px solid rgb(251 146 60 / 0.25);
	background: rgb(251 146 60 / 0.06);
	font-size: 0.6875rem;
	line-height: 1.45;
	color: rgb(253 186 116);
	white-space: pre-wrap;
	word-break: break-word;
}

.tsc-staffbox-notes-empty {
	margin: 0;
	font-size: 0.75rem;
	color: rgb(113 113 122);
}

.tsc-staffbox-reply-hint {
	margin: 0.45rem 0 0.65rem;
	font-size: 0.75rem;
	color: rgb(113 113 122);
}

.tsc-staffbox-toast {
	position: fixed;
	bottom: 1rem;
	right: 1rem;
	z-index: 120;
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	padding: 0.65rem 0.85rem;
	border-radius: 0.65rem;
	border: 1px solid rgb(34 197 94 / 0.35);
	background: rgb(20 83 45 / 0.92);
	color: rgb(187 247 208);
	font-size: 0.8125rem;
	box-shadow: 0 8px 24px rgb(0 0 0 / 0.35);
}

.tsc-staffbox-toast--err {
	border-color: rgb(239 68 68 / 0.35);
	background: rgb(127 29 29 / 0.92);
	color: rgb(252 165 165);
}

.tsc-contact-success-ticket {
	margin: 0.25rem 0 0.35rem;
	font-size: 0.875rem;
	color: rgb(56 189 248);
}

@media (max-width: 900px) {
	.tsc-staffbox-ticket-layout {
		grid-template-columns: 1fr;
	}
	.tsc-staffbox-table { display: none; }
	.tsc-staffbox-cards { display: block; }
}

@media (max-width: 520px) {
	.tsc-staffbox-ticket-actions {
		width: 100%;
	}
	.tsc-staffbox-ticket-actions .tsc-staffbox-btn {
		flex: 1;
		justify-content: center;
	}
}

/* ═══════════════════════════════════════════════════════════
   Premium Team-Kontakt — contactstaff.php
   ═══════════════════════════════════════════════════════════ */

.tsc-contactstaff-page {
	min-width: 0;
}

.tsc-page-contactstaff .maincontent > br {
	display: none;
}

.tsc-index-section-body--contact {
	padding: clamp(0.75rem, 2vw, 1.15rem);
	min-width: 0;
}

.tsc-contact-hero {
	position: relative;
	margin-bottom: 1rem;
	padding: clamp(1rem, 3vw, 1.6rem);
	border-radius: 1rem;
	border: 1px solid rgb(251 146 60 / 0.28);
	background:
		radial-gradient(ellipse 80% 60% at 50% -20%, rgb(251 146 60 / 0.16), transparent 60%),
		linear-gradient(160deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.9));
	overflow: hidden;
}

.tsc-contact-hero-glow {
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at 85% 15%, rgb(251 146 60 / 0.1), transparent 42%);
	pointer-events: none;
}

.tsc-contact-hero-inner { position: relative; }

.tsc-contact-hero-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.25rem 0.55rem;
	border-radius: 999px;
	border: 1px solid rgb(251 146 60 / 0.35);
	background: rgb(251 146 60 / 0.1);
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(254 215 170);
	margin-bottom: 0.5rem;
}

.tsc-contact-hero-title {
	margin: 0 0 0.35rem;
	font-size: clamp(1.25rem, 3vw, 1.75rem);
	font-weight: 800;
	color: rgb(244 244 245);
}

.tsc-contact-hero-sub {
	margin: 0 0 0.75rem;
	font-size: 0.8125rem;
	color: rgb(161 161 170);
	line-height: 1.55;
	max-width: 44rem;
}

.tsc-contact-hero-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.tsc-contact-chip {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.4rem 0.7rem;
	border-radius: 999px;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(24 24 27 / 0.75);
	color: rgb(212 212 216);
	font-size: 0.75rem;
	font-weight: 600;
	text-decoration: none;
	transition: border-color 0.15s ease, color 0.15s ease, background 0.15s ease;
}

.tsc-contact-chip:hover {
	color: rgb(251 146 60);
	border-color: rgb(251 146 60 / 0.4);
	background: rgb(39 39 42);
}

.tsc-contact-notice,
.tsc-contact-template-info {
	display: flex;
	gap: 0.75rem;
	padding: 0.75rem 0.9rem;
	margin-bottom: 1rem;
	border-radius: 0.65rem;
	border: 1px solid rgb(234 179 8 / 0.25);
	background: rgb(234 179 8 / 0.08);
	color: rgb(250 204 21);
	font-size: 0.8125rem;
	line-height: 1.5;
}

.tsc-contact-template-info {
	border-color: rgb(59 130 246 / 0.25);
	background: rgb(59 130 246 / 0.08);
	color: rgb(191 219 254);
	margin-top: 0;
	margin-bottom: 0.85rem;
}

.tsc-contact-notice p,
.tsc-contact-template-info p {
	margin: 0 0 0.35rem;
}

.tsc-contact-notice p:last-child,
.tsc-contact-template-info p:last-child {
	margin-bottom: 0;
}

.tsc-contact-notice a,
.tsc-contact-notice code {
	color: rgb(253 186 116);
}

.tsc-contact-success {
	display: flex;
	align-items: flex-start;
	gap: 0.85rem;
	padding: 1rem 1.1rem;
	margin-bottom: 1rem;
	border-radius: 0.75rem;
	border: 1px solid rgb(34 197 94 / 0.35);
	background: rgb(34 197 94 / 0.1);
	color: rgb(187 247 208);
}

.tsc-contact-success-icon {
	color: rgb(74 222 128);
	flex-shrink: 0;
}

.tsc-contact-success-title {
	margin: 0 0 0.25rem;
	font-size: 1rem;
	font-weight: 800;
	color: rgb(220 252 231);
}

.tsc-contact-success-text {
	margin: 0;
	font-size: 0.8125rem;
	line-height: 1.5;
}

.tsc-contact-success--inline {
	flex-direction: row;
	align-items: center;
	gap: 0.5rem;
	padding: 0.65rem 0.85rem;
	margin-bottom: 0.85rem;
	border-radius: 0.65rem;
}

.tsc-contact-nav {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
	margin-bottom: 0.85rem;
}

.tsc-contact-nav-link {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.4rem 0.65rem;
	border-radius: 999px;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(24 24 27 / 0.55);
	font-size: 0.75rem;
	font-weight: 600;
	color: rgb(212 212 216);
	text-decoration: none;
	transition: border-color 0.15s ease, color 0.15s ease, background 0.15s ease;
}

.tsc-contact-nav-link:hover,
.tsc-contact-nav-link--active {
	border-color: rgb(251 146 60 / 0.45);
	color: rgb(254 215 170);
	background: rgb(251 146 60 / 0.08);
}

.tsc-contact-chip--alert {
	border-color: rgb(56 189 248 / 0.4);
	color: rgb(186 230 253);
}

.tsc-contact-empty {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.65rem;
	padding: 2rem 1rem;
	text-align: center;
	color: rgb(161 161 170);
}

.tsc-contact-ticket-list {
	display: grid;
	gap: 0.45rem;
}

.tsc-contact-ticket-row {
	display: grid;
	grid-template-columns: minmax(5.5rem, auto) minmax(0, 1fr) auto;
	gap: 0.5rem 0.75rem;
	align-items: center;
	padding: 0.75rem 0.85rem;
	border-radius: 0.65rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.35);
	text-decoration: none;
	color: inherit;
	transition: border-color 0.15s ease, background 0.15s ease;
	position: relative;
}

.tsc-contact-ticket-row:hover {
	border-color: rgb(251 146 60 / 0.35);
	background: rgb(39 39 42 / 0.45);
}

.tsc-contact-ticket-row--unread {
	border-color: rgb(56 189 248 / 0.35);
	background: rgb(56 189 248 / 0.06);
}

.tsc-contact-ticket-row-id {
	font-family: ui-monospace, monospace;
	font-size: 0.6875rem;
	font-weight: 700;
	color: rgb(251 146 60);
}

.tsc-contact-ticket-row-subject {
	font-size: 0.8125rem;
	font-weight: 600;
	color: rgb(244 244 245);
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.tsc-contact-ticket-row-meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.45rem;
	font-size: 0.6875rem;
	color: rgb(161 161 170);
}

.tsc-contact-status {
	display: inline-block;
	padding: 0.12rem 0.4rem;
	border-radius: 999px;
	font-size: 0.5625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	background: rgb(63 63 70 / 0.45);
	color: rgb(212 212 216);
}

.tsc-contact-status--open { background: rgb(34 197 94 / 0.15); color: rgb(134 239 172); }
.tsc-contact-status--claimed { background: rgb(251 146 60 / 0.15); color: rgb(253 186 116); }
.tsc-contact-status--waiting,
.tsc-contact-status--unread { background: rgb(56 189 248 / 0.18); color: rgb(186 230 253); }
.tsc-contact-status--closed { background: rgb(113 113 122 / 0.25); color: rgb(161 161 170); }

.tsc-contact-ticket-unread-dot {
	position: absolute;
	top: 0.55rem;
	right: 0.55rem;
	width: 0.45rem;
	height: 0.45rem;
	border-radius: 50%;
	background: rgb(56 189 248);
	box-shadow: 0 0 0.5rem rgb(56 189 248 / 0.8);
}

.tsc-contact-ticket-back {
	margin-bottom: 0.65rem;
}

.tsc-contact-ticket-back a {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	font-size: 0.8125rem;
	color: rgb(251 146 60);
	text-decoration: none;
}

.tsc-contact-ticket-head {
	margin-bottom: 1rem;
	padding: 0.85rem 1rem;
	border-radius: 0.85rem;
	border: 1px solid rgb(251 146 60 / 0.25);
	background: rgb(24 24 27 / 0.55);
}

.tsc-contact-ticket-no {
	font-family: ui-monospace, monospace;
	font-size: 0.75rem;
	font-weight: 700;
	color: rgb(251 146 60);
}

.tsc-contact-ticket-title {
	margin: 0.25rem 0 0.45rem;
	font-size: clamp(1rem, 2.5vw, 1.35rem);
	color: rgb(244 244 245);
}

.tsc-contact-closed-note {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	padding: 0.75rem 1rem;
	margin-top: 0.75rem;
	border-radius: 0.65rem;
	border: 1px solid rgb(113 113 122 / 0.35);
	background: rgb(39 39 42 / 0.45);
	font-size: 0.8125rem;
	color: rgb(161 161 170);
}

/* Shared ticket conversation thread */
.tsc-ticket-thread {
	display: grid;
	gap: 0.65rem;
}

.tsc-ticket-msg {
	padding: 0.75rem 0.85rem;
	border-radius: 0.65rem;
	border: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(9 9 11 / 0.35);
}

.tsc-ticket-msg--user {
	border-color: rgb(63 63 70 / 0.55);
}

.tsc-ticket-msg--staff {
	border-color: rgb(56 189 248 / 0.28);
	background: rgb(56 189 248 / 0.06);
}

.tsc-ticket-msg-head {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.35rem;
	margin-bottom: 0.45rem;
	font-size: 0.6875rem;
}

.tsc-ticket-msg-who {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	color: rgb(212 212 216);
}

.tsc-ticket-msg--staff .tsc-ticket-msg-who {
	color: rgb(186 230 253);
}

.tsc-ticket-msg-time {
	color: rgb(113 113 122);
}

.tsc-ticket-msg-body {
	font-size: 0.8125rem;
	line-height: 1.55;
	color: rgb(212 212 216);
	overflow-x: auto;
}

.tsc-staffbox-status--waiting { background: rgb(168 85 247 / 0.15); color: rgb(216 180 254); }
.tsc-staffbox-closed-label {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	font-size: 0.75rem;
	color: rgb(161 161 170);
}

@media (max-width: 640px) {
	.tsc-contact-ticket-row {
		grid-template-columns: 1fr;
	}
}

.tsc-contact-template-group + .tsc-contact-template-group {
	margin-top: 1.25rem;
	padding-top: 1.25rem;
	border-top: 1px solid rgb(39 39 42 / 0.65);
}

.tsc-contact-template-title {
	margin: 0 0 0.2rem;
	font-size: 0.9375rem;
	font-weight: 800;
	color: rgb(244 244 245);
}

.tsc-contact-template-sub {
	margin: 0 0 0.75rem;
	font-size: 0.75rem;
	color: rgb(161 161 170);
}

.tsc-contact-template-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 15rem), 1fr));
	gap: 0.55rem;
}

.tsc-contact-template-card {
	position: relative;
	cursor: pointer;
}

.tsc-contact-template-input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

.tsc-contact-template-card-inner {
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
	min-height: 100%;
	padding: 0.75rem 0.8rem;
	border-radius: 0.65rem;
	border: 1px solid rgb(63 63 70 / 0.55);
	background: rgb(24 24 27 / 0.65);
	transition: border-color 0.15s ease, background 0.15s ease, box-shadow 0.15s ease;
}

.tsc-contact-template-card:hover .tsc-contact-template-card-inner {
	border-color: rgb(251 146 60 / 0.35);
	background: rgb(39 39 42 / 0.75);
}

.tsc-contact-template-input:focus-visible + .tsc-contact-template-card-inner {
	outline: 2px solid rgb(251 146 60 / 0.55);
	outline-offset: 2px;
}

.tsc-contact-template-input:checked + .tsc-contact-template-card-inner {
	border-color: rgb(251 146 60 / 0.55);
	background: rgb(251 146 60 / 0.08);
	box-shadow: 0 0 0 1px rgb(251 146 60 / 0.12) inset;
}

.tsc-contact-template-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2rem;
	height: 2rem;
	border-radius: 0.5rem;
	color: rgb(251 146 60);
	background: rgb(251 146 60 / 0.12);
}

.tsc-contact-template-label {
	font-size: 0.8125rem;
	font-weight: 700;
	color: rgb(244 244 245);
	line-height: 1.3;
}

.tsc-contact-template-hint {
	font-size: 0.6875rem;
	line-height: 1.45;
	color: rgb(161 161 170);
}

.tsc-contact-template-tag {
	display: inline-flex;
	align-self: flex-start;
	margin-top: 0.15rem;
	padding: 0.12rem 0.45rem;
	border-radius: 999px;
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: rgb(253 186 116);
	background: rgb(251 146 60 / 0.12);
	border: 1px solid rgb(251 146 60 / 0.2);
}

.tsc-contact-template-tag--muted {
	color: rgb(161 161 170);
	background: rgb(39 39 42);
	border-color: rgb(63 63 70 / 0.55);
}

.tsc-contact-form {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	min-width: 0;
}

.tsc-contact-field {
	display: flex;
	flex-direction: column;
	gap: 0.45rem;
	min-width: 0;
}

.tsc-contact-field-label {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	font-size: 0.75rem;
	font-weight: 700;
	color: rgb(212 212 216);
}

.tsc-contact-input {
	width: 100%;
	padding: 0.7rem 0.85rem;
	font-size: 0.875rem;
	color: rgb(244 244 245);
	background: rgb(9 9 11 / 0.85);
	border: 1px solid rgb(63 63 70 / 0.65);
	border-radius: 0.55rem;
	outline: none;
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.tsc-contact-input:focus {
	border-color: rgb(251 146 60 / 0.55);
	box-shadow: 0 0 0 3px rgb(251 146 60 / 0.12);
}

.tsc-contact-field-hint {
	margin: 0;
	font-size: 0.6875rem;
	color: rgb(113 113 122);
	line-height: 1.45;
}

.tsc-contact-field-hint code {
	color: rgb(161 161 170);
}

.tsc-contact-editor {
	min-width: 0;
	padding: 0.65rem;
	border-radius: 0.65rem;
	border: 1px solid rgb(63 63 70 / 0.55);
	background: rgb(9 9 11 / 0.55);
	overflow-x: auto;
}

.tsc-contact-editor table {
	width: 100% !important;
	border: none !important;
	background: transparent !important;
}

.tsc-contact-editor td.embedded {
	padding: 0.15rem !important;
	background: transparent !important;
	border: none !important;
}

.tsc-contact-editor input[type="button"]:not(.tsc-bbcode-editor__btn):not(.tsc-bbcode-editor__smilies-toggle) {
	min-height: 2rem;
	padding: 0.25rem 0.5rem !important;
	font-size: 0.6875rem !important;
	border-radius: 0.35rem !important;
	border: 1px solid rgb(63 63 70 / 0.65) !important;
	background: rgb(39 39 42) !important;
	color: rgb(212 212 216) !important;
	cursor: pointer;
}

.tsc-contact-editor:not(:has(.tsc-bbcode-editor)) #bbcode_field,
.tsc-contact-editor:not(:has(.tsc-bbcode-editor)) textarea[name="msg"] {
	display: block;
	width: 100% !important;
	min-height: 16rem;
	max-width: 100%;
	padding: 0.75rem 0.85rem !important;
	font-size: 0.8125rem !important;
	line-height: 1.55 !important;
	color: rgb(244 244 245) !important;
	background: rgb(9 9 11 / 0.9) !important;
	border: 1px solid rgb(63 63 70 / 0.55) !important;
	border-radius: 0.55rem !important;
	resize: vertical;
	box-sizing: border-box;
}

.tsc-contact-editor img {
	max-width: 1.25rem;
	max-height: 1.25rem;
}

.tsc-contact-form-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.55rem;
	padding-top: 0.25rem;
}

.tsc-contact-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.4rem;
	min-height: 2.5rem;
	padding: 0.55rem 1rem;
	border-radius: 0.55rem;
	font-size: 0.8125rem;
	font-weight: 700;
	text-decoration: none;
	border: 1px solid transparent;
	cursor: pointer;
	transition: filter 0.15s ease, border-color 0.15s ease, background 0.15s ease;
}

.tsc-contact-btn--primary {
	color: rgb(9 9 11);
	background: linear-gradient(135deg, rgb(251 146 60), rgb(234 88 12));
	box-shadow: 0 6px 18px rgb(251 146 60 / 0.28);
}

.tsc-contact-btn--primary:hover {
	filter: brightness(1.05);
}

.tsc-contact-btn--ghost {
	color: rgb(212 212 216);
	background: rgb(39 39 42);
	border-color: rgb(63 63 70 / 0.65);
}

.tsc-contact-btn--ghost:hover {
	color: rgb(251 146 60);
	border-color: rgb(251 146 60 / 0.35);
}

@media (max-width: 767px) {
	.tsc-contact-template-grid {
		grid-template-columns: 1fr;
	}

	.tsc-contact-form-actions {
		flex-direction: column;
	}

	.tsc-contact-btn {
		width: 100%;
	}
}

/* ═══════════════════════════════════════════════════════════
   Global BBCode Editor (textbbcode)
   ═══════════════════════════════════════════════════════════ */

.tsc-bbcode-editor {
	--tsc-editor-accent: rgb(251 146 60);
	--tsc-editor-accent-hover: rgb(234 88 12);
	--tsc-editor-accent-soft: rgb(251 146 60 / 0.12);
	--tsc-editor-border: rgb(63 63 70 / 0.55);
	--tsc-editor-bg: rgb(9 9 11 / 0.55);
	--tsc-editor-surface: rgb(9 9 11);
	--tsc-editor-toolbar-bg: rgb(24 24 27 / 0.9);
	min-width: 0;
	border-radius: 0.75rem;
	border: 1px solid var(--tsc-editor-border);
	background: var(--tsc-editor-bg);
	overflow: hidden;
	box-shadow: 0 10px 30px rgb(0 0 0 / 0.18);
}

.tsc-contactstaff-page .tsc-bbcode-editor,
.tsc-page-contactstaff .tsc-bbcode-editor {
	--tsc-editor-accent: rgb(251 146 60);
	--tsc-editor-accent-hover: rgb(234 88 12);
	--tsc-editor-accent-soft: rgb(251 146 60 / 0.12);
}

.tsc-page-staffbox .tsc-bbcode-editor,
.tsc-staffbox-page .tsc-bbcode-editor {
	--tsc-editor-accent: rgb(56 189 248);
	--tsc-editor-accent-hover: rgb(14 165 233);
	--tsc-editor-accent-soft: rgb(56 189 248 / 0.14);
}

.tsc-page-forum .tsc-bbcode-editor {
	--tsc-editor-accent: rgb(96 165 250);
	--tsc-editor-accent-hover: rgb(59 130 246);
	--tsc-editor-accent-soft: rgb(96 165 250 / 0.14);
}

.tsc-bbcode-editor__toolbar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.45rem 0.55rem;
	padding: 0.55rem 0.65rem;
	border-bottom: 1px solid rgb(39 39 42 / 0.65);
	background: var(--tsc-editor-toolbar-bg);
}

.tsc-bbcode-editor__tools {
	display: flex;
	flex-wrap: nowrap;
	gap: 0.25rem;
	flex: 1 1 auto;
	min-width: 0;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: thin;
	padding-bottom: 0.1rem;
}

.tsc-bbcode-editor__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	min-width: 2.15rem;
	min-height: 2rem;
	padding: 0.25rem 0.55rem;
	font-size: 0.6875rem;
	font-weight: 700;
	line-height: 1;
	color: rgb(212 212 216);
	background: rgb(39 39 42);
	border: 1px solid rgb(63 63 70 / 0.75);
	border-radius: 0.4rem;
	cursor: pointer;
	transition: color 0.15s ease, border-color 0.15s ease, background 0.15s ease, box-shadow 0.15s ease;
}

.tsc-bbcode-editor__btn--bold {
	font-weight: 800;
}

.tsc-bbcode-editor__btn--italic {
	font-style: italic;
}

.tsc-bbcode-editor__btn--underline {
	text-decoration: underline;
}

.tsc-bbcode-editor__btn:hover,
.tsc-bbcode-editor__btn:focus-visible {
	color: var(--tsc-editor-accent);
	border-color: var(--tsc-editor-accent);
	background: rgb(24 24 27);
	outline: none;
	box-shadow: 0 0 0 2px var(--tsc-editor-accent-soft);
}

.tsc-bbcode-editor__link,
.tsc-bbcode-editor__smilies-more {
	display: inline-flex;
	align-items: center;
	flex: 0 0 auto;
	font-size: 0.6875rem;
	font-weight: 700;
	color: var(--tsc-editor-accent);
	text-decoration: none;
	white-space: nowrap;
	transition: color 0.15s ease, opacity 0.15s ease;
}

.tsc-bbcode-editor__link:hover,
.tsc-bbcode-editor__smilies-more:hover {
	color: var(--tsc-editor-accent-hover);
	text-decoration: underline;
}

.tsc-bbcode-editor__smilies-toggle {
	display: none;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	min-height: 2rem;
	padding: 0.25rem 0.65rem;
	font-size: 0.6875rem;
	font-weight: 700;
	color: rgb(212 212 216);
	background: rgb(39 39 42);
	border: 1px solid rgb(63 63 70 / 0.75);
	border-radius: 0.4rem;
	cursor: pointer;
	transition: color 0.15s ease, border-color 0.15s ease, background 0.15s ease;
}

.tsc-bbcode-editor__smilies-toggle:hover,
.tsc-bbcode-editor__smilies-toggle[aria-expanded="true"] {
	color: var(--tsc-editor-accent);
	border-color: var(--tsc-editor-accent);
	background: rgb(24 24 27);
}

.tsc-bbcode-editor__workspace {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: stretch;
}

.tsc-bbcode-editor__compose {
	min-width: 0;
	padding: 0.65rem;
}

.tsc-bbcode-editor__textarea,
.tsc-bbcode-editor #bbcode_field {
	display: block;
	width: 100%;
	min-height: 16rem;
	max-width: 100%;
	padding: 0.75rem 0.85rem;
	font-size: 0.8125rem;
	line-height: 1.55;
	font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
	color: rgb(244 244 245);
	background: var(--tsc-editor-surface);
	border: 1px solid rgb(63 63 70 / 0.55);
	border-radius: 0.55rem;
	resize: vertical;
	box-sizing: border-box;
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.tsc-bbcode-editor__textarea::placeholder {
	color: rgb(113 113 122);
}

.tsc-bbcode-editor__textarea:focus,
.tsc-bbcode-editor #bbcode_field:focus {
	outline: none;
	border-color: var(--tsc-editor-accent);
	box-shadow: 0 0 0 2px var(--tsc-editor-accent-soft);
}

.tsc-bbcode-editor__smilies-panel {
	display: flex;
	flex-direction: column;
	gap: 0.45rem;
	width: 7.75rem;
	padding: 0.55rem;
	border-left: 1px solid rgb(39 39 42 / 0.65);
	background: rgb(24 24 27 / 0.35);
}

.tsc-bbcode-editor__smilies-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 0.2rem;
}

.tsc-bbcode-editor__smilie {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 1.75rem;
	padding: 0.15rem;
	border-radius: 0.35rem;
	text-decoration: none;
	transition: background 0.15s ease, transform 0.15s ease;
}

.tsc-bbcode-editor__smilie:hover {
	background: rgb(39 39 42);
	transform: scale(1.05);
}

.tsc-bbcode-editor__smilie img {
	display: block;
	width: 1.25rem;
	height: 1.25rem;
	object-fit: contain;
}

.tsc-bbcode-editor__smilies-more {
	justify-content: center;
	padding-top: 0.15rem;
	text-align: center;
}

/* Page wrappers — avoid double borders around global editor */
.tsc-contact-editor:has(.tsc-bbcode-editor),
.tsc-staffbox-reply-editor:has(.tsc-bbcode-editor),
.tsc-details-comment-editor:has(.tsc-bbcode-editor),
.tsc-forum-editor:has(.tsc-bbcode-editor),
.tsc-pm-editor:has(.tsc-bbcode-editor) {
	padding: 0;
	border: none;
	background: transparent;
	overflow: visible;
}

.tsc-contact-editor:has(.tsc-md-editor) {
	padding: 0;
	border: none;
	background: transparent;
	overflow: visible;
}

.tsc-contact-editor:has(.tsc-md-editor) .tsc-md-editor {
	width: 100%;
}

.tsc-contact-editor:has(.tsc-bbcode-editor) table,
.tsc-staffbox-reply-editor:has(.tsc-bbcode-editor) table,
.tsc-details-comment-editor:has(.tsc-bbcode-editor) table,
.tsc-forum-editor:has(.tsc-bbcode-editor) table,
.tsc-pm-editor:has(.tsc-bbcode-editor) table {
	display: none;
}

@media (max-width: 767px) {
	.tsc-bbcode-editor__workspace {
		grid-template-columns: 1fr;
	}

	.tsc-bbcode-editor__smilies-panel {
		display: none;
		width: 100%;
		border-left: none;
		border-top: 1px solid rgb(39 39 42 / 0.65);
	}

	.tsc-bbcode-editor__smilies-panel--open {
		display: flex;
	}

	.tsc-bbcode-editor__smilies-toggle {
		display: inline-flex;
	}

	.tsc-bbcode-editor__textarea,
	.tsc-bbcode-editor #bbcode_field {
		min-height: 14rem;
	}
}

/* ═══════════════════════════════════════════════════════════
   Premium User Class Colors (get_class_color)
   Member: refined solids · Uploader+: dual gradients · Staff: premium FX
   ═══════════════════════════════════════════════════════════ */

@keyframes tsc-uc-shimmer {
	0%, 100% { background-position: 0% 50%; }
	50% { background-position: 100% 50%; }
}

@keyframes tsc-uc-glow-pulse {
	0%, 100% { filter: brightness(1) drop-shadow(0 0 0.45rem var(--tsc-uc-glow, transparent)); }
	50% { filter: brightness(1.08) drop-shadow(0 0 0.75rem var(--tsc-uc-glow, transparent)); }
}

:is(.ucuser, .ucpoweruser, .ucextremeuser, .ucmegauser, .ucvip, .ucehrenmitglied, .ucfriend, .ucircteam) {
	font-weight: 600;
	text-decoration-color: currentColor;
}

.ucuser { color: rgb(228 228 231); }
.ucpoweruser { color: rgb(125 211 252); }
.ucextremeuser { color: rgb(196 181 253); }
.ucmegauser { color: rgb(129 140 248); }
.ucvip { color: rgb(244 114 182); }
.ucehrenmitglied {
	color: rgb(253 224 171);
	text-shadow: 0 0 18px rgb(251 191 36 / 0.22);
}
.ucfriend { color: rgb(251 113 133); }
.ucircteam { color: rgb(250 204 21); }

:is(.ucuploader, .ucreleaser, .ucpromoter, .ucguteam, .ucmoderator, .ucadministrator, .ucsysop, .ucleader, .ucowner, .ucroyals),
:is(.ucuploader, .ucreleaser, .ucpromoter, .ucguteam, .ucmoderator, .ucadministrator, .ucsysop, .ucleader, .ucowner, .ucroyals) :is(b, strong),
:is(a, span, font, h1, h2, h3):is(.ucuploader, .ucreleaser, .ucpromoter, .ucguteam, .ucmoderator, .ucadministrator, .ucsysop, .ucleader, .ucowner, .ucroyals) {
	background-clip: text;
	-webkit-background-clip: text;
	color: transparent;
	-webkit-text-fill-color: transparent;
	font-weight: 700;
	text-decoration-color: rgb(161 161 170 / 0.45);
}

.ucuploader,
.ucuploader :is(b, strong) {
	background-image: linear-gradient(118deg, rgb(34 211 238) 0%, rgb(56 189 248) 42%, rgb(99 102 241) 100%);
}

.ucreleaser,
.ucreleaser :is(b, strong) {
	background-image: linear-gradient(118deg, rgb(34 197 94) 0%, rgb(22 163 74) 48%, rgb(132 204 22) 100%);
}

.ucpromoter,
.ucpromoter :is(b, strong) {
	background-image: linear-gradient(118deg, rgb(167 139 250) 0%, rgb(192 132 252) 46%, rgb(244 114 182) 100%);
}

.ucguteam,
.ucguteam :is(b, strong) {
	background-image: linear-gradient(118deg, rgb(163 230 53) 0%, rgb(74 222 128) 44%, rgb(45 212 191) 100%);
}

.ucmoderator,
.ucmoderator :is(b, strong) {
	--tsc-uc-glow: rgb(34 197 94 / 0.45);
	background-image: linear-gradient(118deg, rgb(74 222 128) 0%, rgb(52 211 153) 52%, rgb(134 239 172) 100%);
	filter: drop-shadow(0 0 0.45rem rgb(34 197 94 / 0.28));
}

.ucadministrator,
.ucadministrator :is(b, strong) {
	--tsc-uc-glow: rgb(217 119 6 / 0.45);
	background-image: linear-gradient(118deg, rgb(217 119 6) 0%, rgb(180 83 9) 46%, rgb(146 64 14) 100%);
	filter: drop-shadow(0 0 0.55rem rgb(180 83 9 / 0.32));
}

.ucsysop,
.ucsysop :is(b, strong) {
	--tsc-uc-glow: rgb(248 113 113 / 0.55);
	background-image: linear-gradient(118deg, rgb(251 113 133) 0%, rgb(239 68 68) 46%, rgb(249 115 22) 100%);
	filter: drop-shadow(0 0 0.65rem rgb(239 68 68 / 0.38));
	animation: tsc-uc-glow-pulse 4.5s ease-in-out infinite;
}

.ucleader,
.ucleader :is(b, strong) {
	background-image: linear-gradient(118deg, rgb(244 244 245) 0%, rgb(212 212 216) 38%, rgb(161 161 170) 72%, rgb(250 250 250) 100%);
	filter: drop-shadow(0 0 0.55rem rgb(255 255 255 / 0.18));
}

.ucowner,
.ucowner :is(b, strong) {
	--tsc-uc-glow: rgb(167 139 250 / 0.55);
	background-image: linear-gradient(118deg, rgb(244 244 245) 0%, rgb(167 139 250) 28%, rgb(251 191 36) 58%, rgb(192 132 252) 100%);
	background-size: 180% auto;
	filter: drop-shadow(0 0 0.75rem rgb(167 139 250 / 0.38));
	animation: tsc-uc-shimmer 7s ease-in-out infinite;
}

.ucroyals,
.ucroyals :is(b, strong) {
	--tsc-uc-glow: rgb(232 121 249 / 0.55);
	background-image: linear-gradient(118deg, rgb(168 85 247) 0%, rgb(232 121 249) 34%, rgb(251 191 36) 68%, rgb(168 85 247) 100%);
	background-size: 220% auto;
	filter: drop-shadow(0 0 0.85rem rgb(192 132 252 / 0.42));
	animation: tsc-uc-shimmer 5.5s ease-in-out infinite;
}

:is(a, span):is(.ucuploader, .ucreleaser, .ucpromoter, .ucguteam, .ucmoderator, .ucadministrator, .ucsysop, .ucleader, .ucowner, .ucroyals):hover,
:is(a, span):is(.ucuploader, .ucreleaser, .ucpromoter, .ucguteam, .ucmoderator, .ucadministrator, .ucsysop, .ucleader, .ucowner, .ucroyals):hover :is(b, strong) {
	filter: brightness(1.1) drop-shadow(0 0 0.75rem var(--tsc-uc-glow, rgb(255 255 255 / 0.12));
}

.tsc-online-rank:is(.ucuser, .ucpoweruser, .ucextremeuser, .ucmegauser, .ucvip, .ucehrenmitglied, .ucfriend, .ucircteam) {
	display: inline-block;
	padding: 0.08rem 0.35rem;
	border-radius: 999px;
	border: 1px solid rgb(63 63 70 / 0.55);
	background-color: rgb(24 24 27 / 0.55);
	font-size: 0.6875rem;
	font-weight: 700;
	line-height: 1.35;
}

.tsc-online-rank:is(.ucuploader, .ucreleaser, .ucpromoter, .ucguteam, .ucmoderator, .ucadministrator, .ucsysop, .ucleader, .ucowner, .ucroyals) {
	display: inline-block;
	padding: 0.1rem 0.4rem;
	border-radius: 999px;
	border: 1px solid rgb(63 63 70 / 0.45);
	background-color: rgb(9 9 11 / 0.65);
	font-size: 0.6875rem;
	line-height: 1.35;
}

@media (prefers-reduced-motion: reduce) {
	.ucsysop,
	.ucsysop :is(b, strong),
	.ucowner,
	.ucowner :is(b, strong),
	.ucroyals,
	.ucroyals :is(b, strong) {
		animation: none;
	}
}

/* ═══════════════════════════════════════════════════════════
   Premium Friends — friends.php (index schema)
   ═══════════════════════════════════════════════════════════ */

.tsc-friends-page {
	--tsc-friends-accent: rgb(251 146 60);
	--tsc-friends-accent-soft: rgb(251 146 60 / 0.14);
	--tsc-friends-glow: rgb(251 146 60 / 0.22);
	--tsc-friends-border: rgb(39 39 42 / 0.72);
	--tsc-friends-online: rgb(74 222 128);
	--tsc-friends-block: rgb(248 113 113);
	min-width: 0;
	padding-bottom: 1.5rem;
}

.tsc-index-block--friends {
	border-color: rgb(251 146 60 / 0.28);
	box-shadow:
		0 0 0 1px rgb(251 146 60 / 0.06) inset,
		0 12px 40px rgb(0 0 0 / 0.35);
}

.tsc-index-section-body--friends {
	padding: clamp(0.75rem, 2vw, 1.15rem);
	min-width: 0;
}

.tsc-friends-section {
	scroll-margin-top: 1rem;
}

.tsc-page-friends .maincontent > br {
	display: none;
}

.tsc-friends-hero {
	position: relative;
	margin-bottom: 1rem;
	padding: clamp(1rem, 3vw, 1.5rem);
	border-radius: 1rem;
	border: 1px solid rgb(251 146 60 / 0.28);
	background:
		radial-gradient(ellipse 80% 60% at 50% -20%, rgb(251 146 60 / 0.16), transparent 60%),
		linear-gradient(160deg, rgb(24 24 27 / 0.95), rgb(9 9 11 / 0.9));
	overflow: hidden;
}

.tsc-friends-hero-glow {
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at 12% 85%, rgb(56 189 248 / 0.08), transparent 42%);
	pointer-events: none;
}

.tsc-friends-hero-inner {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.tsc-friends-hero-profile {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: clamp(0.85rem, 2.5vw, 1.35rem);
	min-width: 0;
}

.tsc-friends-hero-avatar-wrap {
	position: relative;
	flex-shrink: 0;
}

.tsc-friends-hero-avatar {
	width: clamp(4rem, 12vw, 5.25rem);
	height: clamp(4rem, 12vw, 5.25rem);
	object-fit: cover;
	border-radius: 1.1rem;
	border: 2px solid rgb(251 146 60 / 0.35);
	box-shadow: 0 12px 36px rgb(0 0 0 / 0.45);
}

.tsc-friends-hero-ring {
	position: absolute;
	inset: -4px;
	border-radius: 1.2rem;
	border: 1px solid rgb(251 146 60 / 0.28);
	pointer-events: none;
}

.tsc-friends-hero-copy {
	min-width: 0;
	flex: 1 1 14rem;
}

.tsc-friends-hero-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.25rem 0.55rem;
	border-radius: 999px;
	border: 1px solid rgb(251 146 60 / 0.35);
	background: rgb(251 146 60 / 0.1);
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgb(254 215 170);
	margin-bottom: 0.5rem;
}

.tsc-friends-hero-title {
	margin: 0 0 0.35rem;
	font-size: clamp(1.25rem, 3vw, 1.75rem);
	font-weight: 800;
	color: rgb(244 244 245);
}

.tsc-friends-hero-sub {
	margin: 0 0 0.75rem;
	font-size: clamp(0.75rem, 2vw, 0.875rem);
	color: rgb(161 161 170);
	line-height: 1.55;
	max-width: 44rem;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.35rem;
}

.tsc-friends-hero-user {
	font-weight: 700;
	text-decoration: none;
}

.tsc-friends-hero-user:hover {
	text-decoration: underline;
}

.tsc-friends-hero-flag {
	border-radius: 2px;
	vertical-align: middle;
}

.tsc-friends-hero-country {
	color: rgb(161 161 170);
}

.tsc-friends-hero-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
}

.tsc-friends-chip {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.35rem 0.6rem;
	border-radius: 999px;
	border: 1px solid var(--tsc-friends-border);
	background: rgb(24 24 27 / 0.55);
	font-size: 0.6875rem;
	color: rgb(212 212 216);
}

.tsc-friends-chip .tsc-icon {
	color: rgb(251 146 60 / 0.9);
}

.tsc-friends-chip--online .tsc-icon {
	color: var(--tsc-friends-online);
}

.tsc-friends-chip--mutual .tsc-icon {
	color: rgb(244 114 182);
}

.tsc-friends-chip--block .tsc-icon {
	color: var(--tsc-friends-block);
}

.tsc-friends-quicknav {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
}

.tsc-friends-quicknav-link {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.45rem 0.7rem;
	border-radius: 0.55rem;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(9 9 11 / 0.55);
	color: rgb(212 212 216);
	font-size: 0.6875rem;
	font-weight: 600;
	text-decoration: none;
	transition: border-color 0.15s ease, background 0.15s ease, color 0.15s ease;
}

.tsc-friends-quicknav-link:hover {
	border-color: rgb(251 146 60 / 0.4);
	background: rgb(251 146 60 / 0.1);
	color: rgb(254 215 170);
}

.tsc-friends-quicknav-link--back {
	margin-left: auto;
}

.tsc-friends-section-badge {
	display: inline-flex;
	align-items: center;
	padding: 0.2rem 0.55rem;
	border-radius: 999px;
	border: 1px solid rgb(251 146 60 / 0.35);
	background: rgb(251 146 60 / 0.1);
	font-size: 0.6875rem;
	font-weight: 700;
	color: rgb(254 215 170);
}

.tsc-friends-section-badge--block {
	border-color: rgb(239 68 68 / 0.35);
	background: rgb(239 68 68 / 0.1);
	color: rgb(252 165 165);
}

.tsc-friends-notice {
	display: flex;
	gap: 0.65rem;
	align-items: flex-start;
	margin-bottom: 0.85rem;
	padding: 0.75rem 0.9rem;
	border-radius: 0.75rem;
	border: 1px solid rgb(56 189 248 / 0.28);
	background: rgb(56 189 248 / 0.08);
	color: rgb(186 230 253);
	font-size: 0.75rem;
	line-height: 1.5;
}

.tsc-friends-notice .tsc-icon {
	flex-shrink: 0;
	margin-top: 0.1rem;
	color: rgb(56 189 248);
}

.tsc-friends-notice-body p {
	margin: 0 0 0.35rem;
}

.tsc-friends-notice-body p:last-child {
	margin-bottom: 0;
}

.tsc-friends-notice a {
	color: rgb(125 211 252);
}

.tsc-friends-toolbar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.65rem;
	margin-bottom: 0.85rem;
}

.tsc-friends-search {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	flex: 1 1 12rem;
	min-width: 0;
	padding: 0.45rem 0.7rem;
	border-radius: 0.6rem;
	border: 1px solid var(--tsc-friends-border);
	background: rgb(9 9 11 / 0.65);
	color: rgb(113 113 122);
}

.tsc-friends-search-input {
	flex: 1;
	min-width: 0;
	border: none;
	background: transparent;
	color: rgb(228 228 231);
	font-size: 0.75rem;
	outline: none;
}

.tsc-friends-search-input::placeholder {
	color: rgb(113 113 122);
}

.tsc-friends-sort {
	display: inline-flex;
	flex-wrap: wrap;
	gap: 0.35rem;
}

.tsc-friends-sort-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	padding: 0.4rem 0.65rem;
	border-radius: 0.5rem;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(24 24 27 / 0.75);
	color: rgb(161 161 170);
	font-size: 0.6875rem;
	font-weight: 600;
	cursor: pointer;
	transition: border-color 0.15s ease, background 0.15s ease, color 0.15s ease;
}

.tsc-friends-sort-btn:hover,
.tsc-friends-sort-btn.is-active {
	border-color: rgb(251 146 60 / 0.4);
	background: rgb(251 146 60 / 0.12);
	color: rgb(254 215 170);
}

.tsc-friends-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 18rem), 1fr));
	gap: 0.75rem;
}

.tsc-friends-card {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
	padding: 0.9rem;
	border-radius: 0.85rem;
	border: 1px solid var(--tsc-friends-border);
	background: linear-gradient(160deg, rgb(24 24 27 / 0.82), rgb(9 9 11 / 0.62));
	box-shadow: 0 10px 28px rgb(0 0 0 / 0.28);
	transition: border-color 0.15s ease, transform 0.15s ease;
}

.tsc-friends-card:hover {
	border-color: rgb(251 146 60 / 0.35);
	transform: translateY(-1px);
}

.tsc-friends-card-head {
	display: flex;
	gap: 0.75rem;
	align-items: flex-start;
	min-width: 0;
}

.tsc-friends-card-avatar-link {
	position: relative;
	flex-shrink: 0;
}

.tsc-friends-card-avatar {
	width: 3.5rem;
	height: 3.5rem;
	object-fit: cover;
	border-radius: 0.85rem;
	border: 1px solid rgb(63 63 70 / 0.8);
}

.tsc-friends-card-online {
	position: absolute;
	right: -0.15rem;
	bottom: -0.15rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.1rem;
	height: 1.1rem;
	border-radius: 999px;
	background: rgb(20 83 45);
	border: 2px solid rgb(9 9 11);
	color: var(--tsc-friends-online);
	font-size: 0.45rem;
}

.tsc-friends-card-identity {
	min-width: 0;
	flex: 1;
}

.tsc-friends-card-name {
	display: inline-block;
	font-size: 0.9375rem;
	font-weight: 700;
	text-decoration: none;
	margin-bottom: 0.15rem;
}

.tsc-friends-card-name:hover {
	text-decoration: underline;
}

.tsc-friends-card-rank {
	margin: 0.2rem 0 0;
	font-size: 0.6875rem;
	color: rgb(113 113 122);
}

.tsc-friends-card-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	margin-top: 0.25rem;
	margin-right: 0.35rem;
	padding: 0.15rem 0.45rem;
	border-radius: 999px;
	font-size: 0.5625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.tsc-friends-card-badge--mutual {
	border: 1px solid rgb(244 114 182 / 0.35);
	background: rgb(244 114 182 / 0.1);
	color: rgb(251 182 206);
}

.tsc-friends-card-badge--off {
	border: 1px solid rgb(113 113 122 / 0.35);
	background: rgb(39 39 42 / 0.65);
	color: rgb(161 161 170);
}

.tsc-friends-card-meta {
	display: flex;
	flex-direction: column;
	gap: 0.3rem;
	font-size: 0.6875rem;
	color: rgb(161 161 170);
}

.tsc-friends-card-meta-item {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
}

.tsc-friends-card-meta-item .tsc-icon {
	color: rgb(113 113 122);
}

.tsc-friends-card-meta-item strong {
	color: rgb(212 212 216);
	font-weight: 600;
}

.tsc-friends-card-status {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	font-weight: 600;
}

.tsc-friends-card-status--on {
	color: var(--tsc-friends-online);
}

.tsc-friends-card-status--off {
	color: rgb(113 113 122);
}

.tsc-friends-card-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
	margin-top: auto;
}

.tsc-friends-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.35rem;
	padding: 0.45rem 0.7rem;
	border-radius: 0.55rem;
	border: 1px solid var(--tsc-friends-border);
	background: rgb(24 24 27 / 0.85);
	color: rgb(212 212 216);
	font-size: 0.6875rem;
	font-weight: 600;
	text-decoration: none;
	cursor: pointer;
	transition: border-color 0.15s ease, background 0.15s ease, color 0.15s ease;
}

.tsc-friends-btn:hover {
	border-color: rgb(251 146 60 / 0.4);
	background: rgb(251 146 60 / 0.1);
	color: rgb(254 215 170);
}

.tsc-friends-btn--primary {
	border-color: rgb(251 146 60 / 0.45);
	background: linear-gradient(135deg, rgb(251 146 60 / 0.22), rgb(234 88 12 / 0.12));
	color: rgb(254 243 199);
}

.tsc-friends-btn--primary:hover {
	border-color: rgb(251 146 60 / 0.65);
	background: linear-gradient(135deg, rgb(251 146 60 / 0.32), rgb(234 88 12 / 0.18));
	color: rgb(255 251 235);
}

.tsc-friends-btn--danger:hover {
	border-color: rgb(239 68 68 / 0.45);
	background: rgb(239 68 68 / 0.12);
	color: rgb(252 165 165);
}

.tsc-friends-filter-empty {
	margin: 0.5rem 0 0;
	font-size: 0.75rem;
	color: rgb(161 161 170);
	text-align: center;
}

.tsc-friends-blocks-hint {
	display: flex;
	align-items: center;
	gap: 0.4rem;
	margin: 0 0 0.75rem;
	font-size: 0.75rem;
	color: rgb(161 161 170);
}

.tsc-friends-blocks {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.tsc-friends-block-chip {
	display: inline-flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.35rem;
	padding: 0.45rem 0.65rem;
	border-radius: 999px;
	border: 1px solid rgb(239 68 68 / 0.28);
	background: rgb(39 24 24 / 0.55);
}

.tsc-friends-block-name {
	font-size: 0.75rem;
	font-weight: 700;
	text-decoration: none;
}

.tsc-friends-block-name:hover {
	text-decoration: underline;
}

.tsc-friends-block-remove {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	padding: 0.2rem 0.45rem;
	border-radius: 999px;
	border: 1px solid rgb(63 63 70 / 0.65);
	background: rgb(24 24 27 / 0.75);
	color: rgb(161 161 170);
	font-size: 0.625rem;
	font-weight: 600;
	text-decoration: none;
}

.tsc-friends-block-remove:hover {
	border-color: rgb(74 222 128 / 0.4);
	background: rgb(20 83 45 / 0.35);
	color: rgb(187 247 208);
}

@media (max-width: 767px) {
	.tsc-friends-quicknav-link--back {
		margin-left: 0;
		width: 100%;
		justify-content: center;
	}

	.tsc-friends-toolbar {
		flex-direction: column;
		align-items: stretch;
	}

	.tsc-friends-sort {
		width: 100%;
	}

	.tsc-friends-sort-btn {
		flex: 1 1 auto;
		justify-content: center;
	}

	.tsc-friends-card-actions .tsc-friends-btn {
		flex: 1 1 calc(50% - 0.2rem);
	}
}

/* backdrop-filter = dauerhafte GPU-Last über dem Hintergrund */
body.tsc-premium-bg,
body.tsc-premium-bg * {
	backdrop-filter: none !important;
	-webkit-backdrop-filter: none !important;
}
