/* ========================================
   CONTAINER
   ======================================== */

.container {
	padding: var(--container-padding-y) var(--container-padding-x);
	max-width: var(--container-max-width);
	margin: 0 auto;
}
/* ========================================
   PLAYER PAGE CONTAINER
   ======================================== */
.player-page {
	background: #f5f5f5;
	min-height: 100vh;
}

/* ========================================
   PLAYER HERO SECTION
   ======================================== */
.player-hero {
	background: linear-gradient(180deg, var(--red-900, var(--red-900)) 0%, var(--red-700, #FF1A1A) 50%, var(--red-800, #CC0000) 100%);
	height: 31rem;
	padding: 2.5rem 0 2.5rem;
	position: relative;
	overflow: hidden;
	box-sizing: border-box;
}

.player-container {
	max-width: var(--container-max-width);
	width: 100%;
	height: 100%;
	margin: 0 auto;
	padding: var(--container-padding-y) var(--container-padding-x);
	box-sizing: border-box;
}


/* ========================================
   PLAYER PROFILE CARD (PHOTO + INFO)
   ======================================== */

/* Основной блок профиля */
.player-profile-card {
	display: grid;
	grid-template-columns: 32% 68%;
	gap : 0.5rem;	
	justify-content: space-between;
	height: 100%;
}

/* Фото игрока */
.player-photo-wrapper {
	width: 100%;
	max-width: 100%;
	height: auto;
	margin: 0 auto;
	border-radius: 2.25rem;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 0.28125rem solid #ffffff26;
	box-shadow: 0 1.875rem 5.625rem #4d4d4d4d;
}

.player-photo-wrapper--placeholder {
	background-color: var(--color-white);
	border-color: #f0f0f0;
	box-shadow: 0 1.875rem 5.625rem #4d4d4d4d;
}

.player-photo-wrapper--placeholder lottie-player {
	width: 100%;
	height: 100%;
	min-height: 18.75rem;
}

.player-photo-wrapper img {
	height: 100%;
	width: 100%;
	background: linear-gradient(180deg, var(--red-500) 0%, var(--red-100) 100%);
	aspect-ratio: 1 / 1;
	object-fit: contain;
	display: block;
	flex-shrink: 0;
}

.player-photo-wrapper .no-photo {
	font-size: 6.25rem;
	font-weight: bold;
	color: #ffffff4d;
	text-transform: uppercase;
}


/* ========================================
   PLAYER INFO SECTION (NAME, POSITION, STATS)
   ======================================== */

.player-info-section {
	background: #ffffff33;
	border-radius: 1rem;
	padding: 1.625rem;
	backdrop-filter: blur(1.25rem);
	border: 0.125rem solid #fffefe66;
	box-shadow: 0 1.25rem 3.75rem #33333333;
	height: 100%;
	width: 70%;
	margin: 0 0 0 auto;
	text-align: right;
	display: flex;
	flex-direction: column;
	justify-content: center;
	box-sizing: border-box;
}


/* ========================================
   PLAYER HEADER (NUMBER + NAME + POSITION)
   ======================================== */

/* Заголовок с номером и именем */
.player-header {
	display: flex;
	align-items: flex-start;
	gap: 1rem;
	margin-bottom: 1.5rem;
}

.player-number-box {
	aspect-ratio: 1;
	width: 5rem;
	height: 5rem;
	background: #fff;
	border-radius: 1.025rem;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 2.25rem;
	font-weight: 700;
	color: var(--red-900);
	flex-shrink: 0;
	box-shadow: 0 0.25rem 0.375rem -4px var(--color-dark-gray)1a, 0 0.625rem 0.9375rem -3px var(--color-dark-gray)1a;
}

.player-name-block {
	flex: 1;
	text-align: left;
}

.player-name {
	font-size: 2.25rem;
	font-weight: 700;
	color: #fff;
	margin: 0 0 0.75rem 0;
	line-height: 1.1;
	text-shadow: 0 0.125rem 0.625rem #33333333;
}

.player-position-tag {
	display: inline-block;
	background: var(--red-700);
	color: #fff;
	padding: 0.375rem 1rem;
	border-radius: 9999px;
	font-size: 0.875rem;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.03125rem;
	box-shadow: 0 0.125rem 0.25rem -2px var(--color-dark-gray)1a, 0 0.25rem 0.375rem -1px var(--color-dark-gray)1a;
}

/* ========================================
   PLAYER STATS BAR (HORIZONTAL STATS)
   ======================================== */

.player-stats-bar {
	background-color: #fff;
	width: 100%;
	border-bottom: 1px solid var(--gray-200);
}

.player-stats-bar-container {
	max-width: var(--container-max-width);
	margin: 0 auto;
	padding: 0 2.5rem;
	display: flex;
	justify-content: space-between;
	align-items: center;
	min-height: auto;
	flex-wrap: nowrap;
	gap: 1.25rem;
}

.player-stats-bar-item {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.25rem;
	padding: 1rem 0;
	flex: 0 1 auto;
	min-width: auto;
	white-space: nowrap;
}

.player-stats-bar-number {
	color: var(--red-700);
	font-size: 2rem;
	font-weight: 600;
	line-height: 1;
}

.player-stats-bar-label {
	color: var(--gray-600);
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1.4;
}

/* Селектор турнира */
.player-stats-bar-item--tournament {
	min-width: 11.25rem;
}

/* ========================================
   CUSTOM SEASON SELECTOR DROPDOWN
   ======================================== */

/* Селектор турнира */
.custom-season-select {
	position: relative;
	display: inline-block;
}

.custom-season-select-trigger {
	border: none;
	background: transparent;
	color: var(--red-700);
	font-size: 2rem;
	font-weight: 600;
	cursor: pointer;
	padding: 0;
}

.custom-season-select-trigger:after {
	content: '';
	display: inline-block;
	width: 0;
	height: 0;
	margin-left: 0.5rem;
	border-left: 0.5rem solid transparent;
	border-right: 0.5rem solid transparent;
	border-top: 0.5rem solid currentColor;
	vertical-align: middle;
}

.custom-season-select-dropdown {
	display: none;
	position: absolute;
	top: 100%;
	right: -1.25rem;
	min-width: auto;
	background-color: #fff;
	box-shadow: 0 0.25rem 0.5rem #4d4d4d4d;
	border-radius: 0.25rem;
	padding: 0.5rem 0;
	list-style: none;
	margin: 0.5rem 0 0 0;
	z-index: 1000;
	border: 1px solid #dcdcde;
	max-height: auto;
	overflow-y: auto;
}

.custom-season-select.active .custom-season-select-dropdown {
	display: block;
}

.custom-season-select-dropdown a {
	display: block;
	padding: 0.5rem 1rem;
	font-size: 2rem;
	color: var(--red-700);
	text-decoration: none;
	border-radius: 0;
	font-weight: 600;
	transition: background-color 0.2s ease;
}

.custom-season-select-dropdown a:hover {
	background-color: #FFE5E5;
	color: var(--red-700);
}

.custom-season-select-dropdown a.selected {
	background-color: #FFE5E5;
	font-weight: 600;
}

/* ========================================
   CHARACTERISTIC STATS GRID (AGE, HEIGHT, ETC)
   ======================================== */

/* Сетка характеристик */
.player-stats-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 1rem;
	width: 100%;
	align-items: stretch;
	justify-items: stretch;
	text-align: left;
}

.stat-box {
	background: #ffffff33;
	border-radius: 0.625rem;
	padding: 0.8125rem;
	border: 1px solid #fffefe4d;
	transition: all 0.3s ease;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	gap: 0.25rem;
	min-width: 0;	
}

.stat-box:last-child:nth-child(odd) {
	grid-column: 1 / -1;
}

.stat-box:hover {
	background: #ffffff40;
	transition: all 0.2s ease;
}

.stat-box-label {
	font-size: 0.75rem;
	color: #ffffffe6;
	text-transform: uppercase;
	letter-spacing: 0.6px;
	font-weight: 600;
	line-height: 1rem;
}

.stat-box-value {
	font-size: 1.25rem;
	color: #fff;
	font-weight: 700;
	line-height: 1.75rem;
}

.stat-box-value .unit {
	font-size: 1rem;
	font-weight: 500;
	opacity: 0.9;
	margin-left: 0.25rem;
}

/* ========================================
   PLAYER CONTENT SECTIONS (MAIN LAYOUT)
   ======================================== */

.player-content {
	background: #f5f5f5;
	padding: 0.9375rem 0 3.75rem 0;
}

.content-container {
	max-width: var(--container-max-width);
	width: 100%;
	margin: 0 auto;
	padding: 0 2.5rem;
	box-sizing: border-box;
}

/* ========================================
   CAREER STATS SECTION
   ======================================== *//* Карьерная статистика */
.career-stats-section {
	background: #fff;
	border-radius: 1.025rem;
	padding: 2.5rem;
	margin-bottom: 2.5rem;
	box-shadow: 0 0.125rem 0.25rem -2px var(--color-dark-gray)1a, 0 0.25rem 0.375rem -1px var(--color-dark-gray)1a;
}

.section-title {
	font-size: 1.25rem;
	font-weight: 700;
	color: var(--gray-900);
	margin: 0 0 1.5625rem 0;
	padding-left: 0.9375rem;
	border-left: 0.25rem solid var(--red-700);
	display: flex;
	align-items: center;
	gap: 0.5rem;
}

.section-title svg {
	width: 1.25rem;
	height: 1.25rem;
	color: var(--red-700);
}

.stats-cards-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(auto, 1fr));
	gap: 1.25rem;
}

