/*
Theme Name: TopScorer Child
Theme URI: https://topscorer.qodeinteractive.com
Description: A child theme of TopScorer
Author: Mikado Themes
Author URI: https://themeforest.net/user/mikado-themes
Version: 1.0.1
Text Domain: topscorer
Template: topscorer
*/

/* Taste Skill Island Back Button Architecture */
.szlh-back-bar {
	margin-bottom: 24px !important;
	display: block !important;
}

.szlh-back-bar a.szlh-back-link,
a.szlh-back-link {
	display: inline-flex !important;
	align-items: center !important;
	gap: 12px !important;
	background: #002857 !important;
	background: linear-gradient(135deg, #002857 0%, #001938 100%) !important;
	color: #ffffff !important;
	padding: 10px 24px 10px 12px !important;
	border-radius: 30px !important;
	font-weight: 800 !important;
	font-size: 13px !important;
	text-decoration: none !important;
	letter-spacing: 0.6px !important;
	text-transform: uppercase !important;
	transition: all 0.3s cubic-bezier(0.34, 1.56, 0.64, 1) !important;
	border: 1px solid rgba(255, 255, 255, 0.15) !important;
	box-shadow: 0 4px 14px rgba(0, 40, 87, 0.25) !important;
}

.szlh-back-bar a.szlh-back-link .szlh-back-icon-wrap,
a.szlh-back-link .szlh-back-icon-wrap {
	width: 32px !important;
	height: 32px !important;
	background: rgba(255, 255, 255, 0.15) !important;
	border-radius: 50% !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	color: #e5a823 !important;
	transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1), background 0.2s ease, color 0.2s ease !important;
	flex-shrink: 0 !important;
}

.szlh-back-bar a.szlh-back-link .szlh-back-text,
a.szlh-back-link .szlh-back-text {
	color: #ffffff !important;
}

.szlh-back-bar a.szlh-back-link:hover,
a.szlh-back-link:hover {
	background: #003677 !important;
	background: linear-gradient(135deg, #003a80 0%, #002857 100%) !important;
	color: #ffffff !important;
	transform: translateY(-2px) !important;
	box-shadow: 0 8px 24px rgba(0, 40, 87, 0.4) !important;
	border-color: rgba(229, 168, 35, 0.5) !important;
}

.szlh-back-bar a.szlh-back-link:hover .szlh-back-icon-wrap,
a.szlh-back-link:hover .szlh-back-icon-wrap {
	transform: translateX(-4px) !important;
	background: #e5a823 !important;
	color: #001a3a !important;
}

/* Roster Name Alignment & Responsive Wrap */
.szlh-roster-table .szlh-col-name,
.szlh-roster-table th.szlh-col-name,
.szlh-roster-table td.szlh-col-name {
	text-align: left !important;
	min-width: 150px;
}

.szlh-player-name-cell {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: flex-start !important;
	gap: 10px !important;
	text-align: left !important;
	max-width: 100% !important;
	min-width: 0 !important;
}

.szlh-player-name-text {
	white-space: normal !important;
	word-break: break-word !important;
	overflow-wrap: break-word !important;
	min-width: 0 !important;
}

/* Roster Zebra Striping */
.szlh-roster-table tbody tr:nth-child(even) {
	background-color: #f9f9f9 !important;
}

.szlh-roster-table tbody tr:nth-child(odd) {
	background-color: #ffffff !important;
}

.szlh-roster-table tbody tr:hover {
	background-color: #f0f4f9 !important;
}

/* --- Sociálne ikony v mobilnom menu (HK Poprad) --- */

.hk-social-mobile-item {
	list-style: none;
	padding: 20px 0 12px !important;
}

.hk-social-mobile {
	display: flex !important;
	align-items: center;
	justify-content: flex-start;
	gap: 14px;
	flex-wrap: nowrap;
	line-height: 1;
	width: 100%;
	margin: 0;
	padding: 0;
	text-align: left;
}

.hk-social-mobile a {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	float: none !important;
	width: 28px !important;
	height: 28px !important;
	margin: 0 !important;
	padding: 0 !important;
	text-decoration: none;
	border: 0 !important;
}

.hk-social-mobile a span {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: 28px !important;
	height: 28px !important;
	font-size: 34px !important;
	line-height: 1 !important;
	color: #002859 !important;
	transition: color .2s ease;
}

.hk-social-mobile a:hover span {
	color: #001A3D !important;
}

/* Responsive Mobile Year Tabs Bar */
@media (max-width: 768px) {
	.szlh-year-tabs-bar {
		display: flex !important;
		width: 100% !important;
		max-width: 100% !important;
		flex-wrap: nowrap !important;
		overflow-x: auto !important;
		-webkit-overflow-scrolling: touch !important;
		padding: 4px !important;
		margin-bottom: 20px !important;
		border-radius: 24px !important;
		box-sizing: border-box !important;
		scrollbar-width: none !important;
	}

	.szlh-year-tabs-bar::-webkit-scrollbar {
		display: none !important;
	}

	.szlh-year-tab {
		flex: 1 0 auto !important;
		justify-content: center !important;
		white-space: nowrap !important;
		padding: 7px 12px !important;
		font-size: 12px !important;
	}

	.szlh-tab-count {
		padding: 1px 6px !important;
		font-size: 10px !important;
	}
}

/* ==========================================================================
   Desktop Header Logo Enlargement & Overhang (HK Poprad)
   ========================================================================== */
@media screen and (min-width: 1025px) {
	/* Hide sticky header when not actively displayed so its duplicate logo never leaks */
	body:not(.qodef-header--sticky-display) .qodef-header-sticky {
		display: none !important;
	}

	/* Allow logo to overflow the header containers */
	#qodef-page-header {
		overflow: visible !important;
		position: relative !important;
	}

	/* Top area sits behind the overhanging logo */
	#qodef-top-area {
		position: relative !important;
		z-index: 1 !important;
	}

	/* Inner header container raised above top area so logo overlaps it */
	#qodef-page-header-inner,
	.qodef-header-inner,
	.qodef-header-logo {
		overflow: visible !important;
		position: relative !important;
		z-index: 100 !important;
	}

	/* Logo link positioning & width reservation (170px) ONLY in main header */
	#qodef-page-header-inner .qodef-header-logo-link {
		position: relative !important;
		display: inline-flex !important;
		align-items: center !important;
		overflow: visible !important;
		z-index: 1000 !important;
		width: 170px !important;
		height: 70px !important;
		margin-right: 30px !important;
	}

	/* Enlarged Logo Image in Main Header (height: 205px, sticks out top over top-bar & bottom into content) */
	#qodef-page-header-inner .qodef-header-logo-link img.qodef-header-logo-image,
	#qodef-page-header-inner .qodef-header-logo-link img {
		position: absolute !important;
		left: 0 !important;
		top: -28px !important;
		transform: none !important;
		max-height: none !important;
		height: 205px !important;
		width: auto !important;
		max-width: none !important;
		z-index: 1001 !important;
		filter: drop-shadow(0 6px 18px rgba(0, 0, 0, 0.55)) !important;
		transition: transform 0.25s ease, height 0.25s ease !important;
		pointer-events: auto !important;
	}

	#qodef-page-header-inner .qodef-header-logo-link:hover img {
		transform: scale(1.025) !important;
	}

	/* Sticky Header Logo (when scrolling down, keep it clean and compact) */
	.qodef-header-sticky .qodef-header-logo-link {
		height: 70px !important;
		display: inline-flex !important;
		align-items: center !important;
	}

	.qodef-header-sticky .qodef-header-logo-link img {
		max-height: 50px !important;
		height: 50px !important;
		width: auto !important;
		position: static !important;
		transform: none !important;
	}
}

