/* =========================================================
   ELDENRO - PvP Ranking Theme Fixed
========================================================= */

@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400;600;700&family=Inter:wght@300;400;500;600;700&display=swap');

:root{
	--elden-gold:#d4b06a;
	--elden-gold-2:#f1d991;
	--elden-bg:#070709;
	--elden-panel:rgba(14,14,18,.94);
	--elden-panel-2:rgba(24,22,24,.92);
	--elden-border:rgba(212,176,106,.24);
	--elden-text:#e8dcc6;
	--elden-sub:#a89f8f;
	--elden-red:#d56b6b;
	--elden-green:#8ee6a5;
	--elden-blue:#8fd9ff;
}

body{
	background:
		radial-gradient(circle at top, rgba(212,176,106,.10), transparent 34%),
		linear-gradient(180deg,#09090b,#050506);
	color:var(--elden-text);
	font-family:'Inter',sans-serif;
}

.eld-rank-wrap{
	max-width:1200px;
	margin:32px auto;
	padding:0 18px;
	box-sizing:border-box;
}

.eld-rank-head{
	position:relative;
	margin-bottom:28px;
	padding:34px;
	border:1px solid var(--elden-border);
	border-radius:24px;
	background:
		linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.015)),
		var(--elden-panel);
	box-shadow:0 0 45px rgba(0,0,0,.45), inset 0 0 60px rgba(212,176,106,.035);
	overflow:hidden;
}

.eld-rank-head:before{
	content:"";
	position:absolute;
	inset:0;
	background:radial-gradient(circle at 18% 0%,rgba(212,176,106,.14),transparent 35%);
	pointer-events:none;
}

.eld-rank-kicker{
	position:relative;
	font-family:'Cinzel',serif;
	font-size:12px;
	letter-spacing:4px;
	text-transform:uppercase;
	color:var(--elden-sub);
}

.eld-rank-title{
	position:relative;
	margin:6px 0 8px;
	font-family:'Cinzel',serif;
	font-size:44px;
	line-height:1;
	color:var(--elden-gold);
	text-shadow:0 0 18px rgba(212,176,106,.35);
}

.eld-rank-sub{
	position:relative;
	color:var(--elden-sub);
	font-size:14px;
}

/* Filter */

.eld-rank-filter{
	position:relative;
	margin-top:24px;
}

.eld-filter-row{
	display:flex;
	justify-content:space-between;
	align-items:end;
	gap:18px;
	flex-wrap:wrap;
}

.eld-filter-field{
	min-width:260px;
}

.eld-filter-label{
	display:block;
	margin-bottom:8px;
	font-size:12px;
	text-transform:uppercase;
	letter-spacing:1.5px;
	color:var(--elden-gold);
}

.eld-select{
	position:relative;
}

.eld-filter-select{
	width:100%;
	height:46px;
	padding:0 42px 0 14px;
	border-radius:14px;
	border:1px solid rgba(212,176,106,.26);
	background:rgba(255,255,255,.045);
	color:#fff;
	outline:none;
}

.eld-select-arrow{
	position:absolute;
	right:14px;
	top:50%;
	transform:translateY(-50%);
	color:var(--elden-gold);
	pointer-events:none;
}

.eld-filter-actions{
	display:flex;
	gap:10px;
}

.eld-btn{
	height:46px;
	padding:0 18px;
	border-radius:14px;
	border:1px solid rgba(212,176,106,.45);
	background:linear-gradient(180deg,rgba(126,91,35,.95),rgba(50,36,20,.95));
	color:#f7e3a3;
	font-weight:700;
	cursor:pointer;
}

.eld-btn.is-ghost{
	background:rgba(255,255,255,.035);
	color:var(--elden-sub);
}

/* Podium */

.eld-podium{
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:22px;
	margin-bottom:30px;
}

.eld-podium-card{
	position:relative;
	border-radius:24px;
	border:1px solid rgba(212,176,106,.22);
	background:
		linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.015)),
		var(--elden-panel-2);
	box-shadow:0 0 35px rgba(0,0,0,.35);
	overflow:hidden;
	transition:.2s ease;
}

