@charset "UTF-8";
/* Fonts */
@font-face {
	font-family: "Montserrat";
	src: url("fonts/Montserrat-Regular.woff2") format("woff2"), url("fonts/Montserrat-Regular.woff") format("woff");
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: "Montserrat";
	src: url("fonts/Montserrat-Medium.woff2") format("woff2"), url("fonts/Montserrat-Medium.woff") format("woff");
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: "Montserrat";
	src: url("fonts/Montserrat-SemiBold.woff2") format("woff2"), url("fonts/Montserrat-SemiBold.woff") format("woff");
	font-weight: 600;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: "Montserrat";
	src: url("fonts/Montserrat-Bold.woff2") format("woff2"), url("fonts/Montserrat-Bold.woff") format("woff");
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}
/* Defaults */
html,
body {
	height: 100%;
}

html {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}

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

:root {
	--surface: #f5f7fa;
	--surface-elevated: #fafbfc;
	--text-primary: #111827;
	--text-inverse: #ffffff;
	--brand: #1e3a8a;
	--brand-accent: #3b82f6;
	--border: #e8eaed;
	--shadow-color: 24, 24, 27;
	/* Цвета из логотипа РФОИ (футбол для всех, Раменское) */
	--logo-blue: #205BC8;
	--logo-white: #ffffff;
	--logo-green: #4DA94E;
	--logo-green-dark: #347234;
	--logo-green-light: #6CCB6B;
}