.stat-card {
	background: #f8f8f8;
	border: 1px solid #e8e8e8;
	border-radius: 0.625rem;
	padding: 1.5625rem 1.25rem;
	text-align: center;
	transition: all 0.3s ease;
}

.stat-card:hover {
	background: #fff;
	border-color: var(--red-700);
	box-shadow: 0 0.375rem 1.25rem var(--red-700)1f;
	transform: translateY(-4px);
}

.stat-card-value {
	font-size: 2.25rem;
	font-weight: 800;
	color: var(--red-700);
	margin-bottom: 0.5rem;
	line-height: 1;
}

.stat-card-label {
	font-size: 0.75rem;
	color: var(--gray-600);
	text-transform: uppercase;
	letter-spacing: 0.03125rem;
	font-weight: 600;
}

/* ========================================
   PLAYER SECTIONS GRID (POSITION + MATCHES + BIOGRAPHY)
   ======================================== */

/* Сетка основных блоков: Позиция + Матчи + Биография + Таблица */
.player-sections-grid {
	display: grid;
	grid-template-columns: 32% 68%;
	gap: 0.5rem;
	align-items: stretch;
	padding: 0;	
	justify-content: space-between;
	width: 100%;
	box-sizing: border-box;
}

/* Позиция на поле */
.position-section {
	width: 100%;
	display: flex;
	flex-direction: column;
	gap: 1rem;
	background-color: var(--color-white);
	border-radius: 1.025rem;
	padding: 1.5rem;
	box-shadow: 0 0.125rem 0.25rem -2px var(--color-dark-gray)1a, 0 0.25rem 0.375rem -1px var(--color-dark-gray)1a;
}