/* ==========================================================================
   Blog List - Uniform Image Proportions & Aspect Ratios
   ========================================================================== */

/* Ensure blog list media wrappers have consistent proportions and clean cover */
.qodef-blog .qodef-e-media-image {
	position: relative !important;
	width: 100% !important;
	overflow: hidden !important;
	aspect-ratio: 16 / 10; /* Default uniform landscape proportion */
	background-color: #111111;
}

.qodef-blog .qodef-e-media-image a {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
}

.qodef-blog .qodef-e-media-image img {
	width: 100% !important;
	height: 100% !important;
	max-height: 100% !important;
	object-fit: cover !important;
	object-position: center !important;
	display: block !important;
	transition: transform 0.4s ease !important;
}

.qodef-blog .qodef-e-inner:hover .qodef-e-media-image img {
	transform: scale(1.05) !important;
}

/* Specific aspect ratios mapped to the "Images Proportion" options in Blog List element */
.qodef-blog .qodef-item--square .qodef-e-media-image,
.qodef-blog .qodef-item--thumbnail .qodef-e-media-image,
.qodef-blog .qodef-item--huge-square .qodef-e-media-image {
	aspect-ratio: 1 / 1 !important;
}

.qodef-blog .qodef-item--landscape .qodef-e-media-image,
.qodef-blog .qodef-item--medium .qodef-e-media-image,
.qodef-blog .qodef-item--large .qodef-e-media-image {
	aspect-ratio: 16 / 10 !important;
}

.qodef-blog .qodef-item--portrait .qodef-e-media-image {
	aspect-ratio: 3 / 4 !important;
}

/* If user explicitly selects 'Original', let it maintain original image dimensions */
.qodef-blog .qodef-item--full .qodef-e-media-image {
	aspect-ratio: auto !important;
}
.qodef-blog .qodef-item--full .qodef-e-media-image img {
	height: auto !important;
}

/* ==========================================================================
   HK Poprad Blog Year Filter Tabs ([hk_blog_roky])
   ========================================================================== */

.hk-blog-year-tabs {
	margin: 0 0 35px 0;
	padding: 0;
	width: 100%;
	clear: both;
}

.hk-year-tabs-inner {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
}

