/* =========================
   Match Points Manager Frontend
   完整整理版
========================= */
@font-face {
	font-family: 'SourceHanRoundedCN';
	src: url('../fonts/source-han-rounded-cn.ttf') format('truetype');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}
/* ===== 滿版背景 ===== */
#top .entry-content .mpm-screen {
	position: relative !important;
	left: 50% !important;
	right: 50% !important;
	margin-left: -50vw !important;
	margin-right: -50vw !important;
	width: 100vw !important;
	max-width: 100vw !important;
	min-height: 100vh !important;
	padding: 40px 20px 80px !important;
	background: url('../images/points-page-bg.jpg') center center / cover no-repeat !important;
	box-sizing: border-box !important;
	clear: both !important;
}

#top .entry-content .mpm-screen__inner {
	width: 100% !important;
	max-width: 860px !important;
	margin: 0 auto !important;
}

/* ===== 面板 ===== */
#top .entry-content .mpm-panel {
	position: relative !important;
	width: 100% !important;
	min-height: 700px !important;
	margin: 0 0 40px 0 !important;
	background: rgba(255, 255, 255, 0.4) !important;
	border: 4px solid #2b3d46 !important;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15) !important;
	overflow: hidden !important;
	box-sizing: border-box !important;
}

/* ===== 背景角色圖 ===== */
#top .entry-content .mpm-panel--player::before {
	content: "" !important;
	position: absolute !important;
	inset: 0 !important;
	background-color: rgba(255, 255, 255, 0.4) !important;
	background-image: url('../images/player-points-character.png') !important;
	background-repeat: no-repeat !important;
	background-position: right -260px bottom -180px !important;
	background-size: 112% auto !important;
	opacity: 1 !important;
	z-index: 1 !important;
}

#top .entry-content .mpm-panel--referee::before {
	content: "" !important;
	position: absolute !important;
	inset: 0 !important;
	background-color: rgba(255, 255, 255, 0.4) !important;
	background-image: url('../images/referee-points-character.png') !important;
	background-repeat: no-repeat !important;
	background-position: right -80px bottom -90px !important;
	background-size: 82% auto !important;
	opacity: 1 !important;
	z-index: 1 !important;
}

#top .entry-content .mpm-panel--rank::before {
	content: "" !important;
	position: absolute !important;
	inset: 0 !important;
	background-color: rgba(255, 255, 255, 0.4) !important;
	background-image: url('../images/rank-points-character.png') !important;
	background-repeat: no-repeat !important;
	background-position: center bottom !important;
	background-size: 108% auto !important;
	opacity: 1 !important;
	z-index: 1 !important;
}

/* ===== 文字層級 ===== */
#top .entry-content .mpm-screen__logo,
#top .entry-content .mpm-screen__heading,
#top .entry-content .mpm-screen__heading *,
#top .entry-content .mpm-section-heading,
#top .entry-content .mpm-section-heading *,
#top .entry-content .mpm-panel__fields,
#top .entry-content .mpm-field-row,
#top .entry-content .mpm-field-label,
#top .entry-content .mpm-field-value,
#top .entry-content .mpm-panel__title,
#top .entry-content .mpm-rank-top-title,
#top .entry-content .mpm-rank-top-star,
#top .entry-content .mpm-rank-bottom,
#top .entry-content .mpm-rank-item,
#top .entry-content .mpm-rank-item__title,
#top .entry-content .mpm-star,
#top .entry-content .mpm-star span {
	position: relative !important;
	z-index: 3 !important;
}

/* ===== Logo / 標題 ===== */
#top .entry-content .mpm-screen__logo {
	font-size: 58px !important;
	font-weight: 900 !important;
	text-align: center !important;
	margin-bottom: 18px !important;
	color: #ffcc66 !important;
	text-shadow:
		-3.3px -3.3px 0 #3a2a22,
		3.3px -3.3px 0 #3a2a22,
		-3.3px 3.3px 0 #3a2a22,
		3.3px 3.3px 0 #3a2a22 !important;
}