.position-section .section-heading {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}

.position-section .section-title {
	font-family: "Inter-SemiBold", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;
	font-weight: 600;
	color: var(--gray-800);
	font-size: 1.5rem;
	letter-spacing: 0;
	line-height: 31.2px;
	margin: 0;
}

.field-container {
	position: relative;
	display: flex;
	flex-direction: column;
	width: 100%;
	gap: 1rem;
}

.field-svg {
	width: 100%;
	height: auto;
	display: block;
	border-radius: 0.625rem;
	overflow: hidden;
	background: linear-gradient(
		90deg,
		var(--green-700) 0%,
		var(--green-800) 100%
	);
}

.player-position-marker {
	position: absolute;
	width: 2.25rem;
	height: 2.25rem;
	background: linear-gradient(135deg, var(--red-700) 0%, var(--red-800) 100%);
	border: 0.125rem solid #ffffff4d;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 0.25rem 0.75rem var(--red-700)66, 0 0.125rem 0.25rem #33333333;
	animation: pulse-shadow 2s ease-in-out infinite;
	z-index: 10;
	pointer-events: none;
	overflow: visible;
}

.marker-content {
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}

.marker-number {
	font-size: 1.25rem;
	font-weight: 600;
	line-height: 1;
	color: var(--color-white);
}

.player-position-label {
	margin-top: 0.75rem;
	padding: 0.75rem 1rem;
	text-align: left;
	background: linear-gradient(135deg, var(--red-900, var(--red-900)) 0%, var(--red-700) 100%);
	border-radius: 0.5rem;
	border: 1px solid #ffffff26;
	display: flex;
	align-items: stretch;
	gap: 0.75rem;
	font-family: "Inter-Regular", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;
	box-shadow: 0 0.25rem 0.75rem var(--red-900)40;
	width: 100%;
}

.position-label-container {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	width: 100%;
}

.position-label-shirt {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.shirt-badge {
	width: 2.5rem;
	height: 2.5rem;
	background-color: var(--red-700, #FF1A1A);
	border: 0.125rem solid #ffffff66;
	border-radius: 0.375rem;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--color-white);
	font-weight: 700;
	font-size: 1.125rem;
	font-family: "Inter-Bold", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;
	line-height: 1;
	box-shadow: 0 0.125rem 0.375rem var(--red-700)66;
}

.position-label-info {
	display: flex;
	flex-direction: column;
	gap: 0.1875rem;
	flex: 1;
}

.player-name-label {
	color: var(--color-white);
	font-weight: 600;
	font-size: 0.9375rem;
	line-height: 1.3;
	font-family: "Inter-SemiBold", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;
}

.position-name-label {
	color: rgba(255, 255, 255, 0.85);
	font-weight: 400;
	font-size: 0.75rem;
	line-height: 1.2;
	opacity: 0.9;
	text-transform: uppercase;
	letter-spacing: 0.03125rem;
	font-family: "Inter-Regular", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;
}

.position-label-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 1.5rem;
	height: 1.5rem;
	flex-shrink: 0;
	color: #ffffffb3;
}

