/* Extracted from front-page.php <style>. */
body {
		/* 使用 clip 完美隐藏横向滚动条，且绝对不破坏 fixed/sticky 导航栏 */
		overflow-x: clip !important;
	}
	/* 强制侧边栏使用 Flex 布局并统一下方间距为 16px */
	.hcm-home-container .hcm-left-sidebar,
	.hcm-home-container .hcm-right-sidebar {
		display: flex !important;
		flex-direction: column !important;
		gap: 16px !important;
	}
	/* 抹除所有部件自带的各种乱七八糟的 margin */
	.hcm-home-container .hcm-sidebar-widget {
		margin-bottom: 0 !important;
		margin-top: 0 !important;
	}
	/* 右侧迷你积分榜轮播 */
	.hcm-mini-standings-widget {
		background: #fff;
		border-radius: 12px;
		border: 1px solid #eaeaea;
		padding: 0 0 10px;
		overflow: hidden;
	}
	.hcm-mini-stand-header {
		padding: 10px 12px 8px;
	}
	.hcm-mini-stand-controls {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 8px;
		padding: 0 4px 10px;
	}
	.hcm-mini-stand-heading {
		display: flex;
		justify-content: space-between;
		align-items: center;
		width: 100%;
		box-sizing: border-box;
		padding: 12px 16px;
		border-radius: 8px;
		text-decoration: none;
		color: inherit;
		cursor: pointer;
		background: transparent;
	}
	.hcm-mini-stand-heading__text {
		flex: 1;
		min-width: 0;
		margin-right: 12px;
		transition: opacity 0.2s ease;
	}
	.hcm-mini-stand-heading__name {
		display: block;
		font-size: 15px;
		font-weight: 700;
		color: #111827;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
		line-height: 1.25;
	}
	.hcm-mini-stand-heading__country {
		display: block;
		margin-top: 2px;
		font-size: 12px;
		font-weight: 500;
		color: #6b7280;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
		line-height: 1.25;
	}
	.hcm-mini-stand-heading__logo-ring {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		flex-shrink: 0;
		width: 36px;
		height: 36px;
		border: 1px solid #eaeaea;
		border-radius: 50%;
		padding: 4px;
		transition: opacity 0.2s ease;
	}
	.hcm-mini-stand-heading__logo-ring img {
		width: 24px;
		height: 24px;
		object-fit: contain;
		display: block;
	}
	@media (hover: hover) and (pointer: fine) {
		.hcm-mini-stand-heading:hover .hcm-mini-stand-heading__text,
		.hcm-mini-stand-heading:hover .hcm-mini-stand-heading__logo-ring {
			opacity: 0.45;
		}
	}
	@media (hover: none) and (pointer: coarse) {
		.hcm-mini-stand-heading:active .hcm-mini-stand-heading__text,
		.hcm-mini-stand-heading:active .hcm-mini-stand-heading__logo-ring {
			opacity: 0.45;
		}
	}
	.hcm-mini-stand-dots {
		flex: 1;
		display: flex;
		justify-content: center;
		align-items: center;
		gap: 6px;
		padding: 0;
		min-width: 0;
	}
	.hcm-mini-stand-dot {
		width: 6px;
		height: 6px;
		border-radius: 50%;
		background-color: #d1d5db;
		border: none;
		padding: 0;
		cursor: pointer;
		transition: background-color 0.2s ease, transform 0.2s ease;
	}
	.hcm-mini-stand-dot.is-active {
		background-color: #111827;
		transform: scale(1.15);
	}
	.hcm-mini-stand-panels {
		position: relative;
		min-height: 220px;
	}
	.hcm-mini-stand-slide {
		position: absolute;
		left: 0;
		right: 0;
		top: 0;
		opacity: 0;
		visibility: hidden;
		transition: opacity 0.25s ease, visibility 0.25s ease;
		pointer-events: none;
	}
	.hcm-mini-stand-slide.is-active {
		position: relative;
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
	}
	.hcm-mini-stand-table-wrap {
		padding: 0 8px;
	}
	.hcm-mini-stand-table {
		width: 100%;
		border-collapse: collapse;
		font-size: 12px;
		color: #374151;
	}
	.hcm-mini-stand-table th {
		text-align: left;
		font-weight: 600;
		color: #6b7280;
		padding: 6px 4px;
		border: none;
	}
	.hcm-mini-stand-table thead tr {
		border-bottom: 1px solid rgba(0, 0, 0, 0.05);
	}
	.hcm-mini-stand-table th.hcm-mini-col-num,
	.hcm-mini-stand-table td.hcm-mini-col-num {
		text-align: center;
		width: 28px;
	}
	.hcm-mini-stand-table th.hcm-mini-col-tr,
	.hcm-mini-stand-table td.hcm-mini-col-tr,
	.hcm-mini-stand-table th.hcm-mini-col-hs,
	.hcm-mini-stand-table td.hcm-mini-col-hs,
	.hcm-mini-stand-table th.hcm-mini-col-pts,
	.hcm-mini-stand-table td.hcm-mini-col-pts {
		text-align: center;
		width: 32px;
	}
	.hcm-mini-stand-table td {
		padding: 5px 4px;
		border: none;
		vertical-align: middle;
	}
	.hcm-mini-stand-table td.hcm-mini-col-num {
		position: relative;
		font-weight: 600;
		color: #111827;
	}
	.hcm-mini-stand-table td.hcm-mini-col-num.zone-cl,
	.hcm-mini-stand-table td.hcm-mini-col-num.zone-el,
	.hcm-mini-stand-table td.hcm-mini-col-num.zone-ecl,
	.hcm-mini-stand-table td.hcm-mini-col-num.zone-relegation {
		padding-left: 10px;
	}
	.hcm-mini-stand-table td.hcm-mini-col-num.zone-cl::before,
	.hcm-mini-stand-table td.hcm-mini-col-num.zone-el::before,
	.hcm-mini-stand-table td.hcm-mini-col-num.zone-ecl::before,
	.hcm-mini-stand-table td.hcm-mini-col-num.zone-relegation::before {
		content: '';
		position: absolute;
		left: 0;
		top: 4px;
		bottom: 4px;
		width: 3px;
		border-radius: 2px;
	}
	.hcm-mini-stand-table td.hcm-mini-col-num.zone-cl::before {
		background: #10b981;
	}
	.hcm-mini-stand-table td.hcm-mini-col-num.zone-el::before {
		background: #2563eb;
	}
	.hcm-mini-stand-table td.hcm-mini-col-num.zone-ecl::before {
		background: #0ea5e9;
	}
	.hcm-mini-stand-table td.hcm-mini-col-num.zone-relegation::before {
		background: #ef4444;
	}
	.hcm-mini-stand-team {
		display: flex;
		align-items: center;
		gap: 6px;
		min-width: 0;
	}
	.hcm-mini-stand-team img {
		width: 16px;
		height: 16px;
		object-fit: contain;
		flex-shrink: 0;
		border-radius: 2px;
	}
	.hcm-mini-stand-team span {
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;
	}
	.hcm-mini-stand-empty {
		padding: 24px 12px;
		text-align: center;
		font-size: 12px;
		color: #6b7280;
	}

	/* 左侧边栏卡片（替代内联 style，便于暗色覆盖） */
	.hcm-home-side-card {
		background: #ffffff;
		border-radius: 12px;
		padding: 16px 0;
		border: 1px solid #eaeaea;
	}
	/* 全部联赛：头部贴顶，悬停铺满整行（抵消 sidebar-widget / 卡片上内边距） */
	.hcm-home-container .hcm-all-leagues-widget.hcm-sidebar-widget.hcm-home-side-card {
		padding: 0 !important;
		overflow: hidden;
	}
	.hcm-home-side-card__title {
		padding: 0 16px 12px;
		font-size: 16px;
		font-weight: 700;
		color: #111827;
		margin: 0;
	}
	.hcm-home-side-card__link {
		display: flex;
		align-items: center;
		padding: 10px 16px;
		text-decoration: none;
		color: #111827;
		font-size: 14px;
		font-weight: 500;
	}
	.hcm-home-side-card__link img {
		width: 20px;
		height: 20px;
		object-fit: contain;
		margin-right: 12px;
	}
	.hcm-all-leagues-widget__head {
		padding: 12px 16px;
		display: flex;
		align-items: center;
		border-bottom: 1px solid #f3f4f6;
		border-radius: 12px 12px 0 0;
		box-sizing: border-box;
		width: 100%;
		margin: 0;
		cursor: pointer;
	}
	.hcm-all-leagues-widget.is-collapsed .hcm-all-leagues-widget__head {
		border-radius: 12px;
	}
	.hcm-all-leagues-widget__head-inner {
		display: flex;
		align-items: center;
		gap: 8px;
		min-width: 0;
	}
	.hcm-all-leagues-widget__head-inner .hcm-home-side-card__title {
		padding: 0;
		margin: 0;
	}
	.hcm-all-leagues-widget__toggle-icon {
		display: flex;
		align-items: center;
		flex-shrink: 0;
		color: #888;
		pointer-events: none;
	}
	.hcm-all-leagues-filter-wrap {
		padding: 12px 16px 0;
	}
	.hcm-all-leagues-list {
		display: flex;
		flex-direction: column;
		gap: 4px;
		padding-bottom: 8px;
	}
	.hcm-country-block {
		display: flex;
		flex-direction: column;
	}
	.hcm-country-item {
		display: flex;
		justify-content: space-between;
		align-items: center;
		padding: 4px 12px;
	}
	.hcm-country-item__inner {
		display: flex;
		align-items: center;
		flex-grow: 1;
		min-width: 0;
	}
	.hcm-country-item .hcm-league-toggle-area {
		flex-shrink: 0;
		padding: 0 4px;
		background: transparent !important;
	}
	.hcm-country-block:not(.is-open) .hcm-country-toggle-btn .hcm-toggle-arrow {
		transform: rotate(180deg);
	}
	.hcm-country-toggle-spacer {
		width: 44px;
		flex-shrink: 0;
	}
	.hcm-country-item__flag {
		font-size: 18px;
		margin-right: 12px;
	}
	.hcm-country-item__flag img,
	img.hcm-country-item__flag {
		width: 18px;
		height: 14px;
		object-fit: cover;
		border-radius: 2px;
		display: inline-block;
		vertical-align: middle;
	}
	.hcm-country-item__name {
		font-size: 14px;
		color: #374151;
		font-weight: 500;
	}
	.hcm-league-submenu {
		background: transparent;
		padding: 0 0 4px;
		border-top: none;
	}
	.hcm-league-submenu-item {
		display: flex;
		align-items: center;
		padding: 4px 12px 4px 24px;
		font-size: 14px;
		color: #374151;
		font-weight: 500;
		text-decoration: none;
	}
	.hcm-league-submenu-item img {
		width: 16px;
		height: 16px;
		object-fit: contain;
		margin-right: 8px;
		border-radius: 2px;
	}
	/* 首页暗色模式 */
	:is(html.dark-mode, body.dark-mode) .hcm-mini-standings-widget,
	:is(html.dark-mode, body.dark-mode) .hcm-home-side-card {
		background: var(--hcm-bg-card, #1c1c1c) !important;
		border-color: rgba(255, 255, 255, 0.08) !important;
	}
	:is(html.dark-mode, body.dark-mode) .hcm-home-side-card__title,
	:is(html.dark-mode, body.dark-mode) .hcm-mini-stand-heading__name {
		color: var(--hcm-text-main, #f8fafc) !important;
	}
	:is(html.dark-mode, body.dark-mode) .hcm-mini-stand-heading__country {
		color: var(--hcm-text-muted, #94a3b8) !important;
	}
	:is(html.dark-mode, body.dark-mode) .hcm-mini-stand-heading__logo-ring {
		border-color: rgba(255, 255, 255, 0.15) !important;
	}
	:is(html.dark-mode, body.dark-mode) .hcm-home-side-card__link {
		color: var(--hcm-text-main, #f8fafc) !important;
	}
	:is(html.dark-mode, body.dark-mode) .hcm-all-leagues-widget__head {
		border-bottom-color: rgba(255, 255, 255, 0.08) !important;
	}
	:is(html.dark-mode, body.dark-mode) .hcm-country-item__name {
		color: var(--hcm-text-main, #e2e8f0) !important;
	}
	:is(html.dark-mode, body.dark-mode) .hcm-league-submenu-item {
		color: var(--hcm-text-main, #e2e8f0) !important;
	}
	:is(html.dark-mode, body.dark-mode) .hcm-mini-stand-table {
		color: var(--hcm-text-muted, #94a3b8) !important;
	}
	:is(html.dark-mode, body.dark-mode) .hcm-mini-stand-table th {
		color: var(--hcm-text-muted, #94a3b8) !important;
	}
	:is(html.dark-mode, body.dark-mode) .hcm-mini-stand-table thead tr {
		border-bottom-color: rgba(255, 255, 255, 0.05) !important;
	}
	:is(html.dark-mode, body.dark-mode) .hcm-mini-stand-table td {
		border: none !important;
	}
	:is(html.dark-mode, body.dark-mode) .hcm-mini-stand-table td.hcm-mini-col-num {
		color: var(--hcm-text-main, #f8fafc) !important;
	}
	:is(html.dark-mode, body.dark-mode) .hcm-mini-stand-dot {
		background-color: rgba(255, 255, 255, 0.25) !important;
	}
	:is(html.dark-mode, body.dark-mode) .hcm-mini-stand-dot.is-active {
		background-color: var(--hcm-text-main, #f8fafc) !important;
	}
	:is(html.dark-mode, body.dark-mode) .hcm-mini-stand-empty {
		color: var(--hcm-text-muted, #94a3b8) !important;
	}

/* Extracted from front-page.php inline main layout override. */
/* 1. 强制抹除当前页面主容器的顶部隐形留白 + 解除主题外层限宽 */
		main,
		.site-main,
		.site-content,
		#primary {
			max-width: 100% !important;
			padding-left: 0 !important;
			padding-right: 0 !important;
			padding-top: 0 !important;
			margin-top: 0 !important;
		}

		/* 强制抹除三栏网格容器的自带顶部间距；拓宽版心 */
		.hcm-home-container {
			/* 1. 重新启用动态越狱：最大宽度锁死在老板满意的 1400px */
			width: min(96vw, 1400px) !important;
			max-width: none !important;

			/* 2. 动态计算居中：50vw 是屏幕中心，700px 是 1400px 的一半 */
			margin-left: calc(50% - min(48vw, 700px)) !important;

			/* 3. 导航栏与内容区间距（跑马灯下线后恢复） */
			margin-top: 0 !important;
			padding-top: 20px !important;

		/* 4. 维持刚刚调好的比例 */
		grid-template-columns: 310px minmax(0, 1fr) 310px !important;
	}

/* Home schedule LIVE skeleton (Phase 2) */
@keyframes hcm-live-skeleton-pulse {
	0%,
	100% {
		opacity: 1;
	}
	50% {
		opacity: 0.45;
	}
}

.hcm-live-skeleton-pulse,
.match-center-data.hcm-live-skeleton.is-hcm-live-empty {
	animation: hcm-live-skeleton-pulse 1.4s ease-in-out infinite;
}

.match-center-data.hcm-live-skeleton.is-hcm-live-empty {
	color: var(--hcm-text-muted, #888);
}