#top .entry-content .mpm-screen__heading,
#top .entry-content .mpm-section-heading,
#top .entry-content .mpm-panel__title,
#top .entry-content .mpm-rank-top-title,
#top .entry-content .mpm-rank-item__title {
	font-size: 32px !important;
	font-weight: 900 !important;
	text-align: center !important;
	margin-bottom: 20px !important;
	color: #ffffff !important;
	text-shadow:
		-3.3px -3.3px 0 #24414a,
		3.3px -3.3px 0 #24414a,
		-3.3px 3.3px 0 #24414a,
		3.3px 3.3px 0 #24414a !important;
}

/* ===== 個別標題位置 ===== */
/* 當前點數 / 當前裁判點數 */
#top .entry-content .mpm-panel__title {
	font-size: 58px !important;
	position: relative !important;
	right: 185px !important;
	top: 70px !important;
}

/* 歷史最高排名 */
#top .entry-content .mpm-rank-top-title {
	position: relative !important;
	top: 80px !important;
	left: -265px !important;
}

/* 目前玩家排名 / 目前玩家積分 */
#top .entry-content .mpm-rank-item__title {
	position: relative !important;
	top: 50px !important;
	left: -60px !important;
}

/* ===== 欄位 ===== */
#top .entry-content .mpm-panel__fields {
	padding: 20px !important;
}

#top .entry-content .mpm-field-row {
	margin-bottom: 16px !important;
}

#top .entry-content .mpm-field-label {
	display: block !important;
	margin-bottom: 8px !important;
	font-size: 22px !important;
	font-weight: 900 !important;
	color: #ffffff !important;
	text-shadow:
		-2.3px -2.3px 0 #000,
		2.3px -2.3px 0 #000,
		-2.3px 2.3px 0 #000,
		2.3px 2.3px 0 #000 !important;
}

#top .entry-content .mpm-field-value {
	display: block !important;
	padding: 10px 16px !important;
	border-radius: 12px !important;
	font-size: 22px !important;
	font-weight: 700 !important;
	color: #fff !important;
	background: rgba(47, 57, 61, 0.96) !important;
}

/* ===== 星星區外層 ===== */
#top .entry-content .mpm-panel__star-wrap,
#top .entry-content .mpm-rank-top-star {
	padding: 20px !important;
}

#top .entry-content .mpm-rank-bottom {
	display: flex !important;
	justify-content: space-between !important;
	align-items: flex-start !important;
	gap: 24px !important;
	padding: 20px !important;
	flex-wrap: nowrap !important;
}

#top .entry-content .mpm-rank-item {
	width: calc(50% - 12px) !important;
	min-width: 0 !important;
	text-align: center !important;
}

/* ===== 星星底圖共用 ===== */
#top .entry-content .mpm-star {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

#top .entry-content .mpm-star--gold {
	background: url('../images/star-gold.png') center center / contain no-repeat !important;
}

#top .entry-content .mpm-star--orange {
	background: url('../images/star-orange.png') center center / contain no-repeat !important;
}

/* ===== 星星上的數字共用 ===== */
#top .entry-content .mpm-star span {
	font-family: 'SourceHanRoundedCN', sans-serif !important;
	font-weight: 600 !important;
	font-style: normal !important;
	font-variant-numeric: lining-nums tabular-nums !important;
	line-height: 1 !important;
	color: #ffe11f !important;
	text-shadow:
		-1.8px -1.8px 0 #24414a,
		1.8px -1.8px 0 #24414a,
		-1.8px 1.8px 0 #24414a,
		1.8px 1.8px 0 #24414a,
		0 0 4px rgba(0, 0, 0, 0.12) !important;
}

/* =========================
   五顆星星獨立控制
   之後你只要改這裡就好
========================= */