.position-label-icon svg {
	width: 1.25rem;
	height: 1.25rem;
}

.field-stats {
	display: flex;
	flex-direction: column;
	width: 100%;
	gap: 0.75rem;
	padding: 1rem;
	background-color: var(--gray-50);
	border-radius: 0.625rem;
}

.field-stat-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
}

.field-stat-info {
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
	flex: 1;
}

.field-stat-label {
	font-family: "Inter-Regular", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;
	font-weight: 400;
	color: #495565;
	font-size: 0.875rem;
	letter-spacing: 0;
	line-height: 1.25rem;
	margin: 0;
}

.field-stat-value {
	font-family: "Inter-Regular", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;
	font-weight: 400;
	color: var(--gray-800);
	font-size: 1.125rem;
	letter-spacing: 0;
	line-height: 1.75rem;
	margin: 0;
}

/* Последние матчи */
.recent-matches-section {
	background: #fff;
	border-radius: 1.025rem;
	padding: 1.875rem;
	box-shadow: 0 0.125rem 0.25rem -2px var(--color-dark-gray)1a, 0 0.25rem 0.375rem -1px var(--color-dark-gray)1a;
}

/* ========================================
   MATCHES TABLE (RECENT GAMES)
   ======================================== */

.matches-table {
	width: 100%;
	border-collapse: collapse;
	margin-top: 0.9375rem;
}

.matches-table thead {
	background: #f8f8f8;
}

.matches-table th {
	padding: 0.75rem 0.9375rem;
	text-align: left;
	font-size: 0.625rem;
	font-weight: 700;
	color: var(--gray-600);
	text-transform: uppercase;
	letter-spacing: 0.03125rem;
	border-bottom: 0.125rem solid var(--gray-200);
}

.matches-table td {
	padding: 0.9375rem;
	color: var(--gray-900);
	font-size: 0.75rem;
	border-bottom: 1px solid #f5f5f5;
}

.matches-table tbody tr:hover {
	background: var(--gray-50);
}

.match-score {
	font-weight: 700;
	color: var(--red-700);
}

.match-events {
	display: flex;
	gap: 0.5rem;
	align-items: center;
}

.event-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	padding: 0.25rem 0.5rem;
	border-radius: 0.375rem;
	font-size: 0.6875rem;
	font-weight: 600;
}

.event-badge.goal {
	background: #d4f4dd;
	color: #2d7a4b;
}

.event-badge.yellow {
	background: #fff9e6;
	color: #d97706;
}

.event-badge.red {
	background: #fee;
	color: var(--red-400);
}

.event-badge.substitution {
	background: #e0f2fe;
	color: #0369a1;
}

/* ========================================
   MATCHES COLLAPSE/EXPAND
   ======================================== */

.matches-wrapper {
	max-height: none;
	overflow: visible;
	transition: max-height 0.3s ease-out;
}

.matches-wrapper.collapsed {
	max-height: 18.75rem;
	overflow: hidden;
	mask-image: linear-gradient(to bottom, black 60%, transparent 100%);
	-webkit-mask-image: linear-gradient(to bottom, black 60%, transparent 100%);
}

