/**
 * Enterprise rank cards & avatar frames — marketplace ready.
 */

.nx-rank-card {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 0.65rem;
	padding: 0.65rem 0.9rem;
	border-radius: 14px;
	overflow: hidden;
}

.nx-rank-card__frame {
	position: absolute;
	inset: 0;
	border-radius: inherit;
	pointer-events: none;
	opacity: 0.35;
}

.nx-rank-card__icon {
	font-size: 1.35rem;
	line-height: 1;
	z-index: 1;
}

.nx-rank-card__body {
	display: flex;
	flex-direction: column;
	gap: 0.15rem;
	z-index: 1;
}

.nx-rank-card__label {
	font-size: 0.9rem;
}

.nx-rank-card__level {
	font-size: 0.7rem;
	opacity: 0.75;
}

.nx-rank-card__title {
	font-size: 0.65rem;
	opacity: 0.65;
}

.nx-rank-card__coin {
	margin-left: auto;
	z-index: 1;
	font-size: 0.65rem;
}

/* Rank gradients */
.nx-rank--bronze .nx-rank-card__frame,
.nx-frame--bronze { background: linear-gradient(135deg, #cd7f32, #8b5a2b); }
.nx-rank--silver .nx-rank-card__frame,
.nx-frame--silver { background: linear-gradient(135deg, #c0c0c0, #7a7a8c); }
.nx-rank--gold .nx-rank-card__frame,
.nx-frame--gold { background: linear-gradient(135deg, #ffd700, #c9a227); }
.nx-rank--diamond .nx-rank-card__frame,
.nx-frame--diamond { background: linear-gradient(135deg, #7fdbff, #4a90d9); }
.nx-rank--elite .nx-rank-card__frame,
.nx-frame--elite { background: linear-gradient(135deg, #9b59b6, #6c3483); }
.nx-rank--master .nx-rank-card__frame,
.nx-frame--master { background: linear-gradient(135deg, #f1c40f, #e67e22); }
.nx-rank--legend .nx-rank-card__frame,
.nx-frame--legend { background: linear-gradient(135deg, #ff6b6b, #ee5a24); animation: nxRankGlow 2s ease-in-out infinite; }
.nx-rank--mythic .nx-rank-card__frame,
.nx-frame--mythic { background: linear-gradient(135deg, #a29bfe, #6c5ce7, #00cec9); animation: nxRankGlow 1.8s ease-in-out infinite; }

.nx-frame--bronze,
.nx-frame--silver,
.nx-frame--gold,
.nx-frame--diamond,
.nx-frame--elite,
.nx-frame--master,
.nx-frame--legend,
.nx-frame--mythic {
	box-shadow: inset 0 0 0 2px rgba(255,255,255,.25);
	border-radius: 50%;
}

.nx-premium-profile-hero__avatar-wrap.nx-frame--legend,
.nx-premium-profile-hero__avatar-wrap.nx-frame--mythic {
	animation: nxRankGlow 2.2s ease-in-out infinite;
}

@keyframes nxRankGlow {
	0%, 100% { filter: brightness(1); }
	50% { filter: brightness(1.15); }
}

.nx-rank-card--sm {
	padding: 0.45rem 0.65rem;
}

.nx-rank-card--lg {
	padding: 1rem 1.25rem;
}

.nx-rank-card--lg .nx-rank-card__icon {
	font-size: 2rem;
}