.hk-year-tab {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 9px 22px;
	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.12em;
	color: #d7d6d5 !important;
	background: #25314d;
	border: 1px solid rgba(215, 214, 213, 0.3);
	border-radius: 4px;
	text-decoration: none !important;
	transition: all 0.25s cubic-bezier(0.2, 0.8, 0.2, 1);
	cursor: pointer;
	user-select: none;
	box-shadow: 0 2px 8px rgba(37, 49, 77, 0.25);
}

.hk-year-tab:hover {
	color: #ffffff !important;
	background: #2e3d5e;
	border-color: #6fb2e3;
	box-shadow: 0 4px 14px rgba(111, 178, 227, 0.3);
	transform: translateY(-2px);
}

.hk-year-tab.hk-tab--active {
	color: #25314d !important;
	background: #6fb2e3 !important;
	border-color: #6fb2e3 !important;
	box-shadow: 0 4px 16px rgba(111, 178, 227, 0.45) !important;
	font-weight: 800;
	pointer-events: auto;
}

/* Loading state animation on blog list when switching years */
.qodef-blog.hk-blog--loading {
	opacity: 0.35 !important;
	pointer-events: none !important;
	filter: blur(1px);
	transition: opacity 0.2s ease, filter 0.2s ease !important;
}

.hk-tabs--loading .hk-year-tab {
	cursor: wait !important;
	pointer-events: none !important;
}

@media only screen and (max-width: 680px) {
	.hk-year-tabs-inner {
		gap: 6px;
	}
	.hk-year-tab {
		padding: 7px 15px;
		font-size: 11px;
	}
}

/* ==========================================================================
   Floating Badge Logo Overlapping Footer Top Edge
   ========================================================================== */
#qodef-page-footer {
	position: relative;
	overflow: visible !important;
}

#qodef-page-footer > .hk-footer-badge-logo,
.hk-footer-badge-logo {
	position: absolute !important;
	top: 0 !important;
	left: 50% !important;
	transform: translate(-50%, -50%) !important;
	z-index: 105 !important;
	width: auto !important;
	display: block !important;
	text-align: center !important;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 0 !important;
}

.hk-footer-badge-logo a {
	display: inline-block !important;
	line-height: 0 !important;
	text-decoration: none !important;
	transition: transform 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), filter 0.25s ease !important;
}

.hk-footer-badge-logo a:hover {
	transform: scale(1.06) !important;
}

.hk-footer-badge-logo img {
	width: 140px !important;
	max-width: 140px !important;
	height: auto !important;
	display: block !important;
	margin: 0 auto !important;
	filter: drop-shadow(0 6px 18px rgba(0, 0, 0, 0.35)) !important;
}

@media only screen and (max-width: 1024px) {
	.hk-footer-badge-logo img {
		width: 110px !important;
		max-width: 110px !important;
	}
}

@media only screen and (max-width: 768px) {
	.hk-footer-badge-logo img {
		width: 90px !important;
		max-width: 90px !important;
	}
}

/* ==========================================================================
   Slovak Diacritics Fix (Replace Yantramanav with Roboto)
   Yantramanav lacks proper Slovak caron glyphs (ľ, ť, ď).
   Roboto provides 100% native Latin Extended Slovak support.
   ========================================================================== */
@font-face {
	font-family: 'Yantramanav';
	font-style: normal;
	font-weight: 300;
	font-display: swap;
	src: local('Roboto Light'), local('Roboto-Light'), url('https://fonts.gstatic.com/s/roboto/v51/KFOlCnqEu92Fr1MmSU5fCRc4AMP6lbBP.woff2') format('woff2');
}
@font-face {
	font-family: 'Yantramanav';
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: local('Roboto'), local('Roboto-Regular'), url('https://fonts.gstatic.com/s/roboto/v51/KFOMCnqEu92Fr1ME7kSn66aGLdTylUAMQXC89YmC2DPNWubEbVmaiAr0klQmz24O0g.woff2') format('woff2');
}
@font-face {
	font-family: 'Yantramanav';
	font-style: normal;
	font-weight: 500;
	font-display: swap;
	src: local('Roboto Medium'), local('Roboto-Medium'), url('https://fonts.gstatic.com/s/roboto/v51/KFOlCnqEu92Fr1MmEU9fCRc4AMP6lbBP.woff2') format('woff2');
}
@font-face {
	font-family: 'Yantramanav';
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: local('Roboto Bold'), local('Roboto-Bold'), url('https://fonts.gstatic.com/s/roboto/v51/KFOlCnqEu92Fr1MmWUlfCRc4AMP6lbBP.woff2') format('woff2');
}

body {
	font-size: 16px !important;
	line-height: 1.55em !important;
}

body,
p,
label,
input,
textarea,
select,
.wp-caption,
.gallery-caption,
.qodef-section-title .qodef-m-subtitle,
.qodef-section-title .qodef-m-text,
.qodef-m-subtitle,
.qodef-e-subtitle,
.qodef-e-text,
.qodef-e-excerpt,
.qodef-e-read-more a,
.qodef-e-info {
	font-family: 'Roboto', 'Yantramanav', -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
}

.qodef-section-title .qodef-m-text {
	font-size: 16px !important;
	line-height: 1.55em !important;
}