/* 1. 玩家點數 */
#top .entry-content .mpm-star--player-points {
	width: 440px !important;
	height: 440px !important;
	left: 0 !important;
	top: 0 !important;
}

#top .entry-content .mpm-star--player-points span {
	font-size: 104px !important;
	left: 0 !important;
	top: 0 !important;
}

/* 2. 裁判點數 */
#top .entry-content .mpm-star--referee-points {
	width: 440px !important;
	height: 440px !important;
	left: 0 !important;
	top: 0 !important;
}

#top .entry-content .mpm-star--referee-points span {
	font-size: 104px !important;
	left: 0 !important;
	top: 0 !important;
}

/* 3. 歷史最高排名 */
#top .entry-content .mpm-star--historical-best {
	width: 280px !important;
	height: 240px !important;
	left: 0 !important;
	top: 0 !important;
}

#top .entry-content .mpm-star--historical-best span {
	font-size: 104px !important;
	left: 0 !important;
	top: 0 !important;
}

/* 4. 目前玩家排名 */
#top .entry-content .mpm-star--current-rank {
	width: 280px !important;
	height: 240px !important;
	left: 0 !important;
	top: 0 !important;
}

#top .entry-content .mpm-star--current-rank span {
	font-size: 104px !important;
	left: 0 !important;
	top: 0 !important;
}

/* 5. 目前玩家積分 */
#top .entry-content .mpm-star--current-rank-points {
	width: 280px !important;
	height: 240px !important;
	left: 0 !important;
	top: 0 !important;
}

#top .entry-content .mpm-star--current-rank-points span {
	font-size: 104px !important;
	left: 0 !important;
	top: 0 !important;
}

/* ===== 關掉原本 figure ===== */
#top .entry-content .mpm-panel__figure {
	display: none !important;
}

/* ===== 手機版 ===== */
@media (max-width: 768px) {
	#top .entry-content .mpm-screen {
		min-height: auto !important;
		padding: 20px 12px 40px !important;
	}

	#top .entry-content .mpm-screen__logo {
		font-size: 34px !important;
	}

	#top .entry-content .mpm-panel {
		min-height: 520px !important;
	}

	#top .entry-content .mpm-panel--player::before,
	#top .entry-content .mpm-panel--referee::before {
		background-size: 144% auto !important;
		background-position: center bottom !important;
	}

	#top .entry-content .mpm-rank-bottom {
		flex-wrap: wrap !important;
	}

	#top .entry-content .mpm-rank-item {
		width: 100% !important;
	}

	#top .entry-content .mpm-star--player-points,
	#top .entry-content .mpm-star--referee-points,
	#top .entry-content .mpm-star--historical-best,
	#top .entry-content .mpm-star--current-rank,
	#top .entry-content .mpm-star--current-rank-points {
		width: 170px !important;
		height: 170px !important;
	}

	#top .entry-content .mpm-star--player-points span,
	#top .entry-content .mpm-star--referee-points span,
	#top .entry-content .mpm-star--historical-best span,
	#top .entry-content .mpm-star--current-rank span,
	#top .entry-content .mpm-star--current-rank-points span {
		font-size: 56px !important;
	}
}