@media (prefers-color-scheme: dark) {
	:root {
		--surface: #071510;
		--surface-elevated: #0d1c14;
		--text-primary: #e5e7eb;
		--text-inverse: #071510;
		--brand: #89f18e;
		--brand-accent: #4da94e;
		--border: #1a3020;
	}
}
body[data-theme=dark] {
	background: linear-gradient(165deg, #030905 0%, #06100a 40%, #050e08 100%);
}

body {
	color: var(--text-primary);
	max-width: 120rem;
	width: 100%;
	margin: 0 auto;
	font-size: 1rem;
	line-height: 1.2;
	font-family: "Montserrat", Arial, Helvetica, sans-serif;
	background: linear-gradient(160deg, #f8fafc 0%, #f1f5f9 35%, #eef2f7 100%);
	min-height: 100vh;
}

.wrapper {
	max-width: 120rem;
	margin: 0 auto;
	overflow-x: hidden;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	width: 100%;
	min-height: 100vh;
	position: relative;
	z-index: 1;
}

.container {
	max-width: 77rem;
	margin: 0 auto;
	padding: 0 0.9375rem;
}
@media screen and (max-width: 48rem) {
	.container {
		padding: 0;
	}
}

p,
h1,
h2,
h3,
h4 {
	margin: 0;
	padding: 0;
}

table {
	caption-side: top;
}

ul,
li {
	margin: 0;
	padding: 0;
	list-style: none;
}

br {
	line-height: 0;
}

a:hover,
a {
	color: inherit;
	-webkit-transition: 0.3s;
	transition: 0.3s;
	text-decoration: none;
}

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

*:focus {
	outline: none !important;
}

input:focus {
	outline: none;
}

[type=submit][disabled] {
	cursor: not-allowed !important;
	opacity: 0.5;
}

input::-webkit-input-placeholder {
	color: white;
}

input::-moz-placeholder {
	color: white;
}

input:-ms-input-placeholder {
	color: white;
}

input::-ms-input-placeholder {
	color: white;
}

input::placeholder {
	color: white;
}

.lazy {
	background-image: none !important;
	opacity: 0;
}
.lazy:before, .lazy:after {
	content: none !important;
}
.lazy-loaded {
	opacity: 1;
	-webkit-transition: 0.1s;
	transition: 0.1s;
}

.widget-form-privacy {
	display: none !important;
}

/* ===== ФУТЕР ===== */
.site-footer {
	width: 100%;
	margin-top: auto;
	padding: 2.5rem 1.25rem 2rem;
	background: -webkit-gradient(linear, left top, left bottom, from(#eef2f7), to(#e4ede8));
	background: linear-gradient(to bottom, #eef2f7 0%, #e4ede8 100%);
	border-top: 0.0625rem solid rgba(14, 44, 44, 0.1);
	color: #2d4a35;
}

.site-footer__inner {
	max-width: 77rem;
	margin: 0 auto;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 1.5rem;
	text-align: center;
}

.site-footer__brand {
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 0.75rem;
	text-decoration: none;
	color: #0e2c2c;
	font-weight: 800;
	font-size: 1.25rem;
	letter-spacing: 0.1em;
}
.site-footer__brand-logo {
	width: 3rem;
	height: 3rem;
	-o-object-fit: contain;
	   object-fit: contain;
	-webkit-filter: drop-shadow(0 0.0625rem 0.25rem rgba(0, 0, 0, 0.15));
	        filter: drop-shadow(0 0.0625rem 0.25rem rgba(0, 0, 0, 0.15));
}
.site-footer__brand-text {
	font-weight: 800;
	letter-spacing: 0.1em;
}

.site-footer__nav {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	gap: 0.375rem;
}
.site-footer__nav a {
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 0.3125rem;
	color: #3a5c42;
	text-decoration: none;
	font-size: 0.8125rem;
	font-weight: 500;
	padding: 0.375rem 0.875rem;
	border-radius: 9999px;
	border: 0.0625rem solid rgba(14, 44, 44, 0.15);
	-webkit-transition: background 0.18s ease, color 0.18s ease, border-color 0.18s ease;
	transition: background 0.18s ease, color 0.18s ease, border-color 0.18s ease;
}
.site-footer__nav a:hover {
	background: rgba(14, 44, 44, 0.08);
	color: #0e2c2c;
	border-color: rgba(14, 44, 44, 0.25);
}

.site-footer__social {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	gap: 0.625rem;
}
.site-footer__social a {
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 0.4375rem;
	color: #0e2c2c;
	text-decoration: none;
	font-size: 0.875rem;
	font-weight: 600;
	padding: 0.5rem 1.125rem;
	border-radius: 9999px;
	background: rgba(14, 44, 44, 0.07);
	border: 0.0625rem solid rgba(14, 44, 44, 0.15);
	-webkit-transition: background 0.18s ease, border-color 0.18s ease;
	transition: background 0.18s ease, border-color 0.18s ease;
}
.site-footer__social a:hover {
	background: rgba(14, 44, 44, 0.13);
	border-color: rgba(14, 44, 44, 0.28);
}
.site-footer__social a i {
	font-size: 1rem;
}

.site-footer__seo {
	width: 100%;
	max-width: 43.75rem;
	padding-top: 1.25rem;
	border-top: 0.0625rem solid rgba(14, 44, 44, 0.1);
}
.site-footer__seo-text {
	font-size: 0.75rem;
	color: rgba(14, 44, 44, 0.45);
	margin: 0;
	line-height: 1.7;
}

.site-footer__copy {
	font-size: 0.75rem;
	color: rgba(14, 44, 44, 0.35);
	padding-top: 0.25rem;
}

/* Тёмная тема */
body[data-theme=dark] .site-footer {
	background: -webkit-gradient(linear, left top, left bottom, from(#040d06), to(#050e07));
	background: linear-gradient(to bottom, #040d06 0%, #050e07 100%);
	border-top-color: rgba(137, 241, 142, 0.1);
	color: #c8f0cc;
}
body[data-theme=dark] .site-footer .site-footer__brand {
	color: #e8fde8;
}
body[data-theme=dark] .site-footer .site-footer__nav a {
	color: #a8deb0;
	border-color: rgba(137, 241, 142, 0.18);
}
body[data-theme=dark] .site-footer .site-footer__nav a:hover {
	background: rgba(137, 241, 142, 0.1);
	color: #d4f5d8;
	border-color: rgba(137, 241, 142, 0.35);
}
body[data-theme=dark] .site-footer .site-footer__social a {
	color: #c8f0cc;
	background: rgba(137, 241, 142, 0.08);
	border-color: rgba(137, 241, 142, 0.18);
}
body[data-theme=dark] .site-footer .site-footer__social a:hover {
	background: rgba(137, 241, 142, 0.15);
	border-color: rgba(137, 241, 142, 0.32);
}
body[data-theme=dark] .site-footer .site-footer__seo {
	border-top-color: rgba(137, 241, 142, 0.1);
}
body[data-theme=dark] .site-footer .site-footer__seo-text {
	color: rgba(200, 240, 204, 0.5);
}
body[data-theme=dark] .site-footer .site-footer__copy {
	color: rgba(200, 240, 204, 0.35);
}

/* ============================================
   АНИМАЦИИ ДЛЯ ПОПАПОВ (МОДАЛЬНЫХ ОКОН)
   ============================================ */
/* Базовые keyframes */
@-webkit-keyframes scaleIn {
	from {
		opacity: 0;
		-webkit-transform: scale(0.9);
		        transform: scale(0.9);
	}
	to {
		opacity: 1;
		-webkit-transform: scale(1);
		        transform: scale(1);
	}
}
@keyframes scaleIn {
	from {
		opacity: 0;
		-webkit-transform: scale(0.9);
		        transform: scale(0.9);
	}
	to {
		opacity: 1;
		-webkit-transform: scale(1);
		        transform: scale(1);
	}
}
/* Анимация указания стрелкой */
@-webkit-keyframes pointRight {
	0%, 100% {
		-webkit-transform: translateX(0);
		        transform: translateX(0);
	}
	50% {
		-webkit-transform: translateX(0.3125rem);
		        transform: translateX(0.3125rem);
	}
}
@keyframes pointRight {
	0%, 100% {
		-webkit-transform: translateX(0);
		        transform: translateX(0);
	}
	50% {
		-webkit-transform: translateX(0.3125rem);
		        transform: translateX(0.3125rem);
	}
}
/* Анимация для иконки переключения темы */
@-webkit-keyframes rotatePulse {
	0%, 100% {
		-webkit-transform: rotate(0deg) scale(1);
		        transform: rotate(0deg) scale(1);
	}
	50% {
		-webkit-transform: rotate(180deg) scale(1.1);
		        transform: rotate(180deg) scale(1.1);
	}
}
@keyframes rotatePulse {
	0%, 100% {
		-webkit-transform: rotate(0deg) scale(1);
		        transform: rotate(0deg) scale(1);
	}
	50% {
		-webkit-transform: rotate(180deg) scale(1.1);
		        transform: rotate(180deg) scale(1.1);
	}
}
@-webkit-keyframes gentlePulse {
	0%, 100% {
		-webkit-transform: scale(1);
		        transform: scale(1);
		opacity: 1;
	}
	50% {
		-webkit-transform: scale(1.05);
		        transform: scale(1.05);
		opacity: 0.9;
	}
}
@keyframes gentlePulse {
	0%, 100% {
		-webkit-transform: scale(1);
		        transform: scale(1);
		opacity: 1;
	}
	50% {
		-webkit-transform: scale(1.05);
		        transform: scale(1.05);
		opacity: 0.9;
	}
}
.modal.fade.show .modal-content {
	-webkit-animation: scaleIn 0.3s ease-out;
	        animation: scaleIn 0.3s ease-out;
}

/* Анимация для карточек статистики в модальном окне */
.stat-card {
	opacity: 0;
	-webkit-transform: translateY(0.625rem);
	    -ms-transform: translateY(0.625rem);
	        transform: translateY(0.625rem);
	-webkit-transition: opacity 0.3s ease-out, -webkit-transform 0.3s ease-out, -webkit-box-shadow 0.3s ease;
	transition: opacity 0.3s ease-out, -webkit-transform 0.3s ease-out, -webkit-box-shadow 0.3s ease;
	transition: opacity 0.3s ease-out, transform 0.3s ease-out, box-shadow 0.3s ease;
	transition: opacity 0.3s ease-out, transform 0.3s ease-out, box-shadow 0.3s ease, -webkit-transform 0.3s ease-out, -webkit-box-shadow 0.3s ease;
}

.modal.show .stat-card {
	opacity: 1;
	-webkit-transform: translateY(0);
	    -ms-transform: translateY(0);
	        transform: translateY(0);
}

.modal.show .stat-card:nth-child(1) {
	-webkit-transition-delay: 0.1s;
	        transition-delay: 0.1s;
}

.modal.show .stat-card:nth-child(2) {
	-webkit-transition-delay: 0.2s;
	        transition-delay: 0.2s;
}

.modal.show .stat-card:nth-child(3) {
	-webkit-transition-delay: 0.3s;
	        transition-delay: 0.3s;
}

.modal.show .stat-card:nth-child(4) {
	-webkit-transition-delay: 0.4s;
	        transition-delay: 0.4s;
}

.modal.show .stat-card:nth-child(5) {
	-webkit-transition-delay: 0.5s;
	        transition-delay: 0.5s;
}

/* Анимация для фото игрока в модальном окне */
.player-photo-container {
	opacity: 0;
	-webkit-transform: scale(0.8);
	    -ms-transform: scale(0.8);
	        transform: scale(0.8);
	-webkit-transition: opacity 0.5s ease-out, -webkit-transform 0.5s ease-out;
	transition: opacity 0.5s ease-out, -webkit-transform 0.5s ease-out;
	transition: opacity 0.5s ease-out, transform 0.5s ease-out;
	transition: opacity 0.5s ease-out, transform 0.5s ease-out, -webkit-transform 0.5s ease-out;
}

.modal.show .player-photo-container {
	opacity: 1;
	-webkit-transform: scale(1);
	    -ms-transform: scale(1);
	        transform: scale(1);
}

/* Анимация для имени игрока */
.player-name {
	opacity: 0;
	-webkit-transform: translateY(-0.625rem);
	    -ms-transform: translateY(-0.625rem);
	        transform: translateY(-0.625rem);
	-webkit-transition: opacity 0.4s ease-out 0.2s, -webkit-transform 0.4s ease-out 0.2s;
	transition: opacity 0.4s ease-out 0.2s, -webkit-transform 0.4s ease-out 0.2s;
	transition: opacity 0.4s ease-out 0.2s, transform 0.4s ease-out 0.2s;
	transition: opacity 0.4s ease-out 0.2s, transform 0.4s ease-out 0.2s, -webkit-transform 0.4s ease-out 0.2s;
}

.modal.show .player-name {
	opacity: 1;
	-webkit-transform: translateY(0);
	    -ms-transform: translateY(0);
	        transform: translateY(0);
}

/* Анимация для рейтинга */
.rating-container {
	opacity: 0;
	-webkit-transform: scale(0.9);
	    -ms-transform: scale(0.9);
	        transform: scale(0.9);
	-webkit-transition: opacity 0.4s ease-out 0.3s, -webkit-transform 0.4s ease-out 0.3s;
	transition: opacity 0.4s ease-out 0.3s, -webkit-transform 0.4s ease-out 0.3s;
	transition: opacity 0.4s ease-out 0.3s, transform 0.4s ease-out 0.3s;
	transition: opacity 0.4s ease-out 0.3s, transform 0.4s ease-out 0.3s, -webkit-transform 0.4s ease-out 0.3s;
}

.modal.show .rating-container {
	opacity: 1;
	-webkit-transform: scale(1);
	    -ms-transform: scale(1);
	        transform: scale(1);
}

/* Анимация для трофеев команды */
#modal-team-trophies {
	opacity: 0;
	-webkit-transform: scale(0.9);
	    -ms-transform: scale(0.9);
	        transform: scale(0.9);
	-webkit-transition: opacity 0.4s ease-out 0.3s, -webkit-transform 0.4s ease-out 0.3s;
	transition: opacity 0.4s ease-out 0.3s, -webkit-transform 0.4s ease-out 0.3s;
	transition: opacity 0.4s ease-out 0.3s, transform 0.4s ease-out 0.3s;
	transition: opacity 0.4s ease-out 0.3s, transform 0.4s ease-out 0.3s, -webkit-transform 0.4s ease-out 0.3s;
}

.modal.show #modal-team-trophies {
	opacity: 1;
	-webkit-transform: scale(1);
	    -ms-transform: scale(1);
	        transform: scale(1);
}

/* Анимация для стрелки указателя в ссылке */
.caption-link a {
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 0.25rem;
}

.caption-link a .pointing-arrow {
	display: inline-block;
	-webkit-animation: pointRight 1.5s ease-in-out infinite;
	        animation: pointRight 1.5s ease-in-out infinite;
}

/* Анимация для иконки переключения темы */
.caption-content-icon {
	cursor: pointer;
	-webkit-transition: -webkit-transform 0.3s ease;
	transition: -webkit-transform 0.3s ease;
	transition: transform 0.3s ease;
	transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}

.caption-content-icon img {
	display: block;
	-webkit-transition: opacity 0.3s ease, -webkit-transform 0.3s ease;
	transition: opacity 0.3s ease, -webkit-transform 0.3s ease;
	transition: transform 0.3s ease, opacity 0.3s ease;
	transition: transform 0.3s ease, opacity 0.3s ease, -webkit-transform 0.3s ease;
	-webkit-animation: gentlePulse 3s ease-in-out infinite;
	        animation: gentlePulse 3s ease-in-out infinite;
}

@media (hover: hover) {
	.caption-content-icon:hover img {
		-webkit-animation: rotatePulse 1s ease-in-out infinite;
		        animation: rotatePulse 1s ease-in-out infinite;
		-webkit-transform: rotate(180deg) scale(1.1);
		    -ms-transform: rotate(180deg) scale(1.1);
		        transform: rotate(180deg) scale(1.1);
	}
}
/* Blocks */
.table-wrapper {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	width: 100%;
}

.s-main {
	width: 100%;
	padding: 0;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
@media (min-width: 768px) {
	.s-main {
		padding: 1.25rem 0;
	}
}

.caption-bg-video {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
	-o-object-position: center center;
	   object-position: center center;
	z-index: 0;
	opacity: 0.5;
	pointer-events: none;
}
@media (min-width: 768px) {
	.caption-bg-video {
		display: none;
	}
}

.table-caption {
	padding: 0;
	text-align: left;
	color: #fff;
	position: relative;
	z-index: 20;
	overflow: hidden;
	background: -webkit-gradient(linear, left top, right top, from(#0e2c2c), color-stop(60%, #1a5c3a), to(#2d8a50));
	background: linear-gradient(to right, #0e2c2c 0%, #1a5c3a 60%, #2d8a50 100%);
	border: none;
	border-bottom: 0.125rem solid rgba(45, 106, 79, 0.7);
	-webkit-box-shadow: 0 0.25rem 1.25rem rgba(0, 0, 0, 0.4);
	        box-shadow: 0 0.25rem 1.25rem rgba(0, 0, 0, 0.4);
}
@media screen and (max-width: 47.9375rem) {
	.table-caption {
		min-height: 59vw;
	}
}
.table-caption::after {
	content: "";
	position: absolute;
	inset: 0;
	background: -webkit-gradient(linear, left top, right top, from(rgba(14, 44, 44, 0.6)), color-stop(60%, rgba(26, 92, 58, 0.4)), to(rgba(45, 138, 80, 0.3)));
	background: linear-gradient(to right, rgba(14, 44, 44, 0.6) 0%, rgba(26, 92, 58, 0.4) 60%, rgba(45, 138, 80, 0.3) 100%);
	z-index: 1;
	pointer-events: none;
}
@media screen and (max-width: 47.9375rem) {
	.table-caption::after {
		background: -webkit-gradient(linear, left bottom, left top, from(rgba(10, 30, 20, 0.92)), color-stop(45%, rgba(14, 44, 44, 0.55)), to(rgba(14, 44, 44, 0.1)));
		background: linear-gradient(to top, rgba(10, 30, 20, 0.92) 0%, rgba(14, 44, 44, 0.55) 45%, rgba(14, 44, 44, 0.1) 100%);
	}
}
.table-caption .caption-header,
.table-caption .caption-link {
	position: relative;
	z-index: 2;
}
@media (min-width: 768px) {
	.table-caption {
		border-top-left-radius: 0.5rem;
		border-top-right-radius: 0.5rem;
	}
}
.table-caption .caption-header {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	gap: 0.75rem;
	padding: 0.875rem 1rem 0.625rem;
}
@media (min-width: 768px) {
	.table-caption .caption-header {
		padding: 1rem 1.375rem 0.75rem;
	}
}
.table-caption .caption-brand {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 0.625rem;
}
.table-caption .caption-brand-logo {
	width: 2.5rem;
	height: 2.5rem;
	-o-object-fit: contain;
	   object-fit: contain;
	-ms-flex-negative: 0;
	    flex-shrink: 0;
	-webkit-filter: drop-shadow(0 0.0625rem 0.375rem rgba(0, 0, 0, 0.4));
	        filter: drop-shadow(0 0.0625rem 0.375rem rgba(0, 0, 0, 0.4));
}
@media (min-width: 768px) {
	.table-caption .caption-brand-logo {
		width: 3rem;
		height: 3rem;
	}
}
.table-caption .caption-brand-title {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 0.5rem;
	font-size: 0.9375rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	color: #fff;
	text-shadow: 0 0.0625rem 0.25rem rgba(0, 0, 0, 0.5);
	text-transform: uppercase;
}
@media (min-width: 768px) {
	.table-caption .caption-brand-title {
		font-size: 1.0625rem;
	}
}
.table-caption .caption-brand-logo-link {
	display: contents;
	cursor: pointer;
}
.table-caption .trophy-icon {
	font-size: 1rem;
	color: #ffd700;
	-webkit-filter: drop-shadow(0 0 0.5rem rgba(255, 215, 0, 0.8));
	        filter: drop-shadow(0 0 0.5rem rgba(255, 215, 0, 0.8));
	-webkit-animation: trophySparkle 2.4s ease-in-out infinite;
	        animation: trophySparkle 2.4s ease-in-out infinite;
	display: inline-block;
}
.table-caption .ball-icon {
	font-size: 1rem;
	color: #8df390;
	-webkit-filter: drop-shadow(0 0 0.375rem rgba(141, 243, 144, 0.7));
	        filter: drop-shadow(0 0 0.375rem rgba(141, 243, 144, 0.7));
	-webkit-animation: ballSpin 2.8s ease-in-out infinite;
	        animation: ballSpin 2.8s ease-in-out infinite;
	display: inline-block;
}
.table-caption .caption-link {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 0.375rem;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	padding: 0rem 1rem 0.75rem;
}
@media screen and (max-width: 47.9375rem) {
	.table-caption .caption-link {
		position: absolute;
		bottom: 0;
		left: 0;
		right: 0;
		padding: 0rem 1rem 1rem;
	}
}
@media (min-width: 768px) {
	.table-caption .caption-link {
		padding: 0rem 1.375rem 0.875rem;
		gap: 0.5rem;
	}
}
.table-caption .caption-link a {
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 0.3125rem;
	padding: 0.4375rem 0.875rem 0.4375rem 0.75rem;
	border-radius: 9999px;
	background: rgba(255, 255, 255, 0.15);
	color: #fff;
	font-weight: 600;
	font-size: 0.75rem;
	border: 0.0625rem solid rgba(255, 255, 255, 0.45);
	-webkit-backdrop-filter: blur(0.375rem);
	        backdrop-filter: blur(0.375rem);
	-webkit-box-shadow: 0 0.125rem 0.5rem rgba(0, 0, 0, 0.25), inset 0 0.0625rem 0 rgba(255, 255, 255, 0.12);
	        box-shadow: 0 0.125rem 0.5rem rgba(0, 0, 0, 0.25), inset 0 0.0625rem 0 rgba(255, 255, 255, 0.12);
	-webkit-transition: background 0.18s ease, border-color 0.18s ease, -webkit-transform 0.18s ease, -webkit-box-shadow 0.18s ease;
	transition: background 0.18s ease, border-color 0.18s ease, -webkit-transform 0.18s ease, -webkit-box-shadow 0.18s ease;
	transition: background 0.18s ease, border-color 0.18s ease, transform 0.18s ease, box-shadow 0.18s ease;
	transition: background 0.18s ease, border-color 0.18s ease, transform 0.18s ease, box-shadow 0.18s ease, -webkit-transform 0.18s ease, -webkit-box-shadow 0.18s ease;
	white-space: nowrap;
	text-decoration: none;
}
.table-caption .caption-link a::after {
	content: "→";
	font-size: 0.6875rem;
	opacity: 0.7;
	-webkit-transition: opacity 0.18s ease, -webkit-transform 0.18s ease;
	transition: opacity 0.18s ease, -webkit-transform 0.18s ease;
	transition: transform 0.18s ease, opacity 0.18s ease;
	transition: transform 0.18s ease, opacity 0.18s ease, -webkit-transform 0.18s ease;
}
@media (min-width: 768px) {
	.table-caption .caption-link a {
		font-size: 0.8125rem;
		padding: 0.5rem 1rem 0.5rem 0.875rem;
	}
}
@media (hover: hover) {
	.table-caption .caption-link a:hover {
		background: rgba(255, 255, 255, 0.28);
		border-color: rgba(255, 255, 255, 0.7);
		-webkit-box-shadow: 0 0.25rem 0.875rem rgba(0, 0, 0, 0.3), inset 0 0.0625rem 0 rgba(255, 255, 255, 0.2);
		        box-shadow: 0 0.25rem 0.875rem rgba(0, 0, 0, 0.3), inset 0 0.0625rem 0 rgba(255, 255, 255, 0.2);
		-webkit-transform: translateY(-0.0625rem);
		    -ms-transform: translateY(-0.0625rem);
		        transform: translateY(-0.0625rem);
	}
	.table-caption .caption-link a:hover::after {
		-webkit-transform: translateX(0.1875rem);
		    -ms-transform: translateX(0.1875rem);
		        transform: translateX(0.1875rem);
		opacity: 1;
	}
}
.table-caption .caption-content-icon {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	width: 2.25rem;
	height: 2.25rem;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.15);
	border: 0.0625rem solid rgba(255, 255, 255, 0.25);
	cursor: pointer;
	-ms-flex-negative: 0;
	    flex-shrink: 0;
	-webkit-transition: background 0.2s ease;
	transition: background 0.2s ease;
}
.table-caption .caption-content-icon:hover {
	background: rgba(255, 255, 255, 0.25);
}
.table-caption .caption-content-icon img {
	width: 1.125rem;
	height: 1.125rem;
	opacity: 1;
}

.players-table {
	width: 100%;
	border-collapse: collapse;
	background: #fff;
	-webkit-box-shadow: 0 0.125rem 0.5rem rgba(0, 0, 0, 0.1);
	        box-shadow: 0 0.125rem 0.5rem rgba(0, 0, 0, 0.1);
	border-radius: 0.5rem;
	overflow-x: auto;
	table-layout: fixed;
}
@media (min-width: 768px) {
	.players-table {
		overflow-x: hidden;
	}
}
.players-table thead {
	background: #0e2016;
}
.players-table thead th span {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 0.625rem;
	white-space: nowrap;
}
.players-table thead th span:last-child {
	display: none;
}
@media (min-width: 768px) {
	.players-table thead th span:last-child {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}
}
@media (min-width: 768px) {
	.players-table thead th span:nth-child(1) {
		display: none;
	}
}
.players-table th,
.players-table td {
	padding: 0.5rem 0.25rem;
	text-align: left;
	border-bottom: 0.0625rem solid #e0e0e0;
	font-size: 0.75rem;
	white-space: nowrap;
}
@media (min-width: 992px) {
	.players-table th,
	.players-table td {
		padding: 0.5rem 0.25rem;
		font-size: 0.875rem;
		white-space: normal;
	}
}
.players-table th {
	background: #0e2016;
	color: #d4f5e0;
	font-weight: 600;
	position: sticky;
	top: 0;
	z-index: 10;
	border-bottom: 0.125rem solid rgba(45, 106, 79, 0.6);
}
.players-table td {
	color: #1e293b;
}
.players-table tbody tr {
	cursor: pointer;
}
.players-table tbody tr:nth-child(even) {
	background: #f8f9fa;
}
@media (hover: hover) {
	.players-table tbody tr:hover {
		background: #e9ecef;
		-webkit-transition: background 0.2s ease;
		transition: background 0.2s ease;
	}
}
.players-table tbody td[data-label=№] {
	white-space: nowrap;
}
.players-table th:nth-child(1),
.players-table td:nth-child(1) {
	width: 1.25rem;
	min-width: 1.25rem;
	max-width: 1.25rem;
	padding: 0.5rem 0.125rem 0.5rem 0.375rem;
}
@media (min-width: 992px) {
	.players-table th:nth-child(1),
	.players-table td:nth-child(1) {
		width: 1.875rem;
		min-width: 1.875rem;
		max-width: 1.875rem;
		padding: 0.5rem 0.25rem 0.5rem 0.5rem;
	}
}
.players-table th:nth-child(2),
.players-table td:nth-child(2) {
	width: 6.25rem;
	max-width: 6.25rem;
	overflow: hidden;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
.players-table td:nth-child(2) {
	white-space: nowrap;
	padding-left: 0;
}
.players-table th:nth-child(3),
.players-table td:nth-child(3),
.players-table th:nth-child(4),
.players-table td:nth-child(4),
.players-table th:nth-child(5),
.players-table td:nth-child(5),
.players-table th:nth-child(6),
.players-table td:nth-child(6),
.players-table th:nth-child(7),
.players-table td:nth-child(7),
.players-table th:nth-child(8),
.players-table td:nth-child(8),
.players-table th:nth-child(9),
.players-table td:nth-child(9),
.players-table th:nth-child(10),
.players-table td:nth-child(10) {
	width: 1.1875rem;
}
.players-table th:nth-child(11),
.players-table td:nth-child(11) {
	width: 2rem;
}
@media (min-width: 992px) {
	.players-table th:nth-child(1),
	.players-table td:nth-child(1) {
		padding-right: 0.125rem;
	}
	.players-table th:nth-child(2),
	.players-table td:nth-child(2) {
		max-width: none;
		width: 200px;
	}
}
@media (min-width: 992px) and (min-width: 769px) and (max-width: 1440px) {
	.players-table th:nth-child(2),
	.players-table td:nth-child(2) {
		width: calc(200px + 200 * ((100vw - 768px) / (1440 - 768)));
	}
}
@media (min-width: 992px) and (min-width: 1441px) {
	.players-table th:nth-child(2),
	.players-table td:nth-child(2) {
		width: 400px;
	}
}
@media (min-width: 992px) {
	.players-table th:nth-child(3),
	.players-table td:nth-child(3),
	.players-table th:nth-child(4),
	.players-table td:nth-child(4),
	.players-table th:nth-child(5),
	.players-table td:nth-child(5),
	.players-table th:nth-child(6),
	.players-table td:nth-child(6),
	.players-table th:nth-child(7),
	.players-table td:nth-child(7),
	.players-table th:nth-child(8),
	.players-table td:nth-child(8),
	.players-table th:nth-child(9),
	.players-table td:nth-child(9),
	.players-table th:nth-child(10),
	.players-table td:nth-child(10) {
		width: 4rem;
	}
	.players-table th:nth-child(11),
	.players-table td:nth-child(11) {
		width: 5rem;
	}
}
@media (min-width: 1200px) {
	.players-table th:nth-child(3),
	.players-table td:nth-child(3),
	.players-table th:nth-child(4),
	.players-table td:nth-child(4),
	.players-table th:nth-child(5),
	.players-table td:nth-child(5),
	.players-table th:nth-child(6),
	.players-table td:nth-child(6),
	.players-table th:nth-child(7),
	.players-table td:nth-child(7),
	.players-table th:nth-child(8),
	.players-table td:nth-child(8),
	.players-table th:nth-child(9),
	.players-table td:nth-child(9),
	.players-table th:nth-child(10),
	.players-table td:nth-child(10) {
		width: 5rem;
	}
}
.players-table td[data-label=Рейтинг],
.players-table td[data-label=Рейт] {
	color: #00bcd4;
	font-weight: 700;
}
.players-table td[data-label=Победы],
.players-table td[data-label=Поб] {
	color: #10b981;
	font-weight: 700;
}
.players-table td[data-label=Ничьи],
.players-table td[data-label=Нич] {
	color: #f59e0b;
	font-weight: 700;
}
.players-table td[data-label=Поражения],
.players-table td[data-label=Пор] {
	color: #ef4444;
	font-weight: 700;
}
.players-table td[data-label=MVP] {
	color: #ffd700;
	font-weight: 700;
}
.players-table td[data-label=Рейт],
.players-table td[data-label=Рейтинг] {
	white-space: nowrap;
}
.players-table tbody tr:nth-child(1) {
	background: rgba(255, 215, 0, 0.1);
}
.players-table tbody tr:nth-child(1) td:first-child {
	-webkit-box-shadow: inset 4px 0 0 #FFD700;
	        box-shadow: inset 4px 0 0 #FFD700;
}
.players-table tbody tr:nth-child(2) {
	background: rgba(192, 192, 192, 0.12);
}
.players-table tbody tr:nth-child(2) td:first-child {
	-webkit-box-shadow: inset 4px 0 0 #C0C0C0;
	        box-shadow: inset 4px 0 0 #C0C0C0;
}
.players-table tbody tr:nth-child(3) {
	background: rgba(205, 127, 50, 0.1);
}
.players-table tbody tr:nth-child(3) td:first-child {
	-webkit-box-shadow: inset 4px 0 0 #CD7F32;
	        box-shadow: inset 4px 0 0 #CD7F32;
}
.players-table.table-asc tbody tr:last-child {
	background: rgba(255, 215, 0, 0.08);
}
.players-table.table-asc tbody tr:last-child td:first-child {
	-webkit-box-shadow: inset 4px 0 0 #f59e0b;
	        box-shadow: inset 4px 0 0 #f59e0b;
}
.players-table.table-asc tbody tr:nth-last-child(2) {
	background: rgba(192, 192, 192, 0.1);
}
.players-table.table-asc tbody tr:nth-last-child(2) td:first-child {
	-webkit-box-shadow: inset 4px 0 0 #94a3b8;
	        box-shadow: inset 4px 0 0 #94a3b8;
}
.players-table.table-asc tbody tr:nth-last-child(3) {
	background: rgba(205, 127, 50, 0.08);
}
.players-table.table-asc tbody tr:nth-last-child(3) td:first-child {
	-webkit-box-shadow: inset 4px 0 0 #b45309;
	        box-shadow: inset 4px 0 0 #b45309;
}
.players-table.table-asc tbody tr:nth-child(1),
.players-table.table-asc tbody tr:nth-child(2),
.players-table.table-asc tbody tr:nth-child(3) {
	background: none;
}
.players-table.table-asc tbody tr:nth-child(1) td:first-child,
.players-table.table-asc tbody tr:nth-child(2) td:first-child,
.players-table.table-asc tbody tr:nth-child(3) td:first-child {
	-webkit-box-shadow: none;
	        box-shadow: none;
}
.players-table tbody tr.empty-row {
	background: #f0f0f0 !important;
	cursor: default;
}
.players-table tbody tr.empty-row td:first-child::after {
	content: none !important;
}
@media (hover: hover) {
	.players-table tbody tr.empty-row:hover {
		background: #f0f0f0 !important;
	}
}

.player-info {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 0.5rem;
	min-width: 0;
	max-width: 100%;
	width: 100%;
}
.player-info span {
	font-weight: 500;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	-webkit-box-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
	min-width: 0;
	max-width: 100%;
}

.player-photo {
	width: 2rem;
	height: 2rem;
	overflow: hidden;
	border-radius: 100%;
	-ms-flex-negative: 0;
	    flex-shrink: 0;
}
.player-photo img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
}
@media (min-width: 768px) {
	.player-photo {
		width: 2.5rem;
		height: 2.5rem;
	}
}

@media screen and (max-width: 30rem) {
	.players-table .table-caption {
		font-size: 1rem;
		padding: 0.625rem;
	}
	.players-table th,
	.players-table td {
		padding: 0.375rem 0.1875rem;
		font-size: 0.71875rem;
	}
	.players-table th:nth-child(2),
	.players-table td:nth-child(2) {
		width: 7.5rem;
		max-width: 7.5rem;
	}
}
@media screen and (max-width: 22.5rem) {
	.players-table th,
	.players-table td {
		font-size: 0.5625rem;
		padding: 0.25rem 0.125rem;
	}
	.players-table th:nth-child(2),
	.players-table td:nth-child(2) {
		width: 5.625rem;
		max-width: 5.625rem;
	}
}

@media screen and (max-width: 30rem) {
	.player-photo {
		width: 1.5rem;
		height: 1.5rem;
	}
}

body.page-static .players-table th:nth-child(8),
body.page-static .players-table td:nth-child(8) {
	width: 2rem;
	min-width: 2rem;
	padding-right: 0.5rem;
}
@media (min-width: 992px) {
	body.page-static .players-table th:nth-child(8),
	body.page-static .players-table td:nth-child(8) {
		width: 5rem;
		padding-right: 0.5rem;
	}
}
@media (min-width: 1200px) {
	body.page-static .players-table th:nth-child(8),
	body.page-static .players-table td:nth-child(8) {
		width: 5rem;
	}
}

.loader {
	display: none;
	background: #fff;
	text-align: center;
}
.loader .loader-content {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	padding: 2rem;
}
.loader p {
	margin-top: 0.5rem;
	font-size: 1rem;
	color: #2c3e50;
}

.spinner {
	width: 2.5rem;
	height: 2.5rem;
	border: 0.25rem solid #f3f3f3;
	border-top: 0.25rem solid #1abc9c;
	border-radius: 50%;
	-webkit-animation: spin 1s linear infinite;
	        animation: spin 1s linear infinite;
}

.error-message,
.empty-message {
	padding: 1.25rem;
	text-align: center;
	font-size: 1.1875rem;
	border-radius: 0.5rem;
	margin: 1.25rem 0;
}

.error-message {
	color: #e74c3c;
	background: #f8d7da;
}

.empty-message {
	color: #2c3e50;
	background: #f8f9fa;
}

@-webkit-keyframes spin {
	0% {
		-webkit-transform: rotate(0deg);
		        transform: rotate(0deg);
	}
	100% {
		-webkit-transform: rotate(360deg);
		        transform: rotate(360deg);
	}
}

@keyframes spin {
	0% {
		-webkit-transform: rotate(0deg);
		        transform: rotate(0deg);
	}
	100% {
		-webkit-transform: rotate(360deg);
		        transform: rotate(360deg);
	}
}
@-webkit-keyframes ballSpin {
	0%, 100% {
		-webkit-transform: rotate(0deg) scale(1);
		        transform: rotate(0deg) scale(1);
		-webkit-filter: drop-shadow(0 0 0.375rem rgba(141, 243, 144, 0.7));
		        filter: drop-shadow(0 0 0.375rem rgba(141, 243, 144, 0.7));
	}
	30% {
		-webkit-transform: rotate(20deg) scale(1.12);
		        transform: rotate(20deg) scale(1.12);
		-webkit-filter: drop-shadow(0 0 0.625rem rgb(141, 243, 144));
		        filter: drop-shadow(0 0 0.625rem rgb(141, 243, 144));
	}
	60% {
		-webkit-transform: rotate(-10deg) scale(1.08);
		        transform: rotate(-10deg) scale(1.08);
		-webkit-filter: drop-shadow(0 0 0.5rem rgba(141, 243, 144, 0.9));
		        filter: drop-shadow(0 0 0.5rem rgba(141, 243, 144, 0.9));
	}
}
@keyframes ballSpin {
	0%, 100% {
		-webkit-transform: rotate(0deg) scale(1);
		        transform: rotate(0deg) scale(1);
		-webkit-filter: drop-shadow(0 0 0.375rem rgba(141, 243, 144, 0.7));
		        filter: drop-shadow(0 0 0.375rem rgba(141, 243, 144, 0.7));
	}
	30% {
		-webkit-transform: rotate(20deg) scale(1.12);
		        transform: rotate(20deg) scale(1.12);
		-webkit-filter: drop-shadow(0 0 0.625rem rgb(141, 243, 144));
		        filter: drop-shadow(0 0 0.625rem rgb(141, 243, 144));
	}
	60% {
		-webkit-transform: rotate(-10deg) scale(1.08);
		        transform: rotate(-10deg) scale(1.08);
		-webkit-filter: drop-shadow(0 0 0.5rem rgba(141, 243, 144, 0.9));
		        filter: drop-shadow(0 0 0.5rem rgba(141, 243, 144, 0.9));
	}
}
@-webkit-keyframes trophySparkle {
	0%, 100% {
		-webkit-transform: scale(1) rotate(0deg);
		        transform: scale(1) rotate(0deg);
		-webkit-filter: drop-shadow(0 0 0.5rem rgba(255, 215, 0, 0.8));
		        filter: drop-shadow(0 0 0.5rem rgba(255, 215, 0, 0.8));
	}
	25% {
		-webkit-transform: scale(1.1) rotate(-5deg);
		        transform: scale(1.1) rotate(-5deg);
		-webkit-filter: drop-shadow(0 0 0.75rem rgb(255, 215, 0));
		        filter: drop-shadow(0 0 0.75rem rgb(255, 215, 0));
	}
	50% {
		-webkit-transform: scale(1.15) rotate(5deg);
		        transform: scale(1.15) rotate(5deg);
		-webkit-filter: drop-shadow(0 0 0.9375rem rgb(255, 215, 0));
		        filter: drop-shadow(0 0 0.9375rem rgb(255, 215, 0));
	}
	75% {
		-webkit-transform: scale(1.1) rotate(-3deg);
		        transform: scale(1.1) rotate(-3deg);
		-webkit-filter: drop-shadow(0 0 0.75rem rgba(255, 215, 0, 0.9));
		        filter: drop-shadow(0 0 0.75rem rgba(255, 215, 0, 0.9));
	}
}
@keyframes trophySparkle {
	0%, 100% {
		-webkit-transform: scale(1) rotate(0deg);
		        transform: scale(1) rotate(0deg);
		-webkit-filter: drop-shadow(0 0 0.5rem rgba(255, 215, 0, 0.8));
		        filter: drop-shadow(0 0 0.5rem rgba(255, 215, 0, 0.8));
	}
	25% {
		-webkit-transform: scale(1.1) rotate(-5deg);
		        transform: scale(1.1) rotate(-5deg);
		-webkit-filter: drop-shadow(0 0 0.75rem rgb(255, 215, 0));
		        filter: drop-shadow(0 0 0.75rem rgb(255, 215, 0));
	}
	50% {
		-webkit-transform: scale(1.15) rotate(5deg);
		        transform: scale(1.15) rotate(5deg);
		-webkit-filter: drop-shadow(0 0 0.9375rem rgb(255, 215, 0));
		        filter: drop-shadow(0 0 0.9375rem rgb(255, 215, 0));
	}
	75% {
		-webkit-transform: scale(1.1) rotate(-3deg);
		        transform: scale(1.1) rotate(-3deg);
		-webkit-filter: drop-shadow(0 0 0.75rem rgba(255, 215, 0, 0.9));
		        filter: drop-shadow(0 0 0.75rem rgba(255, 215, 0, 0.9));
	}
}
body[data-theme=dark] .wrapper {
	background: radial-gradient(120% 160% at 10% 0%, rgba(14, 44, 44, 0.5) 0%, rgba(14, 44, 44, 0.15) 40%, transparent 65%), -webkit-gradient(linear, left top, left bottom, from(#030905), to(#06100a));
	background: radial-gradient(120% 160% at 10% 0%, rgba(14, 44, 44, 0.5) 0%, rgba(14, 44, 44, 0.15) 40%, transparent 65%), linear-gradient(180deg, #030905 0%, #06100a 100%);
	color: #e0e0e0;
	-webkit-transition: background 0.3s ease, color 0.3s ease;
	transition: background 0.3s ease, color 0.3s ease;
}
body[data-theme=dark] .players-table {
	background: #111a13;
	-webkit-box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.8);
	        box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.8);
	border-radius: 0.5rem;
}
body[data-theme=dark] .caption-link a {
	background: rgba(137, 241, 142, 0.15);
	border-color: rgba(137, 241, 142, 0.3);
}
@media (hover: hover) {
	body[data-theme=dark] .caption-link a:hover {
		background: rgba(137, 241, 142, 0.25);
		color: #fff;
	}
}
body[data-theme=dark] .players-table th {
	background: #0a1f12;
	color: #c8f0cc;
	border-bottom: 0.125rem solid rgba(45, 106, 79, 0.5);
}
body[data-theme=dark] .players-table td {
	color: #d8ead9;
	border-bottom: 0.0625rem solid rgba(255, 255, 255, 0.04);
}
body[data-theme=dark] .players-table td[data-label=Победы], body[data-theme=dark] .players-table td[data-label=Поб] {
	color: #10b981;
	font-weight: 700;
}
body[data-theme=dark] .players-table td[data-label=Ничьи], body[data-theme=dark] .players-table td[data-label=Нич] {
	color: #f59e0b;
	font-weight: 700;
}
body[data-theme=dark] .players-table td[data-label=Поражения], body[data-theme=dark] .players-table td[data-label=Пор] {
	color: #ef4444;
	font-weight: 700;
}
body[data-theme=dark] .players-table td[data-label=MVP] {
	color: #ffd700;
	font-weight: 700;
}
body[data-theme=dark] .players-table td[data-label=Рейтинг], body[data-theme=dark] .players-table td[data-label=Рейт] {
	color: #00bcd4;
	font-weight: 700;
}
body[data-theme=dark] .players-table td[data-label=О], body[data-theme=dark] .players-table td[data-label=Очки] {
	color: #00bcd4;
	font-weight: 700;
}
body[data-theme=dark] .players-table tbody tr:nth-child(even) {
	background: rgba(137, 241, 142, 0.03);
}
@media (hover: hover) {
	body[data-theme=dark] .players-table tbody tr:hover {
		background: rgba(137, 241, 142, 0.08);
		-webkit-transition: background 0.25s ease;
		transition: background 0.25s ease;
	}
}
body[data-theme=dark] .players-table tbody tr:nth-child(1) {
	background: rgba(255, 215, 0, 0.18);
}
body[data-theme=dark] .players-table tbody tr:nth-child(2) {
	background: rgba(192, 192, 192, 0.12);
}
body[data-theme=dark] .players-table tbody tr:nth-child(3) {
	background: rgba(205, 127, 50, 0.18);
}
body[data-theme=dark] .table-caption {
	color: #f0fff2;
	border-color: rgba(137, 241, 142, 0.3);
	background: -webkit-gradient(linear, left top, right top, from(#020704), color-stop(60%, #071a0d), to(#0d3a1a));
	background: linear-gradient(to right, #020704 0%, #071a0d 60%, #0d3a1a 100%);
}
body[data-theme=dark] .table-caption .caption-brand-title {
	color: rgba(137, 241, 142, 0.65);
}
body[data-theme=dark] .error-message {
	background: rgba(120, 0, 0, 0.6);
	color: #ff6b6b;
}
body[data-theme=dark] .empty-message {
	background: #1e1e1e;
	color: #aaaaaa;
}

.trophy-number {
	font-weight: 900;
	font-size: 1.2em;
	color: #0066FF;
	display: inline-block;
	line-height: 1;
}

.trophy-count {
	display: inline-block;
	font-weight: 800;
	font-size: 0.5625rem;
	color: #1a202c;
	background: linear-gradient(135deg, #ffd700 0%, #ffb800 100%);
	padding: 0.125rem 0.3125rem;
	border-radius: 0.3125rem;
	margin-right: 0.1875rem;
	line-height: 1.2;
	text-shadow: none;
	-webkit-box-shadow: 0 0.125rem 0.25rem rgba(255, 215, 0, 0.3), 0 0.0625rem 0.125rem rgba(0, 0, 0, 0.1);
	        box-shadow: 0 0.125rem 0.25rem rgba(255, 215, 0, 0.3), 0 0.0625rem 0.125rem rgba(0, 0, 0, 0.1);
	border: 0.0625rem solid rgba(255, 184, 0, 0.5);
	position: relative;
}
@media (min-width: 768px) {
	.trophy-count {
		font-size: 0.75rem;
	}
}
@media (min-width: 992px) {
	.trophy-count {
		font-size: 0.8125rem;
		padding: 0.125rem 0.375rem;
	}
}
.trophy-count::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: linear-gradient(135deg, rgba(255, 255, 255, 0.3) 0%, transparent 100%);
	border-radius: 0.3125rem;
	pointer-events: none;
}

.trophy-icon-single {
	display: inline-block;
	font-size: 0.5625rem;
	-webkit-filter: drop-shadow(0 0.125rem 0.25rem rgba(255, 215, 0, 0.4));
	        filter: drop-shadow(0 0.125rem 0.25rem rgba(255, 215, 0, 0.4));
}
@media (min-width: 768px) {
	.trophy-icon-single {
		font-size: 0.75rem;
	}
}
@media (min-width: 992px) {
	.trophy-icon-single {
		font-size: 0.9375rem;
	}
}

.players-table td[data-label=Трофеи] {
	font-weight: 600;
}
.players-table td[data-label=Трофеи] .trophy-count {
	vertical-align: middle;
}
.players-table td[data-label=Трофеи] .trophy-icon-single {
	vertical-align: middle;
}

body[data-theme=dark] .trophy-number {
	color: #4A9EFF;
}
body[data-theme=dark] .trophy-count {
	color: #0f172a;
	background: linear-gradient(135deg, #ffd700 0%, #ffb800 100%);
	border-color: rgba(255, 215, 0, 0.6);
	-webkit-box-shadow: 0 0.125rem 0.375rem rgba(255, 215, 0, 0.4), 0 0.0625rem 0.125rem rgba(0, 0, 0, 0.2);
	        box-shadow: 0 0.125rem 0.375rem rgba(255, 215, 0, 0.4), 0 0.0625rem 0.125rem rgba(0, 0, 0, 0.2);
}

.players-table td[data-label=О],
.players-table td[data-label=Очки] {
	color: #00bcd4;
	font-weight: 700;
}

.players-table tbody tr:nth-child(1) {
	background: rgba(255, 215, 0, 0.1);
}
.players-table tbody tr:nth-child(1) td:first-child {
	-webkit-box-shadow: inset 4px 0 0 #FFD700;
	        box-shadow: inset 4px 0 0 #FFD700;
}

.players-table tbody tr:nth-child(2) {
	background: rgba(192, 192, 192, 0.12);
}
.players-table tbody tr:nth-child(2) td:first-child {
	-webkit-box-shadow: inset 4px 0 0 #C0C0C0;
	        box-shadow: inset 4px 0 0 #C0C0C0;
}

.players-table tbody tr:nth-child(3) {
	background: rgba(205, 127, 50, 0.1);
}
.players-table tbody tr:nth-child(3) td:first-child {
	-webkit-box-shadow: inset 4px 0 0 #CD7F32;
	        box-shadow: inset 4px 0 0 #CD7F32;
}

@media (hover: hover) {
	.players-table tbody tr:hover {
		background: #f1f1f1;
		-webkit-transition: background 0.2s ease;
		transition: background 0.2s ease;
	}
}
@media (hover: hover) {
	body[data-theme=dark] .players-table tbody tr:hover {
		background: rgba(137, 241, 142, 0.08);
	}
}
body[data-theme=dark] .players-table tbody tr:nth-child(1) {
	background: rgba(255, 215, 0, 0.18);
}
body[data-theme=dark] .players-table tbody tr:nth-child(2) {
	background: rgba(192, 192, 192, 0.12);
}
body[data-theme=dark] .players-table tbody tr:nth-child(3) {
	background: rgba(205, 127, 50, 0.18);
}
body[data-theme=dark] tbody tr.empty-row {
	background: #1a1a1a !important;
}
@media (hover: hover) {
	body[data-theme=dark] tbody tr.empty-row:hover {
		background: #1a1a1a !important;
	}
}

.modal.fade .modal-dialog {
	-webkit-transition: all 0.35s cubic-bezier(0.25, 0.8, 0.25, 1);
	transition: all 0.35s cubic-bezier(0.25, 0.8, 0.25, 1);
	-webkit-transform: translateY(1.5rem) scale(0.97);
	    -ms-transform: translateY(1.5rem) scale(0.97);
	        transform: translateY(1.5rem) scale(0.97);
	opacity: 0;
}
.modal.fade.show .modal-dialog {
	-webkit-transform: translateY(0) scale(1);
	    -ms-transform: translateY(0) scale(1);
	        transform: translateY(0) scale(1);
	opacity: 1;
}

.modal-dialog {
	margin: 1rem auto;
	padding: 0 0.75rem;
	max-width: 30rem;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
.modal-dialog.modal-lg {
	max-width: 43.75rem;
}
@media screen and (max-width: 25rem) {
	.modal-dialog {
		margin: 0.5rem auto;
		padding: 0 0.5rem;
	}
}

.pm-close {
	position: absolute;
	top: 0.875rem;
	right: 0.875rem;
	z-index: 10;
	width: 2rem;
	height: 2rem;
	border-radius: 50%;
	border: none;
	background: rgba(255, 255, 255, 0.15);
	color: rgba(255, 255, 255, 0.9);
	font-size: 0.875rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	cursor: pointer;
	-webkit-transition: background 0.2s ease, color 0.2s ease;
	transition: background 0.2s ease, color 0.2s ease;
	-webkit-backdrop-filter: blur(0.25rem);
	        backdrop-filter: blur(0.25rem);
}
.pm-close:hover {
	background: rgba(255, 255, 255, 0.28);
	color: #fff;
}

.player-modal.modal-content {
	border: none;
	border-radius: 1.25rem;
	overflow: hidden;
	-webkit-box-shadow: 0 1.5rem 3.75rem rgba(0, 0, 0, 0.25), 0 0.25rem 0.75rem rgba(0, 0, 0, 0.1);
	        box-shadow: 0 1.5rem 3.75rem rgba(0, 0, 0, 0.25), 0 0.25rem 0.75rem rgba(0, 0, 0, 0.1);
	background: #0a1f12;
	position: relative;
}

.pm-hero {
	position: relative;
	background: linear-gradient(160deg, #0a1f12 0%, #0e2c2c 40%, #1a5c3a 80%, #2d8a50 100%);
	padding: 2.5rem 1.5rem 2rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	text-align: center;
	width: 100%;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}

.pm-photo-wrap {
	position: relative;
	z-index: 2;
	width: 6.25rem;
	height: 6.25rem;
	border-radius: 50%;
	padding: 0.1875rem;
	background: linear-gradient(135deg, #8df390, #2d8a50);
	-webkit-box-shadow: 0 0 0 0.25rem rgba(137, 241, 142, 0.2), 0 0.5rem 1.5rem rgba(0, 0, 0, 0.3);
	        box-shadow: 0 0 0 0.25rem rgba(137, 241, 142, 0.2), 0 0.5rem 1.5rem rgba(0, 0, 0, 0.3);
	margin-bottom: 0.875rem;
}
@media (min-width: 576px) {
	.pm-photo-wrap {
		width: 7.5rem;
		height: 7.5rem;
	}
}

.pm-photo {
	width: 100%;
	height: 100%;
	border-radius: 50%;
	-o-object-fit: cover;
	   object-fit: cover;
	display: block;
	background: #0e2c2c;
}

.pm-name {
	position: relative;
	z-index: 2;
	font-size: 1.25rem;
	font-weight: 800;
	color: #fff;
	letter-spacing: 0.01em;
	margin-bottom: 0.5rem;
	text-shadow: 0 0.0625rem 0.375rem rgba(0, 0, 0, 0.4);
}
@media (min-width: 576px) {
	.pm-name {
		font-size: 1.5rem;
	}
}

.pm-rank {
	position: relative;
	z-index: 2;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 0.25rem;
	margin-bottom: 0.625rem;
	padding: 0.125rem 0.5625rem 0.125rem 0.4375rem;
	border-radius: 9999px;
	background: rgba(255, 255, 255, 0.12);
	border: 0.0625rem solid rgba(255, 255, 255, 0.22);
	font-size: 0.6875rem;
	font-weight: 600;
	color: rgba(255, 255, 255, 0.8);
	letter-spacing: 0.04em;
}
.pm-rank::before {
	content: "№";
	font-size: 0.625rem;
	opacity: 0.6;
}

.pm-team {
	position: relative;
	z-index: 2;
	display: none;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 0.375rem;
	margin-bottom: 0.875rem;
	padding: 0.25rem 0.75rem;
	border-radius: 9999px;
	background: rgba(255, 255, 255, 0.12);
	border: 0.0625rem solid rgba(255, 255, 255, 0.2);
}
.pm-team.visible {
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
}

.pm-team-logo {
	width: 1.375rem;
	height: 1.375rem;
	border-radius: 50%;
	-o-object-fit: cover;
	   object-fit: cover;
}

.pm-team-name {
	font-size: 0.8125rem;
	font-weight: 600;
	color: rgba(255, 255, 255, 0.9);
	white-space: normal;
	word-break: break-word;
	text-align: center;
}

.pm-rating-pill {
	position: relative;
	z-index: 2;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 0.5rem;
	padding: 0.5rem 1.25rem;
	border-radius: 9999px;
	background: rgba(255, 255, 255, 0.15);
	border: 0.0625rem solid rgba(255, 255, 255, 0.25);
	-webkit-backdrop-filter: blur(0.5rem);
	        backdrop-filter: blur(0.5rem);
	margin-bottom: 0.75rem;
}

.pm-rating-label {
	font-size: 0.75rem;
	font-weight: 600;
	color: rgba(255, 255, 255, 0.75);
	text-transform: uppercase;
	letter-spacing: 0.06em;
}

.pm-rating-value {
	font-size: 1.25rem;
	font-weight: 800;
	color: #89f18e;
	text-shadow: 0 0 0.75rem rgba(137, 241, 142, 0.6);
}
@media (min-width: 576px) {
	.pm-rating-value {
		font-size: 1.5rem;
	}
}

.pm-stats {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	padding: 1rem 0.75rem 1.25rem;
	background: #fff;
	border-radius: 1.25rem 1.25rem 0 0;
	position: relative;
	z-index: 2;
	margin-top: -1.25rem;
}
@media (min-width: 576px) {
	.pm-stats {
		padding: 1rem 1.25rem 1.5rem;
	}
}

.pm-stat {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	padding: 0.875rem 0.5rem;
	gap: 0.25rem;
	position: relative;
	cursor: default;
}
.pm-stat:not(:nth-child(4n))::after {
	content: "";
	position: absolute;
	right: 0;
	top: 0.875rem;
	bottom: 0.875rem;
	width: 0.0625rem;
	background: rgba(0, 0, 0, 0.06);
}
.pm-stat:nth-child(n+5) {
	border-top: 0.0625rem solid rgba(0, 0, 0, 0.06);
}

.pm-stat-icon {
	font-size: 1rem;
	margin-bottom: 0.125rem;
}
.wins .pm-stat-icon {
	color: #10b981;
}
.draws .pm-stat-icon {
	color: #f59e0b;
}
.losses .pm-stat-icon {
	color: #ef4444;
}
.games .pm-stat-icon {
	color: #2d8a50;
}
.goals .pm-stat-icon {
	color: #8b5cf6;
}
.assists .pm-stat-icon {
	color: #06b6d4;
}
.saves .pm-stat-icon {
	color: #ec4899;
}
.mvp .pm-stat-icon {
	color: #f59e0b;
}

.pm-stat-value {
	font-size: 1.375rem;
	font-weight: 800;
	line-height: 1;
	color: #111827;
}
.mvp .pm-stat-value {
	color: #f59e0b;
}
@media (min-width: 576px) {
	.pm-stat-value {
		font-size: 1.625rem;
	}
}

.pm-stat-label {
	font-size: 0.5625rem;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: #9ca3af;
	text-align: center;
}
@media (min-width: 576px) {
	.pm-stat-label {
		font-size: 0.625rem;
	}
}

.team-modal.modal-content {
	border: none;
	border-radius: 1.25rem;
	overflow: hidden;
	-webkit-box-shadow: 0 1.5rem 3.75rem rgba(0, 0, 0, 0.25);
	        box-shadow: 0 1.5rem 3.75rem rgba(0, 0, 0, 0.25);
	background: #0a1f12;
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	max-height: 90dvh;
}

.tm-hero {
	position: relative;
	background: linear-gradient(160deg, #0a1f12 0%, #0e2c2c 40%, #1a5c3a 80%, #2d8a50 100%);
	padding: 1.125rem 1rem 2rem;
	-ms-flex-negative: 0;
	    flex-shrink: 0;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
@media (min-width: 576px) {
	.tm-hero {
		padding: 2.25rem 1.5rem 1.875rem;
	}
}

.tm-hero-content {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 1.25rem;
	position: relative;
	z-index: 2;
}

.tm-hero-info {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	gap: 0.5rem;
	min-width: 0;
}

.tm-logo-wrap {
	position: relative;
	z-index: 2;
	width: 3.5rem;
	height: 3.5rem;
	border-radius: 50%;
	padding: 0.1875rem;
	background: linear-gradient(135deg, #8df390, #2d8a50);
	-webkit-box-shadow: 0 0 0 0.25rem rgba(137, 241, 142, 0.2), 0 0.5rem 1.5rem rgba(0, 0, 0, 0.35);
	        box-shadow: 0 0 0 0.25rem rgba(137, 241, 142, 0.2), 0 0.5rem 1.5rem rgba(0, 0, 0, 0.35);
	-ms-flex-negative: 0;
	    flex-shrink: 0;
}
@media (min-width: 576px) {
	.tm-logo-wrap {
		width: 5rem;
		height: 5rem;
	}
}

.tm-logo {
	width: 100%;
	height: 100%;
	border-radius: 50%;
	-o-object-fit: contain;
	   object-fit: contain;
	display: block;
	background: #fff;
}

.tm-name {
	position: relative;
	z-index: 2;
	font-size: 1.25rem;
	font-weight: 800;
	color: #fff;
	margin: 0;
	text-shadow: 0 0.0625rem 0.375rem rgba(0, 0, 0, 0.4);
	white-space: normal;
	word-break: break-word;
	text-align: left;
	line-height: 1.25;
}
@media (min-width: 576px) {
	.tm-name {
		font-size: 1.4375rem;
	}
}

.tm-trophies {
	position: relative;
	z-index: 2;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 0.3125rem;
	font-size: 0.875rem;
	line-height: 1;
}
.tm-trophies:has(.fa-trophy) {
	padding: 0.25rem 0.625rem;
	border-radius: 9999px;
	background: rgba(255, 215, 0, 0.15);
	border: 0.0625rem solid rgba(255, 215, 0, 0.35);
}
.tm-trophies .fa-trophy {
	font-size: 0.8125rem;
	color: #ffd700;
	-webkit-filter: drop-shadow(0 0 0.25rem rgba(255, 215, 0, 0.8));
	        filter: drop-shadow(0 0 0.25rem rgba(255, 215, 0, 0.8));
}
.tm-trophies .trophy-count-num {
	font-size: 0.875rem;
	font-weight: 800;
	color: #ffd700;
	line-height: 1;
}

.tm-rank {
	position: relative;
	z-index: 2;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 0.25rem;
	margin-bottom: 0.375rem;
	padding: 0.125rem 0.5625rem 0.125rem 0.4375rem;
	border-radius: 9999px;
	background: rgba(255, 255, 255, 0.12);
	border: 0.0625rem solid rgba(255, 255, 255, 0.22);
	font-size: 0.6875rem;
	font-weight: 600;
	color: rgba(255, 255, 255, 0.8);
	letter-spacing: 0.04em;
}
.tm-rank::before {
	content: "№";
	font-size: 0.625rem;
	opacity: 0.6;
}

.tm-body {
	padding: 0.75rem 0.75rem 0.75rem;
	background: #fff;
	border-radius: 1rem 1rem 0 0;
	position: relative;
	z-index: 2;
	margin-top: -1rem;
	-ms-flex-negative: 0;
	    flex-shrink: 0;
	overflow: visible;
}
@media (min-width: 576px) {
	.tm-body {
		padding: 1rem 1rem 1rem;
		-webkit-box-flex: 1;
		    -ms-flex: 1;
		        flex: 1;
		min-height: 0;
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
	}
}

.tm-section-label {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 0.5rem;
	font-size: 0.6875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: #6b7280;
	margin-bottom: 0.75rem;
}

.tm-player-count {
	font-size: 0.6875rem;
	font-weight: 700;
	color: #1a5c3a;
	background: rgba(26, 92, 58, 0.1);
	border: 0.0625rem solid rgba(26, 92, 58, 0.25);
	border-radius: 9999px;
	padding: 0.0625rem 0.4375rem;
	line-height: 1.5;
}

.team-players-grid {
	position: relative;
}
.team-players-grid .team-players-swiper {
	display: block;
}
.team-players-grid .team-players-swiper .swiper-slide {
	width: 100%;
	height: auto;
	-ms-flex-negative: 0;
	    flex-shrink: 0;
}
.team-players-grid .team-players-swiper .team-players-slide-grid {
	display: grid;
	gap: 0.375rem;
	width: 100%;
	grid-template-columns: 1fr;
}
@media (min-width: 576px) {
	.team-players-grid .team-players-swiper .team-players-slide-grid {
		grid-template-columns: 1fr 1fr;
	}
}
@media (min-width: 768px) {
	.team-players-grid .team-players-swiper .team-players-slide-grid {
		gap: 0.4375rem;
		grid-template-columns: 1fr 1fr 1fr;
	}
}
.team-players-grid .team-players-swiper .swiper-pagination {
	position: static;
	margin-top: 0.75rem;
}
.team-players-grid .team-players-swiper .swiper-pagination-bullet {
	background: #0e2c2c;
	opacity: 0.4;
	width: 0.5rem;
	height: 0.5rem;
}
.team-players-grid .team-players-swiper .swiper-pagination-bullet.swiper-pagination-bullet-active {
	opacity: 1;
	background: #0e2c2c;
}
[data-theme=dark] .team-players-grid .team-players-swiper .swiper-pagination-bullet {
	background: #89f18e;
}
[data-theme=dark] .team-players-grid .team-players-swiper .swiper-pagination-bullet.swiper-pagination-bullet-active {
	background: #89f18e;
	opacity: 1;
}
.team-players-grid .team-players-grid-desktop {
	display: none;
}
.team-players-grid .player-card {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	text-align: center;
	gap: 0.25rem;
	background: #f8faf8;
	border: 0.0625rem solid rgba(14, 44, 44, 0.08);
	border-radius: 0.625rem;
	padding: 0.4375rem 0.375rem;
	position: relative;
	cursor: default;
	min-width: 0;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	-webkit-transition: background 0.15s ease;
	transition: background 0.15s ease;
}
@media (min-width: 576px) {
	.team-players-grid .player-card {
		gap: 0.375rem;
		padding: 0.625rem 0.5rem;
	}
}
.team-players-grid .player-card.is-captain::before {
	content: "🚩";
	position: absolute;
	top: 0.375rem;
	right: 0.375rem;
	font-size: 0.75rem;
}
.team-players-grid .player-card.is-main-player::after {
	content: "Основа";
	position: absolute;
	top: 0.375rem;
	left: 0.375rem;
	background: linear-gradient(135deg, #10b981, #059669);
	color: #fff;
	font-size: 0.5rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.01875rem;
	padding: 0.125rem 0.375rem;
	border-radius: 0.25rem;
}

.player-card .player-photo {
	width: 2rem;
	height: 2rem;
	border-radius: 50%;
	-o-object-fit: cover;
	   object-fit: cover;
	-ms-flex-negative: 0;
	    flex-shrink: 0;
	border: 0.125rem solid rgba(14, 44, 44, 0.12);
	display: block;
}
@media (min-width: 576px) {
	.player-card .player-photo {
		width: 2.5rem;
		height: 2.5rem;
	}
}

.player-card .player-info {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	text-align: center;
	width: 100%;
	min-width: 0;
}

.player-card .player-info .player-name {
	font-size: 0.6875rem;
	font-weight: 600;
	color: #111827;
	white-space: normal;
	overflow: hidden;
	text-overflow: ellipsis;
	line-height: 1.3;
	text-align: center;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	-webkit-box-orient: vertical;
}
.player-card .player-info .player-name::after {
	display: none;
}

.team-row img {
	-o-object-fit: contain;
	   object-fit: contain;
}

.yc-wrap {
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 0.1875rem;
	vertical-align: middle;
	margin-left: 0.3125rem;
	position: relative;
	top: -0.0625rem;
}

.yc-card {
	display: inline-block;
	width: 0.5625rem;
	height: 0.8125rem;
	background: linear-gradient(170deg, #fde047 0%, #eab308 100%);
	border-radius: 0.125rem;
	-webkit-box-shadow: 0.0625rem 0.0625rem 0.1875rem rgba(0, 0, 0, 0.35), inset 0 0.0625rem 0 rgba(255, 255, 255, 0.35);
	        box-shadow: 0.0625rem 0.0625rem 0.1875rem rgba(0, 0, 0, 0.35), inset 0 0.0625rem 0 rgba(255, 255, 255, 0.35);
	-ms-flex-negative: 0;
	    flex-shrink: 0;
}

.yc-num {
	font-size: 0.6875rem;
	font-weight: 800;
	color: #92400e;
	line-height: 1;
	letter-spacing: -0.01em;
}

.team-modal-body .team-name,
.tm-name,
#modal-team-name {
	white-space: normal !important;
	overflow: visible !important;
	text-overflow: unset !important;
	word-break: break-word !important;
	max-width: none !important;
	width: 100%;
}

#modal-team-photo {
	-o-object-fit: contain;
	   object-fit: contain;
}

body[data-theme=dark] .player-modal.modal-content,
body[data-theme=dark] .team-modal.modal-content {
	background: #0d1c14;
	-webkit-box-shadow: 0 1.5rem 3.75rem rgba(0, 0, 0, 0.6);
	        box-shadow: 0 1.5rem 3.75rem rgba(0, 0, 0, 0.6);
}
body[data-theme=dark] .pm-hero,
body[data-theme=dark] .tm-hero {
	background: linear-gradient(160deg, #030905 0%, #071510 40%, #0e2c2c 80%, #1a5c3a 100%);
}
body[data-theme=dark] .pm-stats,
body[data-theme=dark] .tm-body {
	background: #0d1c14;
}
body[data-theme=dark] .tm-section-label {
	color: rgba(137, 241, 142, 0.5);
}
body[data-theme=dark] .tm-player-count {
	background: rgba(137, 241, 142, 0.12);
	color: #8df390;
}
body[data-theme=dark] .pm-stat:not(:nth-child(4n))::after {
	background: rgba(137, 241, 142, 0.08);
}
body[data-theme=dark] .pm-stat:nth-child(n+5) {
	border-top-color: rgba(137, 241, 142, 0.08);
}
body[data-theme=dark] .pm-stat-value {
	color: #e8fde8;
}
body[data-theme=dark] .pm-stat-label {
	color: rgba(200, 240, 204, 0.5);
}
.wins body[data-theme=dark] .pm-stat-icon {
	color: #34d399;
}
.draws body[data-theme=dark] .pm-stat-icon {
	color: #fbbf24;
}
.losses body[data-theme=dark] .pm-stat-icon {
	color: #f87171;
}
.games body[data-theme=dark] .pm-stat-icon {
	color: #6ee7b7;
}
.goals body[data-theme=dark] .pm-stat-icon {
	color: #a78bfa;
}
.assists body[data-theme=dark] .pm-stat-icon {
	color: #22d3ee;
}
.saves body[data-theme=dark] .pm-stat-icon {
	color: #f472b6;
}
.mvp body[data-theme=dark] .pm-stat-icon {
	color: #fbbf24;
}
body[data-theme=dark] .player-card {
	background: rgba(137, 241, 142, 0.04);
	border-color: rgba(137, 241, 142, 0.1);
}
body[data-theme=dark] .player-card .player-info .player-name {
	color: #e8fde8;
}
body[data-theme=dark] .player-card .player-photo {
	border-color: rgba(137, 241, 142, 0.2);
}

.info-page {
	width: 100%;
	min-width: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
	overflow-x: hidden;
}
.info-page__content {
	width: 100%;
	min-width: 0;
	max-width: 920px;
	margin: 0 auto;
	padding: 0 1rem;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
@media (min-width: 768px) {
	.info-page__content {
		padding: 0;
	}
}
.info-page__header {
	margin-bottom: 1.25rem;
	padding: 0 1rem;
}
@media (min-width: 768px) {
	.info-page__header {
		padding: 0;
		margin-bottom: 1.5rem;
	}
}
.info-page__home {
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 0.5rem;
	color: var(--logo-blue);
	text-decoration: none;
	font-size: 0.875rem;
	font-weight: 600;
	padding: 0.5rem 0.75rem;
	border-radius: 0.5rem;
	margin-bottom: 0.75rem;
	-webkit-transition: background 0.2s ease, color 0.2s ease;
	transition: background 0.2s ease, color 0.2s ease;
}
.info-page__home i {
	font-size: 1rem;
}
.info-page__home:hover {
	background: rgba(32, 91, 200, 0.1);
	color: var(--logo-blue);
}
body[data-theme=dark] .info-page__home {
	color: #6eb3f7;
}
body[data-theme=dark] .info-page__home:hover {
	background: rgba(32, 91, 200, 0.2);
	color: #93c5fd;
}
.info-page h1 {
	letter-spacing: -0.02em;
	font-size: 1.625rem;
	font-weight: 700;
	color: var(--text-primary);
	margin-bottom: 1.25rem;
	padding: 0;
}
@media (min-width: 768px) {
	.info-page h1 {
		font-size: 2.5rem;
		margin-bottom: 2rem;
	}
}
.info-page .lead {
	line-height: 1.35;
}
.info-page .card {
	border-color: var(--border);
}
.info-page .list-group-item {
	border-color: var(--border);
}
.info-page .list-group-item .fw-semibold {
	white-space: nowrap;
}
.info-page__tabs {
	overflow-x: auto;
	-ms-flex-wrap: nowrap;
	    flex-wrap: nowrap;
	gap: 8px;
	padding-bottom: 2px;
}
.info-page__tabs .nav-link {
	white-space: nowrap;
}
.info-page .tab-content {
	min-width: 0;
}
.info-page__main-tabs {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: nowrap;
	    flex-wrap: nowrap;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	gap: 0.375rem;
	padding: 0.375rem;
	border: none;
	margin-bottom: 0.625rem;
}
@media (min-width: 768px) {
	.info-page__main-tabs {
		gap: 0.5rem;
		padding: 0.5rem;
	}
}
.info-page__main-tabs::-webkit-scrollbar {
	height: 0.25rem;
}
.info-page__main-tabs::-webkit-scrollbar-track {
	background: transparent;
}
.info-page__main-tabs::-webkit-scrollbar-thumb {
	border-radius: 0.125rem;
}
.info-page__main-tabs .nav-item {
	-ms-flex-negative: 0;
	    flex-shrink: 0;
	min-width: -webkit-fit-content;
	min-width: -moz-fit-content;
	min-width: fit-content;
}
.info-page__main-tabs .nav-link {
	white-space: nowrap;
	padding: 0.625rem 1.125rem;
	font-size: 0.8125rem;
	font-weight: 600;
	color: var(--text-primary);
	background: transparent;
	border: none;
	border-radius: 0.5rem;
	-webkit-transition: background 0.2s ease, color 0.2s ease, -webkit-box-shadow 0.2s ease;
	transition: background 0.2s ease, color 0.2s ease, -webkit-box-shadow 0.2s ease;
	transition: background 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
	transition: background 0.2s ease, color 0.2s ease, box-shadow 0.2s ease, -webkit-box-shadow 0.2s ease;
	position: relative;
	opacity: 0.85;
}
@media (min-width: 768px) {
	.info-page__main-tabs .nav-link {
		padding: 0.75rem 1.375rem;
		font-size: 0.9375rem;
	}
}
.info-page__main-tabs .nav-link:hover {
	opacity: 1;
	background: rgba(255, 255, 255, 0.5);
	color: var(--text-primary);
}
.info-page__main-tabs .nav-link.active {
	opacity: 1;
	color: var(--brand-accent);
	background: var(--surface-elevated);
	-webkit-box-shadow: 0 0.0625rem 0.1875rem rgba(0, 0, 0, 0.08);
	        box-shadow: 0 0.0625rem 0.1875rem rgba(0, 0, 0, 0.08);
}
.info-page__main-tabs .nav-link:focus {
	outline: none;
	-webkit-box-shadow: 0 0 0 0.125rem rgba(59, 130, 246, 0.35);
	        box-shadow: 0 0 0 0.125rem rgba(59, 130, 246, 0.35);
}
body[data-theme=dark] .info-page__main-tabs .nav-link:hover {
	background: rgba(255, 255, 255, 0.08);
}
body[data-theme=dark] .info-page__main-tabs .nav-link.active {
	-webkit-box-shadow: 0 0.0625rem 0.25rem rgba(0, 0, 0, 0.3);
	        box-shadow: 0 0.0625rem 0.25rem rgba(0, 0, 0, 0.3);
}
.info-page__panel {
	background: var(--surface-elevated);
	border: 1px solid var(--border);
	border-radius: 0.75rem;
	padding: 1rem;
	min-width: 0;
	font-size: 0.875rem;
}
@media (min-width: 768px) {
	.info-page__panel {
		font-size: 1rem;
		padding: 1.5rem;
		margin: 0;
		border-radius: 0 0.75rem 0.75rem 0.75rem;
	}
}
.info-page .rating-content h2 {
	font-size: 1.375rem;
	font-weight: 700;
	color: var(--text-primary);
	margin-bottom: 1rem;
}
.info-page .rating-content h3 {
	font-size: 1.0625rem;
	font-weight: 600;
	color: var(--text-primary);
	margin-bottom: 0.75rem;
}
.info-page .rating-content h4 {
	font-size: 0.875rem;
	font-weight: 600;
	margin-bottom: 0.625rem;
}
.info-page .rating-content .point-item strong,
.info-page .rating-content .penalty-item strong,
.info-page .rating-content .additional-item strong {
	color: var(--text-primary);
	font-weight: 600;
}
.info-page .rating-content .points-section {
	margin-bottom: 1.5rem;
}
.info-page .rating-content .points-list,
.info-page .rating-content .penalties-list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 0.5rem;
}
.info-page .rating-content ul li {
	margin-bottom: 0.5rem;
	line-height: 1.6;
}
.info-page .rating-content p {
	line-height: 1.6;
	margin-bottom: 0.75rem;
}
.info-page .rating-content .text-muted {
	font-size: 0.8125rem;
	font-style: italic;
}
@media (min-width: 768px) {
	.info-page .rating-content h2 {
		font-size: 2rem;
	}
	.info-page .rating-content h3 {
		font-size: 1.5rem;
	}
	.info-page .rating-content h4 {
		font-size: 1rem;
	}
	.info-page .rating-content__panel {
		padding: 1.5rem;
	}
}
.info-page .football-content h2 {
	font-size: 1.375rem;
	font-weight: 700;
	color: var(--text-primary);
	margin-bottom: 1rem;
}
.info-page .football-content h3 {
	font-size: 1.0625rem;
	font-weight: 600;
	color: var(--text-primary);
	margin-bottom: 0.75rem;
}
.info-page .football-content .lead {
	font-size: 0.9375rem;
	font-weight: 500;
	color: var(--text-primary);
	margin-bottom: 1rem;
}
.info-page .football-content .command-item strong,
.info-page .football-content .location-item strong,
.info-page .football-content .schedule-item strong,
.info-page .football-content .payment-item strong,
.info-page .football-content .rating-item strong,
.info-page .football-content .media-item strong {
	color: var(--text-primary);
	font-weight: 600;
}
.info-page .football-content .command-item a:not(.btn),
.info-page .football-content .location-item a:not(.btn),
.info-page .football-content .schedule-item a:not(.btn),
.info-page .football-content .payment-item a:not(.btn),
.info-page .football-content .rating-item a:not(.btn),
.info-page .football-content .media-item a:not(.btn) {
	color: #3b82f6;
	text-decoration: none;
}
.info-page .football-content .command-item a:not(.btn):hover,
.info-page .football-content .location-item a:not(.btn):hover,
.info-page .football-content .schedule-item a:not(.btn):hover,
.info-page .football-content .payment-item a:not(.btn):hover,
.info-page .football-content .rating-item a:not(.btn):hover,
.info-page .football-content .media-item a:not(.btn):hover {
	text-decoration: underline;
}
.info-page .football-content .media-links .media-item {
	overflow-wrap: break-word;
}
.info-page .football-content ul li {
	margin-bottom: 0.5rem;
	line-height: 1.6;
}
.info-page .football-content p {
	line-height: 1.6;
	margin-bottom: 0.75rem;
}
.info-page .football-content .text-muted {
	font-size: 0.8125rem;
	font-style: italic;
	color: #6b7280;
}
@media (min-width: 768px) {
	.info-page .football-content h2 {
		font-size: 2rem;
	}
	.info-page .football-content h3 {
		font-size: 1.5rem;
	}
	.info-page .football-content .lead {
		font-size: 1.125rem;
		margin-bottom: 1.25rem;
	}
}
.info-page .tournament-content h2 {
	font-size: 1.375rem;
	font-weight: 700;
	color: var(--text-primary);
	margin-bottom: 1rem;
}
.info-page .tournament-content h3 {
	font-size: 1.0625rem;
	font-weight: 600;
	color: var(--text-primary);
	margin-bottom: 0.75rem;
}
.info-page .tournament-content .lead {
	font-size: 0.9375rem;
	font-weight: 500;
	color: var(--text-primary);
	margin-bottom: 1rem;
}
.info-page .tournament-content .step-item strong,
.info-page .tournament-content .card-rule-item strong {
	color: var(--text-primary);
	font-weight: 600;
}
.info-page .tournament-content ul li {
	margin-bottom: 0.5rem;
	line-height: 1.6;
}
.info-page .tournament-content p {
	line-height: 1.6;
	margin-bottom: 0.75rem;
}
@media (min-width: 768px) {
	.info-page .tournament-content h2 {
		font-size: 2rem;
	}
	.info-page .tournament-content h3 {
		font-size: 1.5rem;
	}
	.info-page .tournament-content .lead {
		font-size: 1.125rem;
		margin-bottom: 1.25rem;
	}
}
.info-page .copy-phone {
	cursor: pointer;
	-webkit-transition: background 0.2s ease;
	transition: background 0.2s ease;
	padding: 0.25rem 0.5rem;
	border-radius: 0.25rem;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 0.375rem;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	border: 2px solid transparent;
	min-height: -webkit-fit-content;
	min-height: -moz-fit-content;
	min-height: fit-content;
	max-width: 100%;
}
.info-page .copy-phone:hover {
	background: rgba(59, 130, 246, 0.1);
}
.info-page .copy-phone i {
	-webkit-transition: opacity 0.2s ease;
	transition: opacity 0.2s ease;
}
.info-page .copy-phone:hover i {
	opacity: 1;
}
.info-page .football-content,
.info-page .rating-content,
.info-page .tournament-content {
	min-width: 0;
}