.toggle-matches-btn {
	display: none;
	width: 100%;
	margin-top: 1.25rem;
	padding: 0.75rem 1rem;
	background: var(--red-700, #FF1A1A);
	color: var(--color-white);
	border: none;
	border-radius: 0.5rem;
	font-size: 0.875rem;
	font-weight: 600;
	cursor: pointer;
	font-family: "Inter-SemiBold", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	transition: background-color 0.3s ease, transform 0.2s ease;
}

.toggle-matches-btn:hover {
	background: var(--red-800);
	transform: translateY(-1px);
}

.toggle-matches-btn.expanded {
	background: var(--red-700, #FF1A1A);
}

.toggle-icon {
	transition: transform 0.3s ease;
	width: 1rem;
	height: 1rem;
}

.toggle-matches-btn.expanded .toggle-icon {
	transform: rotate(180deg);
}

.matches-wrapper.collapsed ~ .toggle-matches-btn {
	display: flex;
}

/* Таблица статистики по годам - полная ширина */
.seasons-table-section {
	grid-column: 1 / -1;
	background: #fff;
	border-radius: 1.025rem;
	padding: 2.5rem;
	box-shadow: 0 0.125rem 0.25rem -2px var(--color-dark-gray)1a, 0 0.25rem 0.375rem -1px var(--color-dark-gray)1a;
}

/* ========================================
   BIOGRAPHY SECTION
   ======================================== */

.full-report-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.3125rem;
	padding: 0.375rem 0.75rem;
	background: var(--red-700);
	color: #fff;
	text-decoration: none;
	border-radius: 0.375rem;
	font-size: 0.6875rem;
	font-weight: 600;
	transition: all 0.3s ease;
}

.full-report-btn:hover {
	background: #a01828;
	transform: translateX(2px);
}

/* Ссылка матча в таблице событий */
.match-link {
	color: inherit;
	text-decoration: none;
	cursor: pointer;
	transition: color 0.2s ease;
}

.match-link:hover {
	color: var(--red-700);
}

/* Номер игрока в таблице события */
.shirt-number-highlight {
	color: var(--red-700);
}

/* Биография */
.biography-section {
	grid-column: 1 / -1;
	background: #fff;
	border-radius: 1.025rem;
	padding: 35px;	
	box-sizing: border-box;
	box-shadow: 0 0.125rem 0.25rem -2px var(--color-dark-gray)1a, 0 0.25rem 0.375rem -1px var(--color-dark-gray)1a;
}

.biography-text {
	font-size: 0.9375rem;
	line-height: 1.7;
	color: #555;
}

/* ========================================
   STATS TABLE (SEASONS DATA)
   ======================================== */

.stats-table {
	width: 100%;
	border-collapse: collapse;	
}

.stats-table th {
	padding: 1.125rem 0.9375rem;
	text-align: left;
	font-size: 0.75rem;
	font-weight: 700;
	color: var(--gray-600);
	text-transform: uppercase;
	letter-spacing: 1px;
	border-bottom: 0.1875rem solid var(--red-700);
}

.stats-table td {
	padding: 1.125rem 0.9375rem;
	color: var(--gray-900);
	font-size: 0.9375rem;
	border-bottom: 1px solid #f5f5f5;
}

.stats-table tbody tr {
	transition: all 0.2s ease;
}

.stats-table tbody tr:hover {
	background: var(--gray-50);
}

.stats-table tbody tr:last-child td {
	border-bottom: none;
}

.stats-table .year-cell {
	font-weight: 700;
	color: var(--red-700);
	font-size: 1rem;
}

.stats-table .total-row {
	background: linear-gradient(135deg, #fff3f5 0%, #fff 100%);
	font-weight: 700;
}

.stats-table .total-row td {
	color: var(--gray-900);
	padding: 1.375rem 0.9375rem;
	border-top: 0.1875rem solid var(--red-700);
	border-bottom: none;
	font-size: 1rem;
}

.no-stats-message {
	text-align: center;
	padding: 3.125rem 1.875rem;
	color: #999;
	font-size: 1rem;
}

/* ========================================
   ERROR & NOT FOUND STATES
   ======================================== */

/* Страница не найдена */
.player-not-found {
	text-align: center;
	padding: 5rem 2.5rem;
	background: #ffffffcc;
	border-radius: 1.5rem;
}

.player-not-found h1 {
	font-size: 2rem;
	color: #fff;
	margin-bottom: 0.9375rem;
}

.player-not-found p {
	color: #ffffffcc;
	font-size: 1.125rem;
}

/* Пульсирующая тень для маркера позиции */
@keyframes pulse-shadow {
	0%, 100% {
		box-shadow: 0 0.25rem 0.75rem var(--red-700)66, 0 0.125rem 0.25rem #33333333;
	}
	50% {
		box-shadow: 0 0.25rem 1.5rem var(--red-700)b3, 0 0.125rem 0.5rem #4d4d4d4d;
	}
}

/* ========================================
   MOBILE RESPONSIVE - 3 COLUMN STATS BAR
   ======================================== */

/* ========================================
   RESPONSIVE BREAKPOINT: 1024px (TABLETS)
   ======================================== */

@media (max-width: 1024px) {
	h1, h2, h3, h4, h5, h6 {
		text-align: left;
	}

	/* Профиль игрока - адаптация */
	.player-profile-card {
		grid-template-columns: 32% 68%;
		gap: 1rem;
		align-items: start;
	}

	.player-photo-wrapper {
		max-width: 100%;
		align-self: stretch;
		display: flex;
		align-items: center;
		justify-content: center;
	}

	.player-info-section {
		width: 100%;
		padding: 0.625rem;
		gap: 0.5rem;
		height: auto;
	}

	.player-header {
		flex-direction: row;
		gap: 0.375rem;
		margin-bottom: 0.5rem;
	}

	.player-number-box {
		width: 3.5rem;
		height: 3.5rem;
		font-size: 1.5rem;
		flex-shrink: 0;
	}

	.player-name-block {
		flex: 1;
		text-align: left;
	}

	.player-name {
		font-size: 1.625rem;
		margin-bottom: 0.25rem;
	}

	.player-position-tag {
		font-size: 0.75rem;
		padding: 0.25rem 0.75rem;
	}

	.player-stats-grid {
		gap: 0.5rem;
	}

	.stat-box {
		padding: 0.5em;
	}

	.stat-box-label {
		font-size: 0.625rem;
	}

	.stat-box-value {
		font-size: 1rem;
	}

	.custom-season-select-dropdown a {
		font-size: 1.25rem;
		padding: 0.4rem 0.8rem;
	}

	.player-stats-bar-container {
		padding: 0 1.875rem;
		gap: 0.9375rem;
		flex-wrap: wrap;
	}

	.player-stats-bar-item {
		flex: 0 0 calc((100% - 1.875rem) / 3);
		padding: 0.75rem 0;
		gap: 0.15rem;
	}

	.player-stats-bar-item--tournament {
		flex: 0 0 100%;
		margin-bottom: 0.75rem;
	}

	.player-stats-bar-number {
		font-size: 1.5rem;
	}

	.custom-season-select-dropdown a {
		font-size: 1.5rem;
		padding: 0.4rem 0.8rem;
	}

	/* Сетка позиции + матчи */
	.player-sections-grid {
		grid-template-columns: 32% 68%;
		
		width: auto;
		max-width: 100%;
		margin: 0 auto;
	}

	.position-section {
		width: 100%;
	}

	.player-position-marker {
		width: 2rem;
		height: 2rem;
	}

	.marker-number {
		font-size: 1.1rem;
	}

	.player-hero {
		height: auto;
		padding: 1.5625rem 0;
	}

	.recent-matches-section {
		width: 100%;
		box-sizing: border-box;
	}
}

/* ========================================
   RESPONSIVE BREAKPOINT: 768px (SMALL TABLETS)
   ======================================== */

@media (max-width: 768px) {
	h1, h2, h3, h4, h5, h6 {
		text-align: left;
	}

	/* Навигация и контейнер */
	.player-container {
		padding: 0 1.25rem;
		height: auto;
	}

	.content-container {
		padding: 0 1.25rem;		
	}

	/* Профиль игрока - переход на колонку */
	.player-profile-card {
		grid-template-columns: 1fr;
		gap: 1.5rem;
		padding: 0;
		align-items: start;
	}

	.player-photo-wrapper {
		width: 100%;
		max-width: 100%;
		height: auto;
		border-radius: 1.5rem;
	}

	.player-photo-wrapper img {
		height: 100%;
		width: 100%;
	}

	.player-info-section {
		width: 100%;
		margin: 0;
		text-align: left;
		padding: 1.25rem;
		background: #ffffff40;
		border-radius: 0.75rem;
		justify-content: flex-start;
		height: auto;
	}

	.player-header {
		flex-direction: column;
		gap: 0.75rem;
		margin-bottom: 1rem;
	}

	.player-number-box {
		width: 3.5rem;
		height: 3.5rem;
		font-size: 1.5rem;
	}

	.player-name {
		font-size: 1.75rem;
		margin-bottom: 0.5rem;
	}

	.player-position-tag {
		padding: 0.3125rem 0.75rem;
		font-size: 0.75rem;
		width: fit-content;
	}

	/* Статистика характеристик - одна колонка */
	.player-stats-grid {
		grid-template-columns: 1fr 1fr;
		gap: 0.75rem;
	}

	.stat-box {
		padding: 0.625em;
		gap: 0.1875rem;
	}

	.stat-box-label {
		font-size: 0.6875rem;
	}

	.stat-box-value {
		font-size: 1.125rem;
	}

	/* Статистика в шапке - переход на 2 колонки */
	.player-stats-bar-container {
		padding: 0.9375rem;
		gap: 0.625rem;
		flex-wrap: wrap;
	}

	.player-stats-bar-item {
		flex: 0 0 calc((100% - 0.625rem) / 2);
		padding: 0.5rem 0;
		gap: 0.1rem;
	}

	.player-stats-bar-item--tournament {
		flex: 0 0 100%;
		margin-bottom: 0.5rem;
	}

	.player-stats-bar-number {
		font-size: 1.25rem;
	}

	.player-stats-bar-label {
		font-size: 0.8rem;
	}

	.custom-season-select-dropdown a {
		font-size: 1.25rem;	
		padding: 0.2rem 0.8rem;
	}

	/* Характеристики */
	.player-stats-grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 0.625rem;
	}

	.stat-box {
		padding: 0.625rem;
	}

	.stat-box-label {
		font-size: 0.6875rem;
	}

	.stat-box-value {
		font-size: 1.125rem;
	}

	/* Герой */
	.player-hero {
		height: auto;
		padding: 1.5625rem 0;
	}

	/* Главная сетка - позиция и матчи в колонку */
	.player-sections-grid {
		grid-template-columns: 1fr;
		gap: 0.5rem;
		padding: 0;
		align-items: stretch;
	}

	.position-section {
		width: 100%;
		padding: 1.125rem;
		border-radius: 0.75rem;
	}

	.section-title {
		font-size: 1.125rem;
		margin-bottom: 1.25rem;
	}

	.player-position-marker {
		width: 1.75rem;
		height: 1.75rem;
	}

	.marker-number {
		font-size: 1rem;
	}

	.position-label-container {
		gap: 0.625rem;
	}

	.shirt-badge {
		width: 35px;
		height: 35px;
		font-size: 1rem;
	}

	.player-name-label {
		font-size: 0.875rem;
	}

	.position-name-label {
		font-size: 0.6875rem;
	}

	.player-position-label {
		padding: 0.625rem 0.875rem;
		gap: 0.625rem;
		border-radius: 0.375rem;
	}

	/* Таблица - уменьшение текста */
	.matches-table th,
	.matches-table td {
		padding: 0.625rem 0.5rem;
		font-size: 0.75rem;
	}

	.matches-table th {
		font-size: 0.625rem;
		padding: 0.625rem 0.5rem;
	}

	/* Биография и статистика по годам - полная ширина */
	.biography-section,
	.seasons-table-section {
		padding: 1.25rem;
	}

	.biography-text {
		font-size: 0.875rem;
		line-height: 1.6;
	}

	.stats-table th,
	.stats-table td {
		padding: 0.75rem 0.625rem;
		font-size: 0.8125rem;
	}

	.stats-table th {
		font-size: 0.6875rem;
	}
}

/* ========================================
   RESPONSIVE BREAKPOINT: 30rem (MOBILE)
   ======================================== */

@media (max-width: 30rem) {
	h1, h2, h3, h4, h5, h6 {
		text-align: left;
	}

	/* Контейнеры - минимальное расстояние */
	.player-container {
		padding: 0 0.75rem;
		height: auto;
	}

	.content-container {
		padding: 0 0.75rem;
	}

	/* Профиль */
	.player-hero {
		height: auto;
		padding: 0.9375rem 0;
	}

	.player-profile-card {
		gap: 1rem;
		align-items: start;
	}

	.player-photo-wrapper {
		height: auto;
		border-radius: 1rem;
		border: 0.1875rem solid #ffffff26;
	}

	.player-photo-wrapper .no-photo {
		font-size: 5rem;
	}

	.player-info-section {
		padding: 1rem;
		border-radius: 0.625rem;
		gap: 1rem;
		height: auto;
	}

	.player-photo-wrapper--placeholder {
		box-shadow: none;
	}

	.player-number-box {
		width: 3rem;
		height: 3rem;
		font-size: 1.25rem;
	}

	.player-header {
		flex-direction: column;
		gap: 0.5rem;
		margin-bottom: 0.75rem;
	}

	.player-name {
		font-size: 1.5rem;
		margin-bottom: 0.375rem;
	}

	.player-position-tag {
		padding: 0.25rem 0.625rem;
		font-size: 0.6875rem;
		border-radius: 1.25rem;
	}

	/* Характеристики */
	.player-stats-grid {
		grid-template-columns: 1fr;
		gap: 0.5rem;
	}

	.stat-box {
		padding: 0.5em;
		border-radius: 0.5rem;
		gap: 0.125rem;
	}

	.stat-box-label {
		font-size: 0.6875rem;
		line-height: 1.3;
	}

	.stat-box-value {
		font-size: 1rem;
	}

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

	/* Полоса статистики */
	.player-stats-bar {
		border-bottom: 1px solid var(--gray-200);
	}

	.player-stats-bar-container {
		padding: 0.625rem;
		gap: 0.5rem;
		flex-wrap: wrap;
	}

	.player-stats-bar-item {
		flex: 0 0 calc((100% - 0.5rem) / 2);
		padding: 0.4rem 0;
		gap: 0.08rem;
		align-items: flex-start;
	}

	.player-stats-bar-item--tournament {
		flex: 0 0 100%;
		margin-bottom: 0.4rem;
	}

	.player-stats-bar-number {
		font-size: 1.25rem;
	}

	.player-stats-bar-label {
		font-size: 0.75rem;
		line-height: 1.2;
	}

	/* Селектор турнира */
	.custom-season-select-dropdown a {
		font-size: 1.25rem;
		padding: 0.2rem 0.8rem;
	}

	.custom-season-select-trigger {
		font-size: 1.25rem;
	}

	/* Основная сетка - все в колонку */
	.player-sections-grid {
		grid-template-columns: 1fr;
		gap: 0.5rem;
		align-items: stretch;
	}

	.position-section {
		padding: 1rem;
		border-radius: 0.625rem;
	}

	.section-title {
		font-size: 1rem;
		margin-bottom: 1rem;
		padding-left: 0.75rem;
	}

	.section-title svg {
		width: 1.125rem;
		height: 1.125rem;
	}

	.field-container {
		gap: 0.75rem;
	}

	.player-position-marker {
		width: 1.5rem;
		height: 1.5rem;
	}

	.marker-number {
		font-size: 0.9rem;
	}

	.player-position-label {
		padding: 0.5rem 0.75rem;
		gap: 0.5rem;
		border-radius: 0.375rem;
		margin-top: 0.625rem;
	}

	.position-label-container {
		gap: 0.5rem;
	}

	.shirt-badge {
		width: 2rem;
		height: 2rem;
		font-size: 0.875rem;
		border: 0.125rem solid #ffffff4d;
	}

	.player-name-label {
		font-size: 0.8125rem;
	}

	.position-name-label {
		font-size: 0.625rem;
	}

	.position-label-icon {
		width: 1.25rem;
		height: 1.25rem;
	}

	.position-label-icon svg {
		width: 1.125rem;
		height: 1.125rem;
	}

	/* Таблица матчей */
	.matches-table {
		margin-top: 0.625rem;
	}

	.matches-table thead {
		display: none;
	}

	.matches-table td {
		display: block;
		padding: 0.25rem 0;
		border-bottom: none;
		text-align: right;
		background-color: var(--gray-50);
		font-size: 0.6875rem;
		color: var(--gray-900);
	}

	.matches-table td::before {
		content: attr(data-label);
		float: left;
		font-weight: 700;
		color: var(--gray-600);
		text-align: left;
	}

	.matches-table tr {
		display: block;
		margin-bottom: 0.375rem;
		border: 1px solid var(--gray-200);
		border-radius: 0.375rem;
		overflow: hidden;
		background: #fff;
		padding: 0.375rem;
	}

	/* Биография и таблица статов - адаптация */
	.biography-section,
	.seasons-table-section {
		padding: 1rem;
		border-radius: 0.625rem;
	}

	.biography-text {
		font-size: 0.8125rem;
		line-height: 1.5;
	}

	.stats-table {
		font-size: 0.75rem;
	}

	.stats-table thead {
		display: none;
	}

	.stats-table tr {
		display: block;
		margin-bottom: 0.375rem;
		border: 1px solid var(--gray-200);
		border-radius: 0.375rem;
		overflow: hidden;
		background: #fff;
		padding: 0.375rem;
	}

	.stats-table td {
		display: block;
		padding: 0.25rem 0;
		border-bottom: none;
		text-align: right;
		background-color: var(--gray-50);
		font-size: 0.6875rem;
		color: var(--gray-900);
	}

	.stats-table td::before {
		content: attr(data-label);
		float: left;
		font-weight: 700;
		color: var(--gray-600);
		text-align: left;
		margin-right: 0.625rem;
	}

	.stats-table td:last-child {
		border-bottom: none;
		padding-bottom: 0.5rem;
	}

	.stats-table th,
	.stats-table td {
		padding: 0.625rem 0.5rem;
		font-size: 0.75rem;
	}

	.stats-table th {
		font-size: 0.625rem;
		padding: 0.5rem 0.375rem;
	}

	.stats-table .year-cell {
		font-size: 0.875rem;
	}

	/* Кнопка разворота */
	.toggle-matches-btn {
		padding: 0.625rem 0.75rem;
		font-size: 0.8125rem;
		border-radius: 0.375rem;
		margin-top: 0.625rem;
	}

	/* Карточки статистики */
	.stat-card {
		padding: 0.9375rem 0.75rem;
	}

	.stat-card-value {
		font-size: 1.75rem;
	}

	.stat-card-label {
		font-size: 0.625rem;
	}

	/* Сообщение об ошибке */
	.player-not-found {
		padding: 2.5rem 1.25rem;
		border-radius: 1rem;
	}

	.player-not-found h1 {
		font-size: 2rem;
	}

	.player-not-found p {
		font-size: 0.875rem;
	}
}