/* =========================
   手機版重排優化（2026-03）
========================= */
@media (max-width: 768px) {
	#top .entry-content .mpm-screen {
		left: auto !important;
		right: auto !important;
		margin-left: calc(50% - 50vw) !important;
		margin-right: calc(50% - 50vw) !important;
		min-height: auto !important;
		padding: 20px 14px 36px !important;
	}

	#top .entry-content .mpm-screen__inner {
		max-width: 100% !important;
	}

	#top .entry-content .mpm-screen__logo {
		font-size: 34px !important;
		line-height: 1.15 !important;
		margin-bottom: 10px !important;
		text-shadow:
			-2.3px -2.3px 0 #3a2a22,
			2.3px -2.3px 0 #3a2a22,
			-2.3px 2.3px 0 #3a2a22,
			2.3px 2.3px 0 #3a2a22 !important;
	}

	#top .entry-content .mpm-screen__heading,
	#top .entry-content .mpm-section-heading,
	#top .entry-content .mpm-panel__title,
	#top .entry-content .mpm-rank-top-title,
	#top .entry-content .mpm-rank-item__title {
		font-size: 26px !important;
		line-height: 1.25 !important;
		margin-bottom: 14px !important;
		text-shadow:
			-2.3px -2.3px 0 #24414a,
			2.3px -2.3px 0 #24414a,
			-2.3px 2.3px 0 #24414a,
			2.3px 2.3px 0 #24414a !important;
	}

	#top .entry-content .mpm-screen__heading-star {
		display: inline-block !important;
		margin: 0 6px !important;
	}

	#top .entry-content .mpm-panel {
		display: flex !important;
		flex-direction: column !important;
		align-items: stretch !important;
		min-height: 0 !important;
		margin-bottom: 28px !important;
		padding: 18px 14px 24px !important;
		border-width: 3px !important;
		border-radius: 18px !important;
		overflow: hidden !important;
	}

	#top .entry-content .mpm-panel--player,
	#top .entry-content .mpm-panel--referee {
		padding-bottom: 210px !important;
	}

	#top .entry-content .mpm-panel--player::before,
	#top .entry-content .mpm-panel--referee::before {
		background-size: min(120%, 500px) auto !important;
		background-position: center bottom -12px !important;
		opacity: 0.6 !important;
	}

	#top .entry-content .mpm-panel--rank {
		padding-bottom: 18px !important;
	}

	#top .entry-content .mpm-panel--rank::before {
		background-position: center bottom !important;
		background-size: 144% auto !important;
		opacity: 0.22 !important;
	}

	#top .entry-content .mpm-panel__fields,
	#top .entry-content .mpm-panel__star-wrap,
	#top .entry-content .mpm-rank-top-star,
	#top .entry-content .mpm-rank-bottom {
		padding: 0 !important;
	}

	#top .entry-content .mpm-field-row {
		margin-bottom: 12px !important;
	}

	#top .entry-content .mpm-field-label {
		font-size: 18px !important;
		margin-bottom: 6px !important;
	}

	#top .entry-content .mpm-field-value {
		padding: 10px 12px !important;
		font-size: 18px !important;
		line-height: 1.35 !important;
		border-radius: 10px !important;
		word-break: break-word !important;
	}

	#top .entry-content .mpm-panel__title,
	#top .entry-content .mpm-rank-top-title,
	#top .entry-content .mpm-rank-item__title {
		right: auto !important;
		left: auto !important;
		top: auto !important;
		bottom: auto !important;
		margin-top: 8px !important;
	}

	#top .entry-content .mpm-panel__title {
		margin-bottom: 12px !important;
	}

	#top .entry-content .mpm-panel__star-wrap,
	#top .entry-content .mpm-rank-top-star {
		display: flex !important;
		justify-content: center !important;
		align-items: center !important;
	}

	#top .entry-content .mpm-rank-top-star {
		margin-bottom: 14px !important;
	}

	#top .entry-content .mpm-rank-bottom {
		display: flex !important;
		flex-direction: column !important;
		gap: 14px !important;
		margin-top: 8px !important;
	}

	#top .entry-content .mpm-rank-item {
		width: 100% !important;
		display: flex !important;
		flex-direction: column !important;
		align-items: center !important;
		justify-content: flex-start !important;
		padding: 0 !important;
		border-radius: 0 !important;
		background: transparent !important;
		backdrop-filter: none !important;
		box-shadow: none !important;
	}

	#top .entry-content .mpm-rank-item__title {
		width: 100% !important;
		text-align: center !important;
		margin-bottom: 10px !important;
	}

	#top .entry-content .mpm-rank-item .mpm-star {
		display: flex !important;
		justify-content: center !important;
		align-items: center !important;
		margin: 0 auto !important;
	}

	#top .entry-content .mpm-star--player-points,
	#top .entry-content .mpm-star--referee-points {
		width: 228px !important;
		height: 228px !important;
	}

	#top .entry-content .mpm-star--historical-best,
	#top .entry-content .mpm-star--current-rank,
	#top .entry-content .mpm-star--current-rank-points {
		width: 170px !important;
		height: 148px !important;
	}

	#top .entry-content .mpm-star--player-points span,
	#top .entry-content .mpm-star--referee-points span {
		font-size: 62px !important;
	}

	#top .entry-content .mpm-star--historical-best span,
	#top .entry-content .mpm-star--current-rank span,
	#top .entry-content .mpm-star--current-rank-points span {
		font-size: 58px !important;
	}
}