.eld-podium-card:hover{
	transform:translateY(-4px);
	border-color:rgba(212,176,106,.48);
	box-shadow:0 0 34px rgba(212,176,106,.12);
}

.eld-podium-card.tier-legend{
	border-color:rgba(241,217,145,.55);
}

.eld-podium-rank{
	padding:16px 18px 0;
	display:flex;
	align-items:center;
	gap:8px;
	font-family:'Cinzel',serif;
	color:var(--elden-gold);
	font-weight:700;
}

.eld-crown{
	font-size:22px;
}

.eld-ranknum{
	font-size:13px;
	text-transform:uppercase;
	letter-spacing:1px;
}

.medal-legend{color:#ffe7a3;}
.medal-silver{color:#d7d7df;}
.medal-bronze{color:#d69a65;}

.eld-podium-body{
	padding:18px;
	display:flex;
	gap:16px;
	align-items:center;
}

.eld-portrait{
	width:120px;
	min-width:120px;
	height:160px;
	display:flex;
	align-items:center;
	justify-content:center;
	border-radius:18px;
	border:1px solid rgba(212,176,106,.18);
	background:radial-gradient(circle at center,rgba(212,176,106,.08),rgba(0,0,0,.18));
	overflow:hidden;
}

.eld-portrait img{
	max-width:100%;
	max-height:100%;
	object-fit:contain;
	filter:drop-shadow(0 0 14px rgba(212,176,106,.25));
}

.eld-portrait.noimg:after{
	content:"No Image";
	font-size:12px;
	color:var(--elden-sub);
}

.eld-podium-main{
	min-width:0;
	flex:1;
}

.eld-name{
	font-size:20px;
	font-weight:800;
	color:#fff;
	word-break:break-word;
}

.eld-name a,
.eld-charname a,
.eld-guild a{
	color:inherit;
	text-decoration:none;
}

.eld-name a:hover,
.eld-charname a:hover,
.eld-guild a:hover{
	color:var(--elden-gold-2);
}

.eld-subline{
	margin-top:8px;
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	gap:8px;
	font-size:13px;
	color:var(--elden-sub);
}

.eld-job,
.eld-class{
	display:inline-flex;
	align-items:center;
	gap:6px;
}

.eld-jobicon{
	width:24px;
	height:24px;
	object-fit:contain;
	vertical-align:middle;
}

.eld-kd{
	margin-top:10px;
	color:var(--elden-gold);
	font-weight:700;
}

.eld-metrics{
	display:grid;
	grid-template-columns:repeat(3,1fr);
	gap:8px;
	margin-top:14px;
}

.eld-m{
	padding:10px;
	border-radius:14px;
	border:1px solid rgba(212,176,106,.14);
	background:rgba(255,255,255,.035);
}

.eld-ml{
	display:flex;
	align-items:center;
	gap:6px;
	font-size:11px;
	color:var(--elden-sub);
	text-transform:uppercase;
}

.eld-ico svg{
	width:16px;
	height:16px;
	color:var(--elden-gold);
}

.eld-mv{
	margin-top:5px;
	font-size:17px;
	font-weight:800;
	color:#fff;
}

.eld-guild{
	margin-top:12px;
	font-size:13px;
	color:#c7b792;
}

.eld-emblem{
	width:24px;
	height:24px;
	object-fit:contain;
	vertical-align:middle;
	margin-right:5px;
}

.eld-podium-foot{
	padding:13px 18px;
	border-top:1px solid rgba(255,255,255,.06);
	background:rgba(0,0,0,.18);
}

.eld-title{
	font-family:'Cinzel',serif;
	color:var(--elden-gold);
	font-size:13px;
}

/* Table */

.eld-table-card{
	border-radius:24px;
	border:1px solid var(--elden-border);
	background:var(--elden-panel);
	box-shadow:0 0 38px rgba(0,0,0,.38);
	overflow:hidden;
}

.eld-table-head{
	padding:20px 22px;
	display:flex;
	justify-content:space-between;
	gap:14px;
	align-items:center;
	border-bottom:1px solid rgba(212,176,106,.18);
}

.eld-table-title{
	font-family:'Cinzel',serif;
	font-size:22px;
	color:var(--elden-gold);
	font-weight:700;
}

.eld-table-note{
	color:var(--elden-sub);
	font-size:13px;
}

.eld-table-scroll{
	width:100%;
	overflow-x:auto;
}

.eld-table{
	width:100%;
	border-collapse:collapse;
	min-width:820px;
}

.eld-table th{
	padding:15px 14px;
	background:linear-gradient(90deg,rgba(212,176,106,.18),rgba(212,176,106,.06));
	color:var(--elden-gold);
	font-size:12px;
	text-transform:uppercase;
	letter-spacing:1px;
	white-space:nowrap;
}

.eld-table td{
	padding:14px;
	border-top:1px solid rgba(255,255,255,.055);
	color:#ddd;
	font-size:14px;
}

.eld-table tbody tr:hover{
	background:rgba(212,176,106,.055);
}

.tc{
	text-align:center;
}

.eld-charcell{
	display:flex;
	align-items:center;
	gap:12px;
}

.eld-rank-badge{
	width:34px;
	height:34px;
	min-width:34px;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	border-radius:12px;
	border:1px solid rgba(212,176,106,.24);
	background:rgba(212,176,106,.08);
	color:var(--elden-gold);
	font-weight:800;
}

.eld-rank-badge.tier-legend{
	background:rgba(255,220,120,.16);
	color:#ffe7a3;
}

.eld-rank-badge.tier-champion{
	color:#d7d7df;
}

.eld-rank-badge.tier-honored{
	color:#d69a65;
}

.eld-charname{
	color:#fff;
	font-weight:800;
}

.eld-na{
	color:#746d63;
	font-style:italic;
}

/* Pagination fallback FluxCP */

.eld-table-card .pages,
.eld-table-card .pagination{
	padding:18px;
	text-align:center;
}

.eld-table-card .pages a,
.eld-table-card .pagination a,
.eld-table-card .pages strong,
.eld-table-card .pagination strong{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-width:36px;
	height:36px;
	margin:3px;
	padding:0 10px;
	border-radius:12px;
	border:1px solid rgba(212,176,106,.18);
	background:rgba(255,255,255,.035);
	color:#ddd;
	text-decoration:none;
}

.eld-table-card .pages strong,
.eld-table-card .pagination strong,
.eld-table-card .pages a:hover,
.eld-table-card .pagination a:hover{
	background:rgba(212,176,106,.15);
	color:#fff;
	border-color:rgba(212,176,106,.45);
}

/* Empty */

.eld-empty{
	padding:28px;
	border-radius:20px;
	border:1px solid var(--elden-border);
	background:var(--elden-panel);
	color:var(--elden-sub);
}

.eld-empty a{
	color:var(--elden-gold);
}

/* Responsive */

@media(max-width:980px){
	.eld-podium{
		grid-template-columns:1fr;
	}

	.eld-rank-title{
		font-size:34px;
	}

	.eld-podium-body{
		align-items:flex-start;
	}

	.eld-portrait{
		width:100px;
		min-width:100px;
		height:135px;
	}
}

@media(max-width:640px){
	.eld-rank-wrap{
		margin:18px auto;
		padding:0 10px;
	}

	.eld-rank-head{
		padding:22px;
	}

	.eld-filter-row,
	.eld-filter-actions{
		width:100%;
	}

	.eld-filter-field,
	.eld-btn{
		width:100%;
	}

	.eld-filter-actions{
		flex-direction:column;
	}

	.eld-podium-body{
		flex-direction:column;
	}

	.eld-portrait{
		width:100%;
		height:170px;
	}

	.eld-metrics{
		grid-template-columns:1fr;
	}

	.dn-sm{
		display:none;
	}
}

@media(max-width:820px){
	.dn-md{
		display:none;
	}
}
/* =========================================================
   EXTRA POLISH
========================================================= */

/* Center single podium card */
.eld-podium:has(.eld-podium-card:only-child){
	display:flex;
	justify-content:center;
}

.eld-podium:has(.eld-podium-card:only-child) .eld-podium-card{
	max-width:520px;
	width:100%;
}

/* Better portrait */
.eld-portrait{
	background:
		radial-gradient(circle at center,
			rgba(212,176,106,.16),
			rgba(0,0,0,.28)
		);
}

.eld-portrait img{
	transform: scale(1.25);
	image-rendering:auto;
}

/* Stronger panel depth */
.eld-podium-card,
.eld-table-card,
.eld-rank-head{
	backdrop-filter: blur(14px);
}

/* More premium table rows */
.eld-table tbody tr{
	transition:
		background .18s ease,
		transform .18s ease;
}

.eld-table tbody tr:hover{
	background: rgba(212,176,106,.07);
	transform: scale(1.002);
}

/* Rank badge glow */
.eld-rank-badge{
	box-shadow:
		inset 0 0 12px rgba(212,176,106,.08),
		0 0 10px rgba(212,176,106,.08);
}

/* Remove ugly default table spacing */
.eld-table td,
.eld-table th{
	position:relative;
}

/* Subtle animated gold glow */
.eld-rank-head::after{
	content:"";
	position:absolute;
	inset:-40%;
	background:
		radial-gradient(circle,
			rgba(212,176,106,.06),
			transparent 55%);
	animation: eldGlow 8s linear infinite;
	pointer-events:none;
}

@keyframes eldGlow{
	from{
		transform:translateX(-10%);
	}
	to{
		transform:translateX(10%);
	}
}

/* Old Flux menu cleanup */
body > div:first-child,
body > table:first-child{
	margin-bottom:18px;
}

a{
	transition: color .18s ease;
}

/* Optional top menu polish */
body > div:first-child a{
	color:#d4b06a !important;
	text-decoration:none;
}

body > div:first-child a:hover{
	color:#ffe7a3 !important;
}
/* =========================================================
   ELDENRO PVP - CINEMATIC BACKGROUND + TOP 1
========================================================= */

.eld-rank-wrap{
	position:relative;
	padding-top:20px;
}

.eld-rank-wrap:before{
	content:"";
	position:absolute;
	inset:-40px -80px;
	background:
		radial-gradient(circle at 20% 10%, rgba(212,176,106,.12), transparent 28%),
		radial-gradient(circle at 80% 35%, rgba(120,80,30,.10), transparent 32%),
		linear-gradient(180deg, rgba(255,255,255,.025), transparent 45%);
	pointer-events:none;
	z-index:-1;
}

.eld-podium-card.tier-legend{
	transform:scale(1.04);
	box-shadow:
		0 0 35px rgba(212,176,106,.18),
		0 0 90px rgba(212,176,106,.08),
		inset 0 0 70px rgba(212,176,106,.045);
}

.eld-podium-card.tier-legend:before{
	content:"";
	position:absolute;
	inset:-2px;
	background:
		radial-gradient(circle at 50% 0%, rgba(255,226,150,.20), transparent 38%);
	pointer-events:none;
}

.eld-podium-card.tier-legend .eld-portrait{
	width:150px;
	min-width:150px;
	height:190px;
	border-color:rgba(241,217,145,.45);
	box-shadow:
		inset 0 0 28px rgba(212,176,106,.10),
		0 0 24px rgba(212,176,106,.14);
}

.eld-podium-card.tier-legend .eld-portrait img{
	transform:scale(1.42);
}

.eld-podium-card.tier-legend .eld-name{
	font-size:24px;
	color:#fff6d6;
	text-shadow:0 0 14px rgba(212,176,106,.35);
}

.eld-podium-card.tier-legend .eld-title{
	color:#ffe7a3;
	text-shadow:0 0 12px rgba(212,176,106,.35);
}

.eld-podium-card.tier-legend .eld-m{
	background:
		linear-gradient(180deg, rgba(212,176,106,.10), rgba(255,255,255,.025));
	border-color:rgba(212,176,106,.25);
}