@media (max-width: 480px) {
	#top .entry-content .mpm-screen {
		padding: 16px 10px 28px !important;
	}

	#top .entry-content .mpm-screen__logo {
		font-size: 30px !important;
	}

	#top .entry-content .mpm-screen__heading,
	#top .entry-content .mpm-section-heading,
	#top .entry-content .mpm-panel__title,
	#top .entry-content .mpm-rank-top-title,
	#top .entry-content .mpm-rank-item__title {
		font-size: 22px !important;
	}

	#top .entry-content .mpm-panel {
		padding: 16px 12px 20px !important;
		border-radius: 16px !important;
	}

	#top .entry-content .mpm-panel--player,
	#top .entry-content .mpm-panel--referee {
		padding-bottom: 180px !important;
	}

	#top .entry-content .mpm-panel--player::before,
	#top .entry-content .mpm-panel--referee::before {
		background-size: min(120%, 300px) auto !important;
		background-position: center bottom -8px !important;
		opacity: 0.54 !important;
	}

	#top .entry-content .mpm-field-label {
		font-size: 16px !important;
	}

	#top .entry-content .mpm-field-value {
		font-size: 16px !important;
		padding: 9px 10px !important;
	}

	#top .entry-content .mpm-star--player-points,
	#top .entry-content .mpm-star--referee-points {
		width: 196px !important;
		height: 196px !important;
	}

	#top .entry-content .mpm-star--historical-best,
	#top .entry-content .mpm-star--current-rank,
	#top .entry-content .mpm-star--current-rank-points {
		width: 150px !important;
		height: 132px !important;
	}

	#top .entry-content .mpm-star--player-points span,
	#top .entry-content .mpm-star--referee-points span {
		font-size: 52px !important;
	}

	#top .entry-content .mpm-star--historical-best span,
	#top .entry-content .mpm-star--current-rank span,
	#top .entry-content .mpm-star--current-rank-points span {
		font-size: 46px !important;
	}
    #top .entry-content .mpm-panel--player::before {
	background-size: min(147%, 400px) auto !important;
	background-position: center bottom -32px !important;
	opacity: 0.6 !important;
	}
    #top .entry-content .mpm-panel--player::before {
	background-size: min(147%, 350px) auto !important;
	background-position: center bottom -58px !important;
	opacity: 0.54 !important;
	}
    
}
/* ===== 三張人物圖統一半透明 ===== */
#top .entry-content .mpm-panel--player::before,
#top .entry-content .mpm-panel--referee::before,
#top .entry-content .mpm-panel--rank::before {
	opacity: 0.45 !important;
}

/* ===== 平板 / 手機同步半透明 ===== */
@media (max-width: 768px) {
	#top .entry-content .mpm-panel--player::before,
	#top .entry-content .mpm-panel--referee::before,
	#top .entry-content .mpm-panel--rank::before {
		opacity: 0.4 !important;
	}
}

@media (max-width: 480px) {
	#top .entry-content .mpm-panel--player::before,
	#top .entry-content .mpm-panel--referee::before,
	#top .entry-content .mpm-panel--rank::before {
		opacity: 0.35 !important;
	}
}