/* =========================================================
 * PVX100 USER PORTAL
 * Brand: Dark Charcoal + Gold + White
 * ========================================================= */


/* =========================================================
 * Brand Variables
 * ========================================================= */

.pvx-user-area {

	--pvx-charcoal: #28282B;
	--pvx-charcoal-light: #35353A;
	--pvx-gold: #C9A227;
	--pvx-gold-light: #E0C45A;
	--pvx-gold-soft: #F8F2DF;

	--pvx-white: #FFFFFF;
	--pvx-background: #F7F7F5;
	--pvx-border: #E7E5DF;

	--pvx-text: #28282B;
	--pvx-text-secondary: #6F6E6A;
	--pvx-text-muted: #999793;

	--pvx-success: #2F8A4C;

	min-height: 100vh;

	background: var(--pvx-background);

	color: var(--pvx-text);

}


/* =========================================================
 * Global
 * ========================================================= */

.pvx-user-area *,
.pvx-user-area *::before,
.pvx-user-area *::after {

	box-sizing: border-box;

}


.pvx-user-area a {

	text-decoration: none;

}


/* =========================================================
 * TOP NAVIGATION
 * ========================================================= */

.pvx-user-navigation {

	position: sticky;

	top: 0;

	z-index: 1000;

	width: 100%;

	background: var(--pvx-charcoal);

	border-bottom: 1px solid rgba(201, 162, 39, .45);

	box-shadow: 0 4px 18px rgba(0, 0, 0, .12);

}


.pvx-user-navigation-inner {

	width: min(1400px, calc(100% - 48px));

	min-height: 78px;

	margin: 0 auto;

	display: flex;

	align-items: center;

	gap: 35px;

}


/* ---------------------------------------------------------
 * Brand
 * --------------------------------------------------------- */

.pvx-user-navigation-brand {

	flex-shrink: 0;

}


.pvx-user-navigation-logo {

	display: flex;

	flex-direction: column;

	gap: 3px;

	color: var(--pvx-white);

}


.pvx-user-navigation-logo:hover {

	color: var(--pvx-white);

}


.pvx-user-navigation-logo-name {

	font-size: 23px;

	font-weight: 800;

	line-height: 1;

	letter-spacing: .5px;

	color: var(--pvx-gold);

}


.pvx-user-navigation-logo-tagline {

	font-size: 10px;

	font-weight: 500;

	line-height: 1.2;

	letter-spacing: .35px;

	color: #D7D7D4;

}


/* ---------------------------------------------------------
 * Navigation Links
 * --------------------------------------------------------- */

.pvx-user-navigation-links {

	display: flex;

	align-items: center;

	gap: 4px;

	margin-left: auto;

}


.pvx-user-navigation-link {

	position: relative;

	display: inline-flex;

	align-items: center;

	justify-content: center;

	min-height: 42px;

	padding: 0 16px;

	border-radius: 7px;

	color: #C9C9C6;

	font-size: 13px;

	font-weight: 600;

	transition:
		background .2s ease,
		color .2s ease;

}


.pvx-user-navigation-link:hover {

	background: rgba(255, 255, 255, .07);

	color: var(--pvx-white);

}


.pvx-user-navigation-link-active {

	background: rgba(201, 162, 39, .14);

	color: var(--pvx-gold-light);

}


.pvx-user-navigation-link-active::after {

	content: "";

	position: absolute;

	left: 14px;

	right: 14px;

	bottom: -1px;

	height: 2px;

	background: var(--pvx-gold);

	border-radius: 2px;

}


/* ---------------------------------------------------------
 * Account
 * --------------------------------------------------------- */

.pvx-user-navigation-account {

	display: flex;

	align-items: center;

	gap: 16px;

	flex-shrink: 0;

}


.pvx-user-navigation-user {

	display: flex;

	flex-direction: column;

	align-items: flex-end;

	gap: 2px;

}


.pvx-user-navigation-user-label {

	font-size: 9px;

	font-weight: 700;

	color: #969690;

	text-transform: uppercase;

	letter-spacing: .7px;

}


.pvx-user-navigation-user-name {

	max-width: 150px;

	overflow: hidden;

	text-overflow: ellipsis;

	white-space: nowrap;

	font-size: 13px;

	font-weight: 700;

	color: var(--pvx-white);

}


.pvx-user-navigation-logout {

	display: inline-flex;

	align-items: center;

	justify-content: center;

	min-height: 37px;

	padding: 0 15px;

	border: 1px solid rgba(201, 162, 39, .65);

	border-radius: 7px;

	color: var(--pvx-gold-light);

	font-size: 12px;

	font-weight: 700;

	transition:
		background .2s ease,
		border-color .2s ease,
		color .2s ease;

}


.pvx-user-navigation-logout:hover {

	background: var(--pvx-gold);

	border-color: var(--pvx-gold);

	color: var(--pvx-charcoal);

}


/* =========================================================
 * MAIN CONTENT
 * ========================================================= */

.pvx-user-area-content {

	width: min(1400px, calc(100% - 48px));

	margin: 0 auto;

	padding: 42px 0 70px;

}


/* =========================================================
 * Dashboard Welcome
 * ========================================================= */

.pvx-dashboard-welcome {
	margin-bottom: 32px;
}


.pvx-dashboard-welcome-heading {
	margin-bottom: 24px;
}


.pvx-dashboard-welcome .pvx-dashboard-eyebrow {
	margin: 0 0 8px;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--pvx-muted);
}


.pvx-dashboard-welcome h1 {
	margin: 0;
	font-size: clamp(28px, 3vw, 38px);
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: -.02em;
	color: var(--pvx-dark);
}


.pvx-dashboard-welcome-description {
	margin: 10px 0 0;
	font-size: 15px;
	line-height: 1.6;
	color: var(--pvx-muted);
}


/* =========================================================
 * Member Identity
 * ========================================================= */

.pvx-dashboard-member-identity {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
}


.pvx-member-identity-item {
	position: relative;
	padding: 20px 22px;
	background: var(--pvx-white);
	border: 1px solid var(--pvx-border);
	border-radius: 14px;
	box-shadow: 0 4px 18px rgba(40, 40, 43, .035);
	transition:
		transform .2s ease,
		box-shadow .2s ease,
		border-color .2s ease;
}


.pvx-member-identity-item:hover {
	transform: translateY(-1px);
	box-shadow: 0 7px 24px rgba(40, 40, 43, .055);
}


.pvx-member-identity-label {
	margin-bottom: 8px;
	font-size: 11px;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: var(--pvx-muted);
}


.pvx-member-identity-value {
	font-size: 17px;
	font-weight: 600;
	line-height: 1.4;
	color: var(--pvx-dark);
}


.pvx-member-referral-id {
	font-family:
		ui-monospace,
		SFMono-Regular,
		Menlo,
		Monaco,
		Consolas,
		"Liberation Mono",
		"Courier New",
		monospace;

	font-size: 16px;
	font-weight: 600;
	letter-spacing: .02em;
}

/* =========================================================
 * Referral ID
 * ========================================================= */

.pvx-member-referral-row {
	display: flex;
	align-items: center;
	gap: 12px;
}


.pvx-member-referral-id {
	flex: 1;
	min-width: 0;
}


.pvx-copy-referral-button {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;

	width: auto;
	min-width: 58px;
	height: 32px;

	padding: 6px 10px;

	border: 1px solid var(--pvx-border);
	border-radius: 7px;

	background: var(--pvx-white);
	color: var(--pvx-dark) !important;

	font-family: inherit;
	font-size: 12px;
	font-weight: 600;
	line-height: 1.2;
	text-align: center;
	white-space: nowrap;

	cursor: pointer;

	opacity: 1;
	visibility: visible;

	transition:
		background-color .2s ease,
		border-color .2s ease,
		color .2s ease;
}

.pvx-copy-referral-button .pvx-copy-referral-text {
	color: inherit !important;
}


.pvx-copy-referral-button:hover {
	background: var(--pvx-white);
	border-color: var(--pvx-border);
	color: var(--pvx-dark);
}


.pvx-copy-referral-button:focus,
.pvx-copy-referral-button:focus-visible {
	outline: none;

	opacity: 1;
	visibility: visible;
}

.pvx-copy-referral-button.is-copied {
	color: #198754 !important;
	border: 1px solid var(--pvx-border);

	opacity: 1;
	visibility: visible;
}

/* =========================================================
 * Mobile
 * ========================================================= */

@media (max-width: 640px) {

	.pvx-dashboard-welcome {
		margin-bottom: 26px;
	}


	.pvx-dashboard-welcome-heading {
		margin-bottom: 20px;
	}


	.pvx-dashboard-welcome h1 {
		font-size: 28px;
	}


	.pvx-dashboard-welcome-description {
		font-size: 14px;
	}


	.pvx-dashboard-member-identity {
		grid-template-columns: 1fr;
		gap: 12px;
	}


	.pvx-member-identity-item {
		padding: 18px 20px;
	}

}


/* =========================================================
 * WALLET OVERVIEW
 * ========================================================= */

.pvx-dashboard-wallet-grid {

	display: grid;

	grid-template-columns: repeat(3, minmax(0, 1fr));

	gap: 18px;

	margin-bottom: 24px;

}


.pvx-wallet-card {

	position: relative;

	padding: 24px;

	background: var(--pvx-white);

	border: 1px solid var(--pvx-border);

	border-radius: 14px;

	box-shadow: 0 4px 16px rgba(40, 40, 43, .055);

	overflow: hidden;

}


.pvx-wallet-card::before {

	content: "";

	position: absolute;

	top: 0;

	left: 0;

	width: 100%;

	height: 3px;

	background: var(--pvx-gold);

}


.pvx-wallet-card-header {

	display: flex;

	align-items: center;

	justify-content: space-between;

	gap: 12px;

}


.pvx-wallet-card-label {

	font-size: 11px;

	font-weight: 800;

	color: var(--pvx-text-secondary);

	text-transform: uppercase;

	letter-spacing: .8px;

}


.pvx-wallet-card-icon {

	display: inline-flex;

	align-items: center;

	justify-content: center;

	width: 35px;

	height: 35px;

	border-radius: 9px;

	background: var(--pvx-gold-soft);

	color: var(--pvx-gold);

	font-size: 15px;

	font-weight: 800;

}


.pvx-wallet-card-balance {

	margin-top: 22px;

	font-size: 30px;

	line-height: 1;

	font-weight: 800;

	letter-spacing: -.8px;

	color: var(--pvx-charcoal);

}


.pvx-wallet-card-footer {

	margin-top: 13px;

	font-size: 12px;

	line-height: 1.5;

	color: var(--pvx-text-muted);

}

/* =========================================================
 * WALLET PAGE
 * ========================================================= */


/* ---------------------------------------------------------
 * Wallet Page Header
 * --------------------------------------------------------- */

.pvx-wallets-page {

	width: 100%;

}


.pvx-wallets-header {

	display: flex;

	align-items: flex-end;

	justify-content: space-between;

	gap: 24px;

	margin-bottom: 24px;

}


.pvx-wallets-title {

	margin: 0;

	font-size: clamp(28px, 4vw, 36px);

	line-height: 1.15;

	font-weight: 800;

	letter-spacing: -.7px;

	color: var(--pvx-charcoal);

}


.pvx-wallets-description {

	margin: 9px 0 0;

	font-size: 14px;

	line-height: 1.5;

	color: var(--pvx-text-secondary);

}


/* ---------------------------------------------------------
 * Wallet Grid
 * --------------------------------------------------------- */

.pvx-wallets-grid {

	display: grid;

	grid-template-columns: repeat(2, minmax(0, 1fr));

	gap: 18px;

}


/* =========================================================
 * MAIN WALLET
 * ========================================================= */

.pvx-main-wallet-card {

	grid-column: 1 / -1;

	padding: 0;

	background: var(--pvx-white);

	border: 1px solid var(--pvx-border);

	border-radius: 16px;

	box-shadow: 0 5px 20px rgba(40, 40, 43, .055);

	overflow: hidden;

}


/* ---------------------------------------------------------
 * Main Wallet Inner Layout
 * --------------------------------------------------------- */

.pvx-main-wallet-content {

	display: flex;

	align-items: center;

	justify-content: space-between;

	gap: 30px;

	padding: 28px 32px;

}


/* ---------------------------------------------------------
 * Main Wallet Information
 * --------------------------------------------------------- */

.pvx-main-wallet-info {

	display: flex;

	flex-direction: column;

	gap: 9px;

	min-width: 0;

}


.pvx-main-wallet-card .pvx-wallet-card-label {

	margin: 0;

	font-size: 10px;

	font-weight: 800;

	line-height: 1.4;

	letter-spacing: 1.4px;

	text-transform: uppercase;

	color: var(--pvx-text-secondary);

}


.pvx-main-wallet-card .pvx-wallet-card-balance {

	margin: 0;

	font-size: 32px;

	line-height: 1.1;

	font-weight: 800;

	letter-spacing: -.8px;

	color: var(--pvx-charcoal);

}


/* ---------------------------------------------------------
 * Main Wallet Action
 * --------------------------------------------------------- */

.pvx-main-wallet-action {

	flex-shrink: 0;

}


.pvx-wallet-add-funds-button {

	display: inline-flex;

	align-items: center;

	justify-content: center;

	gap: 8px;

	min-height: 46px;

	padding: 0 20px;

	background: var(--pvx-charcoal);

	border: 1px solid var(--pvx-gold);

	border-radius: 8px;

	color: var(--pvx-gold-light) !important;

	font-size: 13px;

	font-weight: 800;

	line-height: 1;

	text-decoration: none !important;

	transition:
		transform .2s ease,
		background .2s ease,
		border-color .2s ease,
		color .2s ease,
		box-shadow .2s ease;

}


.pvx-wallet-add-funds-button:hover {

	background: var(--pvx-gold);

	border-color: var(--pvx-gold);

	color: var(--pvx-charcoal) !important;

	transform: translateY(-1px);

	box-shadow: 0 6px 14px rgba(201, 162, 39, .22);

}


.pvx-wallet-add-funds-button:focus {

	outline: none;

	color: var(--pvx-gold-light) !important;

	box-shadow:
		0 0 0 3px rgba(201, 162, 39, .18),
		0 6px 14px rgba(201, 162, 39, .16);

}


/* ---------------------------------------------------------
 * Add Funds Icon
 * --------------------------------------------------------- */

.pvx-add-funds-icon {

	display: inline-flex;

	align-items: center;

	justify-content: center;

	width: 18px;

	height: 18px;

	font-size: 19px;

	font-weight: 400;

	line-height: 1;

}


/* ---------------------------------------------------------
 * Other Wallet Cards
 * --------------------------------------------------------- */

.pvx-wallets-grid .pvx-wallet-card:not(.pvx-main-wallet-card) {

	min-height: 150px;

}


/* =========================================================
 * WALLET PAGE RESPONSIVE
 * ========================================================= */

@media ( max-width: 760px ) {

	.pvx-wallets-header {

		align-items: flex-start;

		flex-direction: column;

		gap: 6px;

		margin-bottom: 20px;

	}


	.pvx-wallets-grid {

		grid-template-columns: 1fr;

	}


	.pvx-main-wallet-card {

		grid-column: auto;

	}


	.pvx-main-wallet-content {

		align-items: stretch;

		flex-direction: column;

		gap: 22px;

		padding: 24px;

	}


	.pvx-main-wallet-card .pvx-wallet-card-balance {

		font-size: 29px;

	}


	.pvx-main-wallet-action {

		width: 100%;

	}


	.pvx-wallet-add-funds-button {

		width: 100%;

	}

}


@media ( max-width: 480px ) {

	.pvx-main-wallet-content {

		padding: 20px;

	}


	.pvx-main-wallet-card .pvx-wallet-card-balance {

		font-size: 27px;

	}

}

/* =========================================================
 * MEMBERSHIP CARD
 * ========================================================= */

.pvx-dashboard-membership-card {

	position: relative;

	padding: 30px;

	margin-bottom: 24px;

	background: var(--pvx-white);

	border: 1px solid var(--pvx-border);

	border-radius: 16px;

	box-shadow: 0 4px 18px rgba(40, 40, 43, .055);

	overflow: hidden;

}


.pvx-dashboard-membership-card::before {

	content: "";

	position: absolute;

	top: 0;

	left: 0;

	width: 100%;

	height: 4px;

	background: linear-gradient(
		90deg,
		var(--pvx-charcoal),
		var(--pvx-gold),
		var(--pvx-charcoal)
	);

}


.pvx-membership-heading h2 {

	margin: 0;

	font-size: 22px;

	font-weight: 800;

	color: var(--pvx-charcoal);

}


/* ---------------------------------------------------------
 * Membership Levels
 * --------------------------------------------------------- */

.pvx-membership-levels {

	display: grid;

	grid-template-columns: repeat(2, minmax(0, 1fr));

	gap: 18px;

	margin-top: 25px;

}


.pvx-membership-level {

	position: relative;

	padding: 25px;

	border-radius: 13px;

	border: 1px solid var(--pvx-border);

	background: #FAFAF8;

}


.pvx-membership-level-current {

	background: var(--pvx-charcoal);

	border-color: var(--pvx-charcoal);

	color: var(--pvx-white);

	box-shadow: inset 0 0 0 1px rgba(201, 162, 39, .25);

}


.pvx-membership-level-next {

	border-color: rgba(201, 162, 39, .45);

	background: var(--pvx-gold-soft);

}


.pvx-membership-level-label {

	display: block;

	margin-bottom: 10px;

	font-size: 10px;

	font-weight: 800;

	text-transform: uppercase;

	letter-spacing: .9px;

	color: var(--pvx-text-muted);

}


.pvx-membership-level-current .pvx-membership-level-label {

	color: #BDBDB8;

}


.pvx-membership-level strong {

	display: block;

	font-size: 28px;

	line-height: 1.1;

	font-weight: 800;

	letter-spacing: -.5px;

	color: var(--pvx-charcoal);

}


.pvx-membership-level-current strong {

	color: var(--pvx-gold-light);

}


.pvx-membership-level-note {

	display: block;

	margin-top: 8px;

	font-size: 12px;

	color: #BDBDB8;

}


.pvx-membership-level-price {

	display: block;

	margin-top: 8px;

	font-size: 13px;

	font-weight: 800;

	color: var(--pvx-charcoal);

}


/* =========================================================
 * MEMBERSHIP PROGRESS
 * ========================================================= */

.pvx-membership-progress {

	margin-top: 30px;

}


.pvx-membership-progress-header {

	display: flex;

	align-items: center;

	justify-content: space-between;

	gap: 20px;

}


.pvx-membership-progress-label {

	font-size: 14px;

	font-weight: 700;

	color: var(--pvx-charcoal);

}


.pvx-membership-progress-header strong {

	font-size: 13px;

	font-weight: 800;

	color: var(--pvx-charcoal);

}


.pvx-membership-progress-bar {

	width: 100%;

	height: 10px;

	margin-top: 12px;

	overflow: hidden;

	background: #EDEBE4;

	border-radius: 99px;

}


.pvx-membership-progress-fill {

	display: block;

	height: 100%;

	background: linear-gradient(
		90deg,
		var(--pvx-charcoal),
		var(--pvx-gold)
	);

	border-radius: inherit;

	transition: width .35s ease;

}


.pvx-membership-progress-footer {

	display: flex;

	justify-content: space-between;

	gap: 15px;

	margin-top: 8px;

	font-size: 11px;

	color: var(--pvx-text-muted);

}


/* =========================================================
 * MEMBERSHIP ACTION
 * ========================================================= */

.pvx-membership-action {

	display: flex;

	justify-content: flex-end;

	margin-top: 25px;

}


.pvx-primary-button,
.pvx-secondary-button {

	display: inline-flex;

	align-items: center;

	justify-content: center;

	min-height: 46px;

	padding: 0 23px;

	border-radius: 8px;

	font-size: 13px;

	font-weight: 800;

	transition:
		transform .2s ease,
		background .2s ease,
		border-color .2s ease,
		color .2s ease,
		box-shadow .2s ease;

}


.pvx-primary-button {

	background: var(--pvx-charcoal);

	border: 1px solid var(--pvx-gold);

	color: var(--pvx-gold-light);

}


.pvx-primary-button:hover {

	background: var(--pvx-gold);

	border-color: var(--pvx-gold);

	color: var(--pvx-charcoal);

	transform: translateY(-1px);

	box-shadow: 0 6px 14px rgba(201, 162, 39, .22);

}


.pvx-secondary-button {

	background: var(--pvx-white);

	border: 1px solid rgba(201, 162, 39, .65);

	color: var(--pvx-charcoal);

}


.pvx-secondary-button:hover {

	background: var(--pvx-gold-soft);

	border-color: var(--pvx-gold);

	color: var(--pvx-charcoal);

}


/* =========================================================
 * MAXIMUM MEMBERSHIP
 * ========================================================= */

.pvx-membership-maximum {

	display: flex;

	flex-direction: column;

	gap: 5px;

	margin-top: 25px;

	padding: 18px;

	background: var(--pvx-gold-soft);

	border: 1px solid rgba(201, 162, 39, .35);

	border-radius: 10px;

}


.pvx-membership-maximum strong {

	font-size: 14px;

	color: var(--pvx-charcoal);

}


.pvx-membership-maximum span {

	font-size: 13px;

	color: var(--pvx-text-secondary);

}


/* =========================================================
 * LOWER DASHBOARD
 * ========================================================= */

.pvx-dashboard-lower-grid {

	display: grid;

	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);

	gap: 24px;

}


.pvx-dashboard-panel {

	background: var(--pvx-white);

	border: 1px solid var(--pvx-border);

	border-radius: 16px;

	box-shadow: 0 4px 18px rgba(40, 40, 43, .05);

	overflow: hidden;

}


.pvx-dashboard-panel-header {

	padding: 25px 26px 18px;

	border-bottom: 1px solid #EEEEEA;

}


.pvx-dashboard-panel-header h2 {

	margin: 0;

	font-size: 19px;

	font-weight: 800;

	color: var(--pvx-charcoal);

}


/* =========================================================
 * ACCOUNT OVERVIEW
 * ========================================================= */

.pvx-account-information {

	padding: 8px 26px 20px;

}


.pvx-account-row {

	display: flex;

	align-items: center;

	justify-content: space-between;

	gap: 20px;

	min-height: 55px;

	border-bottom: 1px solid #F0EFEB;

}


.pvx-account-row:last-child {

	border-bottom: 0;

}


.pvx-account-row span {

	font-size: 13px;

	color: var(--pvx-text-muted);

}


.pvx-account-row strong {

	font-size: 13px;

	font-weight: 700;

	color: var(--pvx-charcoal);

	text-align: right;

}


.pvx-status-active {

	display: inline-flex;

	align-items: center;

	gap: 7px;

	color: var(--pvx-success) !important;

}


.pvx-status-dot {

	width: 7px;

	height: 7px;

	border-radius: 50%;

	background: var(--pvx-success);

	box-shadow: 0 0 0 3px rgba(47, 138, 76, .10);

}


/* =========================================================
 * QUICK ACTIONS
 * ========================================================= */

.pvx-quick-actions {

	display: grid;

	grid-template-columns: repeat(2, minmax(0, 1fr));

	gap: 10px;

	padding: 20px 26px 26px;

}


.pvx-quick-action {

	display: flex;

	align-items: center;

	gap: 10px;

	min-height: 52px;

	padding: 10px 12px;

	background: #FAFAF8;

	border: 1px solid var(--pvx-border);

	border-radius: 9px;

	color: var(--pvx-charcoal);

	font-size: 12px;

	font-weight: 700;

	transition:
		background .2s ease,
		border-color .2s ease,
		transform .2s ease,
		box-shadow .2s ease;

}


.pvx-quick-action:hover {

	background: var(--pvx-gold-soft);

	border-color: rgba(201, 162, 39, .55);

	color: var(--pvx-charcoal);

	transform: translateY(-1px);

	box-shadow: 0 4px 10px rgba(40, 40, 43, .06);

}


.pvx-quick-action-icon {

	display: inline-flex;

	align-items: center;

	justify-content: center;

	flex-shrink: 0;

	width: 30px;

	height: 30px;

	border-radius: 8px;

	background: var(--pvx-charcoal);

	color: var(--pvx-gold-light);

	font-size: 13px;

	font-weight: 800;

}


/* =========================================================
 * RESPONSIVE
 * ========================================================= */

@media ( max-width: 1100px ) {

	.pvx-user-navigation-inner {

		width: min(100% - 32px, 1000px);

		gap: 18px;

	}


	.pvx-user-navigation-link {

		padding: 0 10px;

	}


	.pvx-user-navigation-user {

		display: none;

	}


	.pvx-dashboard-wallet-grid {

		grid-template-columns: 1fr;

	}


	.pvx-dashboard-lower-grid {

		grid-template-columns: 1fr;

	}

}

/* =========================================================
 * Mobile Navigation
 * ========================================================= */

.pvx-user-navigation-toggle {

	display: none;

	width: 42px;

	height: 42px;

	padding: 0;

	margin: 0 0 0 auto;

	align-items: center;

	justify-content: center;

	flex-direction: column;

	gap: 5px;

	background: transparent;

	border: 1px solid rgba(201, 162, 39, .55);

	border-radius: 8px;

	cursor: pointer;

}


.pvx-user-navigation-toggle span {

	display: block;

	width: 20px;

	height: 2px;

	background: var(--pvx-gold-light);

	border-radius: 2px;

	transition:
		transform .2s ease,
		opacity .2s ease;

}


.pvx-user-navigation-toggle.is-open span:nth-child(1) {

	transform: translateY(7px) rotate(45deg);

}


.pvx-user-navigation-toggle.is-open span:nth-child(2) {

	opacity: 0;

}


.pvx-user-navigation-toggle.is-open span:nth-child(3) {

	transform: translateY(-7px) rotate(-45deg);

}


.pvx-user-mobile-menu {

	display: none;

}


.pvx-user-mobile-menu[hidden] {

	display: none;

}


.pvx-user-mobile-link {

	display: flex;

	align-items: center;

	min-height: 46px;

	padding: 0 16px;

	border-top: 1px solid rgba(255, 255, 255, .06);

	color: #C9C9C6;

	font-size: 13px;

	font-weight: 700;

	text-decoration: none;

}


.pvx-user-mobile-link:hover {

	color: var(--pvx-white);

	background: rgba(255, 255, 255, .05);

}


.pvx-user-mobile-link-active {

	color: var(--pvx-gold-light);

	background: rgba(201, 162, 39, .10);

}


.pvx-user-mobile-link-logout {

	color: #D8A0A0;

}

/* =========================================================
 * MOBILE NAVIGATION
 * ========================================================= */

.pvx-user-navigation-toggle {

    display: none;

    width: 42px;
    height: 42px;

    padding: 0;
    margin: 0;

    align-items: center;
    justify-content: center;
    flex-direction: column;

    gap: 5px;

    background: transparent;

    border: 1px solid rgba(201, 162, 39, .55);

    border-radius: 8px;

    cursor: pointer;

}


.pvx-user-navigation-toggle span {

    display: block;

    width: 20px;
    height: 2px;

    background: var(--pvx-gold-light);

    border-radius: 2px;

    transition:
        transform .2s ease,
        opacity .2s ease;

}


.pvx-user-navigation-toggle.is-open span:nth-child(1) {

    transform: translateY(7px) rotate(45deg);

}


.pvx-user-navigation-toggle.is-open span:nth-child(2) {

    opacity: 0;

}


.pvx-user-navigation-toggle.is-open span:nth-child(3) {

    transform: translateY(-7px) rotate(-45deg);

}


.pvx-user-mobile-menu {

    display: none;

}


.pvx-user-mobile-menu[hidden] {

    display: none;

}


.pvx-user-mobile-menu:not([hidden]) {

    display: block;

}


.pvx-user-mobile-link {

    display: flex;

    align-items: center;

    min-height: 46px;

    padding: 0 16px;

    border-top: 1px solid rgba(255, 255, 255, .06);

    color: #C9C9C6;

    font-size: 13px;

    font-weight: 700;

    text-decoration: none;

}


.pvx-user-mobile-link:hover {

    color: var(--pvx-white);

    background: rgba(255, 255, 255, .05);

}


.pvx-user-mobile-link-active {

    color: var(--pvx-gold-light);

    background: rgba(201, 162, 39, .10);

}


.pvx-user-mobile-link-logout {

    color: #D8A0A0;

}


/* =========================================================
 * MOBILE HEADER
 * ========================================================= */

@media ( max-width: 760px ) {

    .pvx-user-navigation-inner {

        width: calc(100% - 28px);

        min-height: 68px;

        display: flex;

        align-items: center;

    }


    /* Hide desktop navigation */

    .pvx-user-navigation-links {

        display: none;

    }


    /* Hide desktop logout button */

    .pvx-user-navigation-account .pvx-user-navigation-logout {

        display: none;

    }


    /* Account container must NOT push the toggle */

    .pvx-user-navigation-account {

        display: contents;

    }


    /* Toggle belongs at the extreme right */

    .pvx-user-navigation-toggle {

        display: inline-flex;

        flex-shrink: 0;

        margin-left: auto;

    }


    .pvx-user-area-content {

        width: calc(100% - 28px);

        padding: 30px 0 50px;

    }


    .pvx-dashboard-welcome h1 {

        font-size: 28px;

    }


    .pvx-dashboard-membership-card {

        padding: 22px;

    }


    .pvx-membership-levels {

        grid-template-columns: 1fr;

    }


    .pvx-membership-action {

        justify-content: stretch;

    }


    .pvx-primary-button,
    .pvx-secondary-button {

        width: 100%;

    }


    .pvx-dashboard-lower-grid {

        gap: 18px;

    }


    .pvx-dashboard-panel-header {

        padding-left: 20px;

        padding-right: 20px;

    }


    .pvx-account-information {

        padding-left: 20px;

        padding-right: 20px;

    }


    .pvx-quick-actions {

        grid-template-columns: 1fr;

        padding-left: 20px;

        padding-right: 20px;

    }

}


@media ( max-width: 480px ) {

	.pvx-user-navigation-logo-name {

		font-size: 20px;

	}


	.pvx-user-navigation-logo-tagline {

		font-size: 9px;

	}


	.pvx-user-navigation-logout {

		min-height: 35px;

		padding: 0 11px;

		font-size: 12px;

	}


	.pvx-wallet-card:not(.pvx-main-wallet-card) {

		padding: 20px;

	}


	.pvx-wallet-card-balance:not(.pvx-main-wallet-card) .pvx-wallet-card-balance {

		font-size: 27px;

	}


	.pvx-membership-progress-header {

		align-items: flex-start;

		flex-direction: column;

		gap: 6px;

	}


	.pvx-membership-progress-footer {

		flex-direction: column;

		gap: 4px;

	} 
}

	/* =========================================================
 * ADD FUNDS
 * PVX100 USDT / BEP-20 Deposit Interface
 * ========================================================= */


/* =========================================================
 * Page
 * ========================================================= */

.pvx-add-funds-page {

	width: 100%;

	max-width: 1100px;

	margin: 0 auto;

}


/* =========================================================
 * Header
 * ========================================================= */

.pvx-add-funds-header {

	display: flex;

	align-items: flex-start;

	justify-content: space-between;

	gap: 30px;

	margin-bottom: 24px;

}


.pvx-add-funds-eyebrow {

	margin-bottom: 7px;

	font-size: 10px;

	font-weight: 800;

	line-height: 1.2;

	color: var(--pvx-gold);

	text-transform: uppercase;

	letter-spacing: 1.4px;

}


.pvx-add-funds-title {

	margin: 0;

	font-size: clamp(28px, 4vw, 38px);

	line-height: 1.15;

	font-weight: 800;

	letter-spacing: -.7px;

	color: var(--pvx-charcoal);

}


.pvx-add-funds-description {

	margin: 9px 0 0;

	font-size: 15px;

	line-height: 1.6;

	color: var(--pvx-text-secondary);

}


/* ---------------------------------------------------------
 * Back Button
 * --------------------------------------------------------- */

.pvx-add-funds-back {

	display: inline-flex;

	align-items: center;

	justify-content: center;

	gap: 8px;

	flex-shrink: 0;

	min-height: 40px;

	padding: 0 14px;

	background: var(--pvx-white);

	border: 1px solid var(--pvx-border);

	border-radius: 8px;

	color: var(--pvx-charcoal);

	font-size: 12px;

	font-weight: 700;

	line-height: 1;

	text-decoration: none;

	transition:
		background .2s ease,
		border-color .2s ease,
		color .2s ease,
		transform .2s ease,
		box-shadow .2s ease;

}


.pvx-add-funds-back:hover {

	background: var(--pvx-gold-soft);

	border-color: rgba(201, 162, 39, .55);

	color: var(--pvx-charcoal);

	transform: translateX(-1px);

	box-shadow: 0 4px 10px rgba(40, 40, 43, .05);

}


/* =========================================================
 * Main Card
 * ========================================================= */

.pvx-add-funds-card {

	background: var(--pvx-white);

	border: 1px solid var(--pvx-border);

	border-radius: 16px;

	box-shadow: 0 5px 22px rgba(40, 40, 43, .055);

	overflow: hidden;

}


/* =========================================================
 * Steps
 * ========================================================= */

.pvx-add-funds-step {

	padding: 30px 32px;

	border-bottom: 1px solid #EEEEEA;

}


.pvx-add-funds-step:last-child {

	border-bottom: 0;

}


/* ---------------------------------------------------------
 * Step Heading
 * --------------------------------------------------------- */

.pvx-add-funds-step-heading {

	display: flex;

	align-items: center;

	gap: 13px;

	margin-bottom: 18px;

}


.pvx-add-funds-step-heading > div {

	min-width: 0;

}


.pvx-add-funds-step-number {

	display: inline-flex;

	align-items: center;

	justify-content: center;

	flex-shrink: 0;

	width: 30px;

	height: 30px;

	border-radius: 50%;

	background: var(--pvx-charcoal);

	color: var(--pvx-gold-light);

	font-size: 12px;

	font-weight: 800;

	line-height: 1;

	box-shadow:
		inset 0 0 0 1px rgba(201, 162, 39, .3),
		0 0 0 4px var(--pvx-gold-soft);

}


.pvx-add-funds-step-heading h2 {

	margin: 0;

	font-size: 16px;

	line-height: 1.3;

	font-weight: 800;

	color: var(--pvx-charcoal);

}


.pvx-add-funds-step-heading p {

	margin: 4px 0 0;

	font-size: 12px;

	line-height: 1.5;

	color: var(--pvx-text-secondary);

}


/* =========================================================
 * Fixed Wallet Selection
 * ========================================================= */

.pvx-add-funds-selection {

	display: flex;

	align-items: center;

	gap: 15px;

	min-height: 76px;

	padding: 14px 17px;

	background: #FAFAF8;

	border: 1px solid var(--pvx-border);

	border-radius: 11px;

}


.pvx-add-funds-selection-fixed {

	cursor: default;

}


/* ---------------------------------------------------------
 * Selection Content
 * --------------------------------------------------------- */

.pvx-add-funds-selection-content {

	display: flex;

	flex-direction: column;

	gap: 4px;

	flex: 1;

	min-width: 0;

}


.pvx-add-funds-selection-content strong {

	font-size: 14px;

	line-height: 1.3;

	font-weight: 800;

	color: var(--pvx-charcoal);

}


.pvx-add-funds-selection-content span {

	font-size: 12px;

	line-height: 1.4;

	color: var(--pvx-text-secondary);

}


/* ---------------------------------------------------------
 * Selected Indicator
 * --------------------------------------------------------- */

.pvx-add-funds-selected {

	display: inline-flex;

	align-items: center;

	gap: 7px;

	flex-shrink: 0;

	font-size: 11px;

	font-weight: 800;

	line-height: 1;

	color: var(--pvx-success);

}


.pvx-add-funds-selected span {

	display: inline-flex;

	align-items: center;

	justify-content: center;

	width: 19px;

	height: 19px;

	border-radius: 50%;

	background: rgba(47, 138, 76, .10);

	font-size: 11px;

	line-height: 1;

}


/* =========================================================
 * Add Funds Icons
 * ========================================================= */


/* ---------------------------------------------------------
 * Wallet Icon
 * --------------------------------------------------------- */

.pvx-add-funds-wallet-icon {

	position: relative;

	display: flex;

	align-items: center;

	justify-content: center;

	flex-shrink: 0;

	width: 40px;

	height: 40px;

	border-radius: 10px;

	background: #EEF1F7;

}


.pvx-add-funds-wallet-icon span {

	position: absolute;

	width: 12px;

	height: 12px;

	border: 2px solid var(--pvx-charcoal);

	border-radius: 50%;

}


.pvx-add-funds-wallet-icon span:nth-child(1) {

	transform: translateX(-7px);

}


.pvx-add-funds-wallet-icon span:nth-child(2) {

	transform: translateX(7px);

}


.pvx-add-funds-wallet-icon span:nth-child(3) {

	width: 8px;

	height: 8px;

	background: var(--pvx-gold);

	border-color: var(--pvx-gold);

	transform: translateY(-1px);

}


/* ---------------------------------------------------------
 * Coin Icon
 * --------------------------------------------------------- */

.pvx-add-funds-coin-icon {

	display: inline-flex;

	align-items: center;

	justify-content: center;

	flex-shrink: 0;

	width: 40px;

	height: 40px;

	border-radius: 50%;

	background: #E8F6EC;

}


.pvx-add-funds-coin-icon span {

	width: 17px;

	height: 17px;

	border-radius: 50%;

	background: #28A745;

	box-shadow:
		0 0 0 4px rgba(40, 167, 69, .10);

}


/* ---------------------------------------------------------
 * Network Icon
 * --------------------------------------------------------- */

.pvx-add-funds-network-icon {

	position: relative;

	display: flex;

	align-items: center;

	justify-content: center;

	flex-shrink: 0;

	width: 40px;

	height: 40px;

	border-radius: 10px;

	background: var(--pvx-gold-soft);

}


.pvx-add-funds-network-icon span {

	position: absolute;

	width: 9px;

	height: 9px;

	border-radius: 50%;

	background: var(--pvx-charcoal);

}


.pvx-add-funds-network-icon span:nth-child(1) {

	transform: translate(-8px, 5px);

}


.pvx-add-funds-network-icon span:nth-child(2) {

	transform: translate(8px, 5px);

}


.pvx-add-funds-network-icon span:nth-child(3) {

	background: var(--pvx-gold);

	transform: translateY(-7px);

}


/* =========================================================
 * Dropdowns
 * ========================================================= */

.pvx-add-funds-dropdown-wrapper {

	width: 100%;

}


.pvx-add-funds-dropdown-label {

	display: block;

	margin-bottom: 8px;

	font-size: 11px;

	font-weight: 800;

	line-height: 1.3;

	color: var(--pvx-text-secondary);

	text-transform: uppercase;

	letter-spacing: .8px;

}


/* ---------------------------------------------------------
 * Dropdown Container
 * --------------------------------------------------------- */

.pvx-add-funds-dropdown {

	position: relative;

	display: flex;

	align-items: center;

	min-height: 58px;

	background: #FAFAF8;

	border: 1px solid var(--pvx-border);

	border-radius: 11px;

	transition:
		border-color .2s ease,
		box-shadow .2s ease,
		background .2s ease;

}


.pvx-add-funds-dropdown:hover {

	border-color: #D9D5C9;

	background: #FCFCFA;

}


/* ---------------------------------------------------------
 * Dropdown Coin / Network Icon Position
 * --------------------------------------------------------- */

.pvx-add-funds-dropdown > .pvx-add-funds-coin-icon,
.pvx-add-funds-dropdown > .pvx-add-funds-network-icon {

	margin-left: 14px;

}


/* ---------------------------------------------------------
 * Select
 * --------------------------------------------------------- */

.pvx-add-funds-select {

	position: relative;

	z-index: 2;

	display: block;

	width: 100%;

	min-height: 56px;

	margin: 0;

	padding: 0 48px 0 13px;

	background: transparent;

	border: 0;

	outline: none;

	color: var(--pvx-charcoal);

	font-family: inherit;

	font-size: 13px;

	font-weight: 700;

	line-height: 1.3;

	cursor: pointer;

	appearance: none;

	-webkit-appearance: none;

}


.pvx-add-funds-select:focus {

	outline: none;

}


/* ---------------------------------------------------------
 * Disabled Options
 * --------------------------------------------------------- */

.pvx-add-funds-select option {

	background: var(--pvx-white);

	color: var(--pvx-charcoal);

	font-family: inherit;

	font-size: 13px;

	font-weight: 600;

}


.pvx-add-funds-select option:disabled {

	color: #A7A5A0;

}


/* ---------------------------------------------------------
 * Dropdown Focus
 * --------------------------------------------------------- */

.pvx-add-funds-dropdown:focus-within {

	border-color: rgba(201, 162, 39, .75);

	box-shadow:
		0 0 0 3px rgba(201, 162, 39, .12);

}


/* ---------------------------------------------------------
 * Dropdown Chevron
 * --------------------------------------------------------- */

.pvx-add-funds-dropdown-chevron {

	position: absolute;

	top: 50%;

	right: 18px;

	z-index: 1;

	width: 9px;

	height: 9px;

	margin-top: -5px;

	border-right: 2px solid var(--pvx-text-secondary);

	border-bottom: 2px solid var(--pvx-text-secondary);

	transform: rotate(45deg);

	pointer-events: none;

}


/* =========================================================
 * Network Warning
 * ========================================================= */

.pvx-add-funds-warning {

	display: flex;

	align-items: flex-start;

	gap: 12px;

	margin-top: 15px;

	padding: 14px 16px;

	background: #FFF9E8;

	border: 1px solid rgba(201, 162, 39, .28);

	border-radius: 10px;

}


/* ---------------------------------------------------------
 * Critical Warning
 * --------------------------------------------------------- */

.pvx-add-funds-warning-danger {

	background: #FFF8E7;

	border-color: rgba(201, 162, 39, .38);

}


/* ---------------------------------------------------------
 * Warning Icon
 * --------------------------------------------------------- */

.pvx-add-funds-warning-icon {

	display: inline-flex;

	align-items: center;

	justify-content: center;

	flex-shrink: 0;

	width: 22px;

	height: 22px;

	border-radius: 50%;

	background: var(--pvx-gold);

	color: var(--pvx-charcoal);

	font-size: 12px;

	font-weight: 900;

	line-height: 1;

}


.pvx-add-funds-warning strong {

	display: block;

	margin-bottom: 3px;

	font-size: 11px;

	font-weight: 800;

	line-height: 1.4;

	color: var(--pvx-charcoal);

	text-transform: uppercase;

	letter-spacing: .5px;

}


.pvx-add-funds-warning p {

	margin: 0;

	font-size: 12px;

	line-height: 1.55;

	color: var(--pvx-text-secondary);

}


/* =========================================================
 * Deposit Step
 * ========================================================= */

.pvx-add-funds-step-address {

	padding-bottom: 34px;

}


/* =========================================================
 * Deposit Route
 * ========================================================= */

.pvx-add-funds-route {

	display: flex;

	align-items: center;

	justify-content: center;

	gap: 18px;

	margin-bottom: 22px;

	padding: 14px 18px;

	background: #FAFAF8;

	border: 1px solid var(--pvx-border);

	border-radius: 11px;

}


.pvx-add-funds-route-item {

	display: flex;

	align-items: center;

	gap: 8px;

	min-width: 0;

}


.pvx-add-funds-route-label {

	font-size: 10px;

	font-weight: 800;

	line-height: 1;

	color: var(--pvx-text-muted);

	text-transform: uppercase;

	letter-spacing: .7px;

}


.pvx-add-funds-route-item strong {

	font-size: 12px;

	font-weight: 800;

	line-height: 1.2;

	color: var(--pvx-charcoal);

}


.pvx-add-funds-route-arrow {

	flex-shrink: 0;

	font-size: 17px;

	font-weight: 600;

	line-height: 1;

	color: var(--pvx-gold);

}


/* =========================================================
 * Deposit Address Card
 * ========================================================= */

.pvx-deposit-address-card {

	display: grid;

	grid-template-columns: 260px minmax(0, 1fr);

	gap: 32px;

	padding: 28px;

	background: #FAFAF8;

	border: 1px solid var(--pvx-border);

	border-radius: 13px;

}


/* =========================================================
 * QR Section
 * ========================================================= */

.pvx-deposit-qr-section {

	display: flex;

	flex-direction: column;

	align-items: center;

	justify-content: center;

	padding-right: 28px;

	border-right: 1px solid var(--pvx-border);

}


.pvx-deposit-qr {

	display: flex;

	align-items: center;

	justify-content: center;

	width: 190px;

	height: 190px;

	padding: 12px;

	background: var(--pvx-white);

	border: 1px solid #DDDAD1;

	border-radius: 12px;

	box-shadow: 0 4px 12px rgba(40, 40, 43, .055);

}


.pvx-deposit-qr img {

	display: block;

	width: 100%;

	height: 100%;

	object-fit: contain;

}


.pvx-deposit-qr-section > p {

	margin: 12px 0 0;

	font-size: 11px;

	font-weight: 700;

	line-height: 1.4;

	color: var(--pvx-text-secondary);

	text-align: center;

}


/* ---------------------------------------------------------
 * Empty QR State
 * --------------------------------------------------------- */

.pvx-deposit-qr-empty {

	flex-direction: column;

	gap: 8px;

	color: var(--pvx-text-muted);

	font-size: 11px;

	font-weight: 700;

	text-align: center;

}


.pvx-deposit-qr-empty-icon {

	font-size: 28px;

	line-height: 1;

	color: var(--pvx-gold);

}


/* =========================================================
 * Deposit Address
 * ========================================================= */

.pvx-deposit-address-section {

	display: flex;

	flex-direction: column;

	justify-content: center;

	min-width: 0;

}


.pvx-deposit-address-label {

	display: block;

	margin-bottom: 10px;

	font-size: 11px;

	font-weight: 800;

	line-height: 1.3;

	color: var(--pvx-text-secondary);

	text-transform: uppercase;

	letter-spacing: .8px;

}


.pvx-deposit-address-row {

	display: flex;

	align-items: stretch;

	gap: 10px;

	min-width: 0;

}


.pvx-deposit-address-row code {

	display: flex;

	align-items: center;

	flex: 1;

	min-width: 0;

	min-height: 52px;

	padding: 12px 14px;

	overflow: hidden;

	background: var(--pvx-white);

	border: 1px solid var(--pvx-border);

	border-radius: 8px;

	color: var(--pvx-charcoal);

	font-family: Consolas, Monaco, monospace;

	font-size: 12px;

	line-height: 1.4;

	word-break: break-all;

}


.pvx-deposit-address-row code.pvx-deposit-address-missing {

	color: var(--pvx-text-muted);

	font-family: inherit;

	font-style: italic;

}


/* =========================================================
 * Copy Address Button
 * ========================================================= */

.pvx-copy-address {

	display: inline-flex;

	align-items: center;

	justify-content: center;

	flex-shrink: 0;

	min-width: 76px;

	min-height: 52px;

	padding: 0 16px;

	background: var(--pvx-charcoal);

	border: 1px solid var(--pvx-charcoal);

	border-radius: 8px;

	color: var(--pvx-gold-light);

	font-family: inherit;

	font-size: 12px;

	font-weight: 800;

	line-height: 1;

	cursor: pointer;

	transition:
		background .2s ease,
		border-color .2s ease,
		color .2s ease,
		transform .2s ease,
		box-shadow .2s ease;

}


.pvx-copy-address:hover {

	background: var(--pvx-gold);

	border-color: var(--pvx-gold);

	color: var(--pvx-charcoal);

	transform: translateY(-1px);

	box-shadow: 0 5px 12px rgba(201, 162, 39, .20);

}


.pvx-copy-address:focus-visible {

	outline: 2px solid var(--pvx-gold);

	outline-offset: 2px;

}


/* ---------------------------------------------------------
 * Copied State
 * --------------------------------------------------------- */

.pvx-copy-address.is-copied {

	background: var(--pvx-success);

	border-color: var(--pvx-success);

	color: var(--pvx-white);

	box-shadow: 0 5px 12px rgba(47, 138, 76, .15);

}


/* =========================================================
 * Important Notice
 * ========================================================= */

.pvx-add-funds-important {

	display: flex;

	align-items: flex-start;

	gap: 12px;

	margin-top: 20px;

	padding: 16px 17px;

	background: var(--pvx-gold-soft);

	border: 1px solid rgba(201, 162, 39, .32);

	border-radius: 10px;

}


.pvx-add-funds-important-icon {

	display: inline-flex;

	align-items: center;

	justify-content: center;

	flex-shrink: 0;

	width: 23px;

	height: 23px;

	margin-top: 1px;

	border-radius: 50%;

	background: var(--pvx-gold);

	color: var(--pvx-charcoal);

	font-size: 12px;

	font-weight: 900;

	line-height: 1;

}


.pvx-add-funds-important strong {

	display: block;

	margin-bottom: 4px;

	font-size: 11px;

	font-weight: 800;

	line-height: 1.4;

	color: var(--pvx-charcoal);

	text-transform: uppercase;

	letter-spacing: .5px;

}


.pvx-add-funds-important p {

	margin: 0;

	font-size: 12px;

	line-height: 1.55;

	color: var(--pvx-text-secondary);

}

/* =========================================================
 * I've Sent Confirmation
 * ========================================================= */

.pvx-add-funds-sent-section {

	display: flex;
	align-items: center;
	justify-content: space-between;

	gap: 24px;

	margin-top: 18px;
	padding: 18px 20px;

	background: var(--pvx-white);

	border: 1px solid var(--pvx-border);
	border-radius: 11px;

}


.pvx-add-funds-sent-content {

	display: flex;
	align-items: flex-start;

	gap: 13px;

	min-width: 0;
	flex: 1;

}


.pvx-add-funds-sent-icon {

	display: inline-flex;
	align-items: center;
	justify-content: center;

	flex-shrink: 0;

	width: 34px;
	height: 34px;

	border-radius: 50%;

	background: var(--pvx-gold-soft);
	border: 1px solid rgba(201, 162, 39, .30);

	color: var(--pvx-gold);

	font-size: 14px;
	font-weight: 900;

}


.pvx-add-funds-sent-content h3 {

	margin: 0 0 4px;

	font-size: 14px;
	line-height: 1.3;

	font-weight: 800;

	color: var(--pvx-charcoal);

}


.pvx-add-funds-sent-content p {

	margin: 0;

	max-width: 650px;

	font-size: 11px;
	line-height: 1.55;

	color: var(--pvx-text-secondary);

}


/* ---------------------------------------------------------
 * I've Sent Button
 * --------------------------------------------------------- */

.pvx-add-funds-ive-sent-button {

	flex-shrink: 0;

	min-width: 145px;

}


.pvx-add-funds-ive-sent-check {

	display: inline-flex;
	align-items: center;
	justify-content: center;

	width: 17px;
	height: 17px;

	margin-right: 5px;

	border-radius: 50%;

	background: rgba(201, 162, 39, .14);

	font-size: 10px;
	font-weight: 900;

}


.pvx-add-funds-ive-sent-button.is-confirmed {

	background: var(--pvx-gold);
	border-color: var(--pvx-gold);

	color: var(--pvx-charcoal);

	cursor: default;

	opacity: 1;

	transform: none;

	box-shadow: none;

}


.pvx-add-funds-ive-sent-button.is-confirmed:hover {

	background: var(--pvx-gold);
	border-color: var(--pvx-gold);

	color: var(--pvx-charcoal);

	transform: none;

	box-shadow: none;

}



/* =========================================================
 * Transaction Reference
 * ========================================================= */

.pvx-add-funds-tx-section {

	margin-top: 14px;
	padding: 20px;

	background: var(--pvx-white);

	border: 1px solid var(--pvx-border);
	border-radius: 11px;

	transition:
		background .2s ease,
		border-color .2s ease,
		box-shadow .2s ease;

}


/* ---------------------------------------------------------
 * Locked State
 * --------------------------------------------------------- */

.pvx-add-funds-tx-section.pvx-add-funds-tx-locked {

	background: #F7F6F3;

	border-color: #E5E3DC;

}


.pvx-add-funds-tx-section.pvx-add-funds-tx-locked
.pvx-add-funds-tx-field label {

	color: var(--pvx-text-muted);

}


/* ---------------------------------------------------------
 * Active State
 * --------------------------------------------------------- */

.pvx-add-funds-tx-section.pvx-add-funds-tx-active {

	background: var(--pvx-white);

	border-color: rgba(201, 162, 39, .40);

	box-shadow:
		0 4px 16px rgba(40, 40, 43, .035);

}


/* =========================================================
 * Transaction Heading
 * ========================================================= */

.pvx-add-funds-tx-heading {

	margin-bottom: 17px;

}


.pvx-add-funds-tx-title-row {

	display: flex;
	align-items: center;

}


.pvx-add-funds-tx-title-row h3 {

	margin: 0;

	font-size: 14px;
	line-height: 1.3;

	font-weight: 800;

	color: var(--pvx-charcoal);

}


.pvx-add-funds-tx-heading > p {

	margin: 6px 0 0;

	font-size: 11px;
	line-height: 1.55;

	color: var(--pvx-text-secondary);

}


/* =========================================================
 * Transaction Field
 * ========================================================= */

.pvx-add-funds-tx-field {

	display: flex;
	flex-direction: column;

	gap: 7px;

}


.pvx-add-funds-tx-field label {

	font-size: 11px;
	font-weight: 800;

	color: var(--pvx-charcoal);

	text-transform: uppercase;
	letter-spacing: .35px;

}


.pvx-add-funds-tx-input {

	display: block;

	width: 100%;
	min-height: 48px;

	padding: 0 13px;

	box-sizing: border-box;

	border: 1px solid var(--pvx-border);
	border-radius: 8px;

	background: var(--pvx-white);

	color: var(--pvx-charcoal);

	font-family: inherit;
	font-size: 12px;

	outline: none;

	transition:
		background .2s ease,
		border-color .2s ease,
		box-shadow .2s ease;

}


.pvx-add-funds-tx-input::placeholder {

	color: var(--pvx-text-muted);

}


.pvx-add-funds-tx-input:focus {

	border-color: rgba(201, 162, 39, .75);

	box-shadow:
		0 0 0 3px rgba(201, 162, 39, .10);

}


.pvx-add-funds-tx-input:disabled {

	background: #ECEBE7;

	border-color: #E0DED7;

	color: var(--pvx-text-muted);

	cursor: not-allowed;

	box-shadow: none;

}


/* =========================================================
 * TXID Help
 * ========================================================= */

.pvx-add-funds-tx-help {

	margin: 0;

	font-size: 10px;
	line-height: 1.5;

	color: var(--pvx-text-muted);

}


/* =========================================================
 * Submit Transaction
 * ========================================================= */

.pvx-add-funds-tx-section
.pvx-add-funds-action {

	display: flex;
	justify-content: flex-end;

	margin-top: 17px;

}


.pvx-add-funds-submit-button {

	min-width: 170px;

}


.pvx-add-funds-submit-button:disabled {

	background: #E7E5DF;

	border-color: #DAD7CF;

	color: #9A978F;

	cursor: not-allowed;

	opacity: 1;

	transform: none;

	box-shadow: none;

}


.pvx-add-funds-submit-button:disabled:hover {

	background: #E7E5DF;

	border-color: #DAD7CF;

	color: #9A978F;

	cursor: not-allowed;

	transform: none;

	box-shadow: none;

}


/* =========================================================
 * TXID Entered
 * ========================================================= */

.pvx-add-funds-tx-section.has-value {

	border-color: rgba(201, 162, 39, .45);

}


.pvx-add-funds-tx-section.has-value
.pvx-add-funds-submit-button:not(:disabled) {

	box-shadow:
		0 5px 14px rgba(201, 162, 39, .15);

}


/* =========================================================
 * Add Funds Responsive
 * ========================================================= */

@media ( max-width: 760px ) {

	.pvx-add-funds-sent-section {

		align-items: stretch;
		flex-direction: column;

		gap: 17px;

	}


	.pvx-add-funds-ive-sent-button {

		width: 100%;

	}


	.pvx-add-funds-tx-section
	.pvx-add-funds-action {

		justify-content: stretch;

	}


	.pvx-add-funds-submit-button {

		width: 100%;

	}

}


@media ( max-width: 480px ) {

	.pvx-add-funds-sent-section {

		padding: 16px;

	}


	.pvx-add-funds-tx-section {

		padding: 16px;

	}


	.pvx-add-funds-tx-input {

		min-height: 46px;

	}

}

/* =========================================================
 * ADD FUNDS RESPONSIVE
 * ========================================================= */


/* ---------------------------------------------------------
 * Tablet / Small Desktop
 * --------------------------------------------------------- */

@media ( max-width: 900px ) {

	.pvx-add-funds-page {

		max-width: none;

	}


	.pvx-deposit-address-card {

		grid-template-columns: 220px minmax(0, 1fr);

		gap: 24px;

		padding: 24px;

	}


	.pvx-deposit-qr-section {

		padding-right: 24px;

	}


	.pvx-deposit-qr {

		width: 175px;

		height: 175px;

	}

}


/* ---------------------------------------------------------
 * Mobile
 * --------------------------------------------------------- */

@media ( max-width: 760px ) {

	.pvx-add-funds-header {

		flex-direction: column;

		gap: 18px;

	}


	.pvx-add-funds-back {

		align-self: flex-start;

	}


	.pvx-add-funds-step {

		padding: 24px 20px;

	}


	.pvx-add-funds-step-heading {

		gap: 11px;

	}


	.pvx-add-funds-step-heading p {

		font-size: 11px;

	}


	.pvx-add-funds-route {

		align-items: stretch;

		flex-direction: column;

		gap: 0;

		padding: 0;

		overflow: hidden;

	}


	.pvx-add-funds-route-item {

		justify-content: space-between;

		min-height: 48px;

		padding: 0 15px;

	}


	.pvx-add-funds-route-arrow {

		display: none;

	}


	.pvx-add-funds-route-item + .pvx-add-funds-route-item {

		border-top: 1px solid var(--pvx-border);

	}


	.pvx-deposit-address-card {

		grid-template-columns: 1fr;

		gap: 25px;

		padding: 20px;

	}


	.pvx-deposit-qr-section {

		padding-right: 0;

		padding-bottom: 25px;

		border-right: 0;

		border-bottom: 1px solid var(--pvx-border);

	}


	.pvx-deposit-address-section {

		width: 100%;

	}


	.pvx-deposit-address-row {

		flex-direction: column;

	}


	.pvx-copy-address {

		width: 100%;

	}


	.pvx-add-funds-tx-section {

		padding: 18px;

	}


	.pvx-add-funds-action {

		align-items: stretch;

		justify-content: stretch;

	}


	.pvx-add-funds-sent-button {

		width: 100%;

	}


	.pvx-add-funds-coming-soon {

		text-align: center;

	}

}


/* ---------------------------------------------------------
 * Small Mobile
 * --------------------------------------------------------- */

@media ( max-width: 600px ) {

	.pvx-add-funds-title {

		font-size: 30px;

	}


	.pvx-add-funds-description {

		font-size: 14px;

	}


	.pvx-add-funds-selection {

		min-height: 70px;

		padding: 12px;

	}


	.pvx-add-funds-selection-content strong {

		font-size: 13px;

	}


	.pvx-add-funds-selection-content span {

		font-size: 11px;

	}


	.pvx-add-funds-selected {

		font-size: 0;

	}


	.pvx-add-funds-selected span {

		font-size: 11px;

	}


	.pvx-add-funds-dropdown {

		min-height: 54px;

	}


	.pvx-add-funds-select {

		min-height: 52px;

		padding-left: 10px;

		font-size: 12px;

	}


	.pvx-add-funds-dropdown > .pvx-add-funds-coin-icon,
	.pvx-add-funds-dropdown > .pvx-add-funds-network-icon {

		margin-left: 10px;

	}


	.pvx-add-funds-route-label {

		font-size: 9px;

	}


	.pvx-add-funds-route-item strong {

		font-size: 11px;

	}


	.pvx-deposit-qr {

		width: 170px;

		height: 170px;

	}

}


/* ---------------------------------------------------------
 * Very Small Mobile
 * --------------------------------------------------------- */

@media ( max-width: 480px ) {

	.pvx-add-funds-step {

		padding: 22px 16px;

	}


	.pvx-add-funds-step-number {

		width: 28px;

		height: 28px;

		font-size: 11px;

	}


	.pvx-add-funds-step-heading h2 {

		font-size: 15px;

	}


	.pvx-add-funds-selection-content {

		gap: 3px;

	}


	.pvx-add-funds-wallet-icon,
	.pvx-add-funds-coin-icon,
	.pvx-add-funds-network-icon {

		width: 36px;

		height: 36px;

	}


	.pvx-add-funds-wallet-icon span {

		width: 11px;

		height: 11px;

	}


	.pvx-add-funds-wallet-icon span:nth-child(1) {

		transform: translateX(-6px);

	}


	.pvx-add-funds-wallet-icon span:nth-child(2) {

		transform: translateX(6px);

	}


	.pvx-add-funds-wallet-icon span:nth-child(3) {

		width: 7px;

		height: 7px;

	}


	.pvx-add-funds-coin-icon span {

		width: 16px;

		height: 16px;

	}


	.pvx-add-funds-network-icon span {

		width: 8px;

		height: 8px;

	}


	.pvx-add-funds-tx-section {

		padding: 16px;

	}


	.pvx-add-funds-tx-heading p {

		font-size: 11px;

	}


	.pvx-add-funds-important,
	.pvx-add-funds-warning {

		padding: 14px;

	}


	.pvx-add-funds-important p,
	.pvx-add-funds-warning p {

		font-size: 11px;

	}

}
	

	/* =========================================================
	* ADD FUNDS — TRANSACTION STATE REFINEMENT
	* ========================================================= */


	/* ---------------------------------------------------------
	* Locked Transaction Section
	* --------------------------------------------------------- */

	.pvx-add-funds-tx-section.pvx-add-funds-tx-locked {

		background: #F5F4F1;

		border-color: #E3E1DB;

	}


	.pvx-add-funds-tx-section.pvx-add-funds-tx-locked
	.pvx-add-funds-tx-heading h3 {

		color: var(--pvx-text-muted);

	}


	/* ---------------------------------------------------------
	* Active Transaction Section
	* --------------------------------------------------------- */

	.pvx-add-funds-tx-section.pvx-add-funds-tx-active {

		background: var(--pvx-white);

		border-color: rgba(201, 162, 39, .45);

		box-shadow:
			0 4px 16px rgba(40, 40, 43, .035);

	}


	/* ---------------------------------------------------------
	* I've Sent — Confirmed
	* --------------------------------------------------------- */

	.pvx-add-funds-ive-sent-button.is-confirmed {

		background: var(--pvx-gold);

		border-color: var(--pvx-gold);

		color: var(--pvx-charcoal);

		cursor: default;

		opacity: 1;

		transform: none;

		box-shadow: none;

	}

	/* =========================================================
	* ADD FUNDS — DEPOSIT AMOUNT
	* ========================================================= */

	.pvx-add-funds-amount-section {
		margin-top: 28px;
		padding: 24px;
		border: 1px solid #e5e7eb;
		border-radius: 14px;
		background: #ffffff;
		box-shadow: 0 4px 18px rgba(0, 0, 0, .04);
	}

	.pvx-add-funds-amount-section label {
		display: block;
		margin: 0 0 8px;
		font-size: 14px;
		font-weight: 700;
		color: #242424;
	}

	.pvx-add-funds-amount-input-wrap {
		position: relative;
		display: flex;
		align-items: center;
		width: 100%;
		max-width: 460px;
		margin-top: 8px;
	}

	.pvx-add-funds-amount-currency {
		position: absolute;
		left: 18px;
		top: 50%;
		transform: translateY(-50%);
		z-index: 2;

		font-size: 22px;
		font-weight: 700;
		line-height: 1;
		color: #242424;

		pointer-events: none;
	}

	.pvx-add-funds-amount-input {
		width: 100%;
		height: 68px;

		padding: 0 22px 0 52px;

		border: 1px solid #d9dce1;
		border-radius: 10px;
		background: #fafafa;

		font-size: 28px;
		font-weight: 700;
		line-height: 1;
		text-align: right;
		letter-spacing: .5px;
		color: #18181b;

		box-sizing: border-box;

		transition:
			border-color .2s ease,
			box-shadow .2s ease,
			background-color .2s ease;
	}

	.pvx-add-funds-amount-input:hover {
		border-color: #bfc3ca;
		background: #ffffff;
	}

	.pvx-add-funds-amount-input:focus {
		outline: none;
		border-color: #b18a3b;
		background: #ffffff;
		box-shadow: 0 0 0 3px rgba(177, 138, 59, .12);
	}

	.pvx-add-funds-amount-input::placeholder {
		color: #a0a3a8;
		opacity: 1;
	}

	.pvx-add-funds-amount-help {
		margin: 10px 0 20px;

		font-size: 13px;
		line-height: 1.5;
		color: #73777d;
	}

	.pvx-add-funds-confirm-amount-button {
		min-width: 180px;
		min-height: 46px;

		padding: 11px 20px;

		border: 1px solid #b18a3b;
		border-radius: 8px;

		background: #b18a3b;
		color: #ffffff;

		font-size: 14px;
		font-weight: 700;
		line-height: 1.2;

		cursor: pointer;

		transition:
			background-color .2s ease,
			border-color .2s ease,
			box-shadow .2s ease,
			transform .15s ease;
	}

	.pvx-add-funds-confirm-amount-button:hover {
		background: #9b7632;
		border-color: #9b7632;
		box-shadow: 0 5px 14px rgba(155, 118, 50, .20);
	}

	.pvx-add-funds-confirm-amount-button:active {
		transform: translateY(1px);
	}

	.pvx-add-funds-confirm-amount-button:focus-visible {
		outline: none;
		box-shadow:
			0 0 0 3px rgba(177, 138, 59, .15),
			0 5px 14px rgba(155, 118, 50, .15);
	}

	.pvx-add-funds-confirm-amount-button.is-confirmed {
		background: #f4f7f4;
		border-color: #cbd8cd;
		color: #47604c;

		opacity: 1;
		cursor: default;
		box-shadow: none;
	}

	.pvx-add-funds-confirm-amount-button.is-confirmed:hover {
		background: #f4f7f4;
		border-color: #cbd8cd;
		box-shadow: none;
	}


	/* =========================================================
	* ADD FUNDS — AMOUNT CONFIRMATION MODAL
	* ========================================================= */

	.pvx-add-funds-modal[hidden] {
		display: none !important;
	}


	.pvx-add-funds-modal {
		position: fixed;
		inset: 0;
		z-index: 999999;

		display: flex;
		align-items: center;
		justify-content: center;

		padding: 24px;

		box-sizing: border-box;
	}


	.pvx-add-funds-modal-overlay {
		position: absolute;
		inset: 0;

		background: rgba(15, 23, 42, 0.72);

		backdrop-filter: blur(6px);
		-webkit-backdrop-filter: blur(6px);
	}


	.pvx-add-funds-modal-dialog {
		position: relative;
		z-index: 2;

		width: 100%;
		max-width: 560px;

		padding: 30px;

		box-sizing: border-box;

		background: #ffffff;

		border: 1px solid #e6e8ec;
		border-radius: 18px;

		box-shadow:
			0 35px 90px rgba(0, 0, 0, 0.25),
			0 10px 30px rgba(0, 0, 0, 0.10);

		animation: pvxAddFundsModalIn .22s ease-out;
	}


	@keyframes pvxAddFundsModalIn {

		from {
			opacity: 0;
			transform: translateY(14px) scale(.97);
		}

		to {
			opacity: 1;
			transform: translateY(0) scale(1);
		}

	}


	/* =========================================================
	* Modal Header
	* ========================================================= */

	.pvx-add-funds-modal-header {
		display: flex;
		align-items: center;

		gap: 15px;

		padding: 26px 28px 22px;

		border-bottom: 1px solid #eceef1;

	}


	.pvx-add-funds-modal-icon {
		flex: 0 0 46px;

		width: 46px;
		height: 46px;

		display: flex;
		align-items: center;
		justify-content: center;

		border-radius: 50%;

		background: #fff7e6;
		border: 1px solid #f0d59d;

		color: #b7791f;

		font-size: 18px;
		font-weight: 800;
	}


	.pvx-add-funds-modal-header-content {
		min-width: 0;
	}


	.pvx-add-funds-modal-header-content h3 {
		margin: 0 0 4px;

		font-size: 21px;
		line-height: 1.3;

		font-weight: 800;

		color: #171717;
	}


	.pvx-add-funds-modal-header-content p {
		margin: 0;

		font-size: 13px;
		line-height: 1.5;

		color: #73777f;
	}

	/* =========================================================
	 * MODAL BODY
	 * ========================================================= */

	.pvx-add-funds-modal-body {
		padding: 24px 28px 28px;
	}

	/* =========================================================
	* Modal Summary
	* ========================================================= */

	.pvx-add-funds-modal-summary {
		width: 100%;

		margin: 0;

		overflow: hidden;

		border: 1px solid #e5e7eb;
		border-radius: 13px;

		background: #f8f9fb;
	}


	/* ---------------------------------------------------------
	* Deposit Amount
	* --------------------------------------------------------- */

	.pvx-add-funds-modal-summary-amount {
		padding: 18px 20px 19px;

		border-bottom: 1px solid #e5e7eb;

		background: #ffffff;
	}


	.pvx-add-funds-modal-summary-amount span {
		display: block;

		margin-bottom: 5px;

		font-size: 12px;
		line-height: 1.4;

		font-weight: 600;

		color: #7a7f87;

		text-transform: uppercase;
		letter-spacing: .04em;
	}


	.pvx-add-funds-modal-summary-amount strong {
		display: block;

		font-size: 30px;
		line-height: 1.2;

		font-weight: 800;

		letter-spacing: -.5px;

		color: #171717;
	}


	/* ---------------------------------------------------------
	* Summary Rows
	* --------------------------------------------------------- */

	.pvx-add-funds-modal-summary-row {
		display: flex;
		align-items: center;
		justify-content: space-between;

		gap: 24px;

		min-height: 48px;

		padding: 12px 20px;

		box-sizing: border-box;

		border-bottom: 1px solid #e5e7eb;
	}


	.pvx-add-funds-modal-summary-row:last-child {
		border-bottom: 0;
	}


	.pvx-add-funds-modal-summary-row span {
		flex: 0 0 auto;

		font-size: 13px;
		line-height: 1.4;

		color: #747981;
	}


	.pvx-add-funds-modal-summary-row strong {
		min-width: 0;

		font-size: 13px;
		line-height: 1.4;

		font-weight: 700;

		color: #22252a;

		text-align: right;
	}


	/* =========================================================
	* Modal Notice
	* ========================================================= */

	.pvx-add-funds-modal-notice {
		display: flex;
		align-items: flex-start;

		gap: 10px;

		margin-top: 18px;
		padding: 13px 14px;

		box-sizing: border-box;

		border: 1px solid #f0dfbd;
		border-radius: 10px;

		background: #fffaf1;

		text-align: left;
	}


	.pvx-add-funds-modal-notice-icon {
		flex: 0 0 20px;

		width: 20px;
		height: 20px;

		display: flex;
		align-items: center;
		justify-content: center;

		margin-top: 1px;

		border-radius: 50%;

		background: #f3b84b;

		color: #ffffff;

		font-size: 11px;
		font-weight: 800;
	}


	.pvx-add-funds-modal-notice p {
		margin: 0;

		font-size: 12px;
		line-height: 1.55;

		color: #72551d;
	}


	/* =========================================================
	* Modal Actions
	* ========================================================= */

	.pvx-add-funds-modal-actions {
		display: flex;
		align-items: center;

		gap: 12px;

		margin-top: 22px;
	}


	.pvx-add-funds-modal-actions button {
		flex: 1;

		min-height: 48px;

		padding: 12px 18px;

		box-sizing: border-box;

		border-radius: 9px;

		font-size: 13px;
		font-weight: 700;

		cursor: pointer;

		transition:
			transform .15s ease,
			background-color .15s ease,
			border-color .15s ease,
			box-shadow .15s ease;
	}


	/* ---------------------------------------------------------
	* Cancel
	* --------------------------------------------------------- */

	.pvx-add-funds-modal-cancel {
		background: #ffffff;

		border: 1px solid #d9dde3;

		color: #444444;
	}


	.pvx-add-funds-modal-cancel:hover {
		background: #f7f8f9;

		border-color: #c8ccd2;
	}


	.pvx-add-funds-modal-cancel:active {
		transform: translateY(1px);
	}


	/* ---------------------------------------------------------
	* Confirm
	* --------------------------------------------------------- */

	.pvx-add-funds-modal-actions .pvx-primary-button {
		border-radius: 9px;
	}


	.pvx-add-funds-modal-actions .pvx-primary-button:hover {
		transform: translateY(-1px);
	}


	.pvx-add-funds-modal-actions .pvx-primary-button:active {
		transform: translateY(1px);
	}


	/* =========================================================
	* Prevent Background Scroll
	* ========================================================= */

	body.pvx-add-funds-modal-open {
		overflow: hidden;
	}


	/* =========================================================
	 * DESKTOP ONLY
	 *
	 * This is the only area intentionally refined for desktop.
	 * Mobile rules below remain separate.
	 * ========================================================= */

	@media (min-width: 601px) {

		.pvx-add-funds-modal-dialog {
			max-width: 560px;
		}

	}


	/* =========================================================
	* Mobile
	* ========================================================= */

	@media (max-width: 600px) {

		.pvx-add-funds-modal {
			padding: 16px;
		}


		.pvx-add-funds-modal-dialog {
			max-width: 100%;

			padding: 26px 20px 22px;

			border-radius: 14px;
		}


		.pvx-add-funds-modal-header {
			gap: 12px;

			margin-bottom: 20px;
		}


		.pvx-add-funds-modal-icon {
			flex-basis: 42px;

			width: 42px;
			height: 42px;
		}


		.pvx-add-funds-modal-header-content h3 {
			font-size: 19px;
		}


		.pvx-add-funds-modal-header-content p {
			font-size: 12px;
		}


		.pvx-add-funds-modal-summary-amount {
			padding: 16px;
		}


		.pvx-add-funds-modal-summary-amount strong {
			font-size: 27px;
		}


		.pvx-add-funds-modal-summary-row {
			padding: 11px 16px;
		}


		.pvx-add-funds-modal-summary-row span,
		.pvx-add-funds-modal-summary-row strong {
			font-size: 12px;
		}


		.pvx-add-funds-modal-notice {
			margin-top: 15px;
		}


		.pvx-add-funds-modal-actions {
			flex-direction: column-reverse;

			gap: 9px;

			margin-top: 18px;
		}


		.pvx-add-funds-modal-actions button {
			width: 100%;
		}

	}


	/* =========================================================
	* Reduced Motion
	* ========================================================= */

	@media (prefers-reduced-motion: reduce) {

		.pvx-add-funds-modal-dialog {
			animation: none;
		}

		.pvx-add-funds-modal-actions button {
			transition: none;
		}

	}


	/* =========================================================
	* ADD FUNDS — DEPOSIT LOCKED / CONFIRMED
	* ========================================================= */

	.pvx-add-funds-deposit-locked {
		opacity: .58;

		transition: opacity .2s ease;
	}

	.pvx-add-funds-deposit-locked .pvx-add-funds-sent-section {
		pointer-events: none;
	}

	.pvx-add-funds-deposit-confirmed {
		opacity: 1;

		transition: opacity .2s ease;
	}


	/* =========================================================
	* ADD FUNDS — MOBILE
	* ========================================================= */

	@media (max-width: 600px) {

		.pvx-add-funds-amount-section {
			margin-top: 20px;
			padding: 18px;
			border-radius: 12px;
		}

		.pvx-add-funds-amount-input {
			height: 60px;
			font-size: 24px;
		}

		.pvx-add-funds-amount-currency {
			left: 16px;
			font-size: 20px;
		}

		.pvx-add-funds-amount-input-wrap {
			max-width: none;
		}

		.pvx-add-funds-confirm-amount-button {
			width: 100%;
		}

		.pvx-add-funds-modal {
			padding: 16px;
		}

		.pvx-add-funds-modal-dialog {
			max-width: 100%;
			padding: 26px 20px 22px;
			border-radius: 14px;
		}

		.pvx-add-funds-modal-icon {
			width: 50px;
			height: 50px;
			margin-bottom: 15px;
		}

		.pvx-add-funds-modal-dialog h3 {
			font-size: 20px;
		}

		.pvx-add-funds-modal-amount {
			margin: 18px 0;
			padding: 16px;
			font-size: 29px;
		}

		.pvx-add-funds-modal-actions {
			flex-direction: column-reverse;
			gap: 9px;
		}

		.pvx-add-funds-modal-cancel,
		.pvx-add-funds-modal-confirm {
			width: 100%;
		}

	}


	/* =========================================================
	* ADD FUNDS — REDUCED MOTION
	* ========================================================= */

	@media (prefers-reduced-motion: reduce) {

		.pvx-add-funds-modal-dialog {
			animation: none;
		}

		.pvx-add-funds-amount-input,
		.pvx-add-funds-confirm-amount-button,
		.pvx-add-funds-modal-cancel,
		.pvx-add-funds-modal-confirm,
		.pvx-add-funds-deposit-locked,
		.pvx-add-funds-deposit-confirmed {
			transition: none;
		}

	}


	/* ---------------------------------------------------------
	* Submit Button — Disabled
	* --------------------------------------------------------- */

	.pvx-add-funds-submit-button:disabled {

		background: #E7E5DF;

		border-color: #DAD7CF;

		color: #9A978F;

		cursor: not-allowed;

		opacity: 1;

		transform: none;

		box-shadow: none;

	}


	.pvx-add-funds-submit-button:disabled:hover {

		background: #E7E5DF;

		border-color: #DAD7CF;

		color: #9A978F;

		cursor: not-allowed;

		transform: none;

		box-shadow: none;

	}


	/* =========================================================
	* Transaction Submitted
	* ========================================================= */

	.pvx-add-funds-tx-section.pvx-add-funds-tx-submitted {

		padding: 28px;

		background: var(--pvx-white);

		border-color: rgba(47, 138, 76, .22);

	}


	.pvx-add-funds-success {

		display: flex;

		align-items: flex-start;

		gap: 16px;

	}


	.pvx-add-funds-success-icon {

		display: inline-flex;

		align-items: center;

		justify-content: center;

		flex-shrink: 0;

		width: 42px;

		height: 42px;

		border-radius: 50%;

		background: rgba(47, 138, 76, .10);

		border: 1px solid rgba(47, 138, 76, .22);

		color: var(--pvx-success);

		font-size: 17px;

		font-weight: 900;

	}


	.pvx-add-funds-success-content {

		min-width: 0;

	}


	.pvx-add-funds-success-content h3 {

		margin: 1px 0 6px;

		font-size: 15px;

		line-height: 1.35;

		font-weight: 800;

		color: var(--pvx-charcoal);

	}


	.pvx-add-funds-success-content p {

		margin: 0;

		max-width: 760px;

		font-size: 12px;

		line-height: 1.65;

		color: var(--pvx-text-secondary);

	}


	.pvx-add-funds-success-content strong {

		font-weight: 800;

		color: var(--pvx-charcoal);

	}


	/* ---------------------------------------------------------
	* Success — Mobile
	* --------------------------------------------------------- */

	@media ( max-width: 600px ) {

		.pvx-add-funds-tx-section.pvx-add-funds-tx-submitted {

			padding: 20px;

		}


		.pvx-add-funds-success {

			gap: 13px;

		}


		.pvx-add-funds-success-icon {

			width: 38px;

			height: 38px;

			font-size: 15px;

		}


		.pvx-add-funds-success-content h3 {

			font-size: 14px;

		}


		.pvx-add-funds-success-content p {

			font-size: 11px;

			line-height: 1.6;

		}

	}

		/* =====================================================
		Referral Link
		===================================================== */

		.pvx-dashboard-referral-link-card {
			margin-top: 18px;
			padding: 22px 28px;

			background: var(--pvx-white);
			border: 1px solid var(--pvx-border);
			border-radius: 16px;

			box-shadow: 0 6px 20px rgba(0, 0, 0, 0.04);
		}


		.pvx-dashboard-referral-link-content {
			width: 100%;
		}


		.pvx-dashboard-referral-link-row {
			display: flex;
			align-items: center;
			gap: 16px;

			margin-top: 10px;
		}


		.pvx-dashboard-referral-link-value {
			flex: 1;

			min-width: 0;

			font-size: 16px;
			font-weight: 600;

			white-space: nowrap;
			overflow: hidden;
			text-overflow: ellipsis;
		}


		.pvx-dashboard-referral-link-row .pvx-copy-referral-button {
			flex-shrink: 0;
		}


		/* =====================================================
		Referral Link - Bottom Spacing
		===================================================== */

		.pvx-dashboard-referral-link-card {
			margin-bottom: 20px;
		}

		/* =====================================================
		Referral Link - Mobile
		===================================================== */

		@media (max-width: 600px) {

			.pvx-dashboard-referral-link-card {
				padding: 20px;
			}


			.pvx-dashboard-referral-link-row {
				align-items: stretch;
				flex-direction: column;
				gap: 12px;
			}


			.pvx-dashboard-referral-link-value {
				white-space: normal;
				overflow-wrap: anywhere;
			}


			.pvx-dashboard-referral-link-row .pvx-copy-referral-button {
				width: 100%;
			}

			/* =========================================================
			* PVX100 — MY DIRECT DOWNLINERS
			* ========================================================= */


			/* ---------------------------------------------------------
			* Page
			* --------------------------------------------------------- */

			.pvx-downliners-page {

				width: 100%;
				max-width: 1180px;
				margin: 0 auto;

			}


			/* ---------------------------------------------------------
			* Header
			* --------------------------------------------------------- */

			.pvx-downliners-header {

				display: flex;
				align-items: center;
				justify-content: space-between;
				gap: 28px;

				margin-bottom: 28px;

			}


			.pvx-downliners-header-copy {

				min-width: 0;

			}


			.pvx-downliners-header h1 {

				margin: 4px 0 8px;

				font-size: 34px;
				line-height: 1.15;
				font-weight: 800;

				color: #171717;

			}


			.pvx-downliners-description {

				max-width: 720px;
				margin: 0;

				color: #6b7280;

				font-size: 15px;
				line-height: 1.65;

			}


			/* ---------------------------------------------------------
			* Total Card
			* --------------------------------------------------------- */

			.pvx-downliners-total-card {

				min-width: 180px;

				padding: 20px 24px;

				border: 1px solid #e5e7eb;
				border-radius: 14px;

				background: #ffffff;

				box-shadow:
					0 8px 24px
					rgba(0, 0, 0, 0.04);

				text-align: center;

			}


			.pvx-downliners-total-number {

				display: block;

				font-size: 30px;
				line-height: 1;
				font-weight: 800;

				color: #171717;

			}


			.pvx-downliners-total-label {

				display: block;

				margin-top: 8px;

				color: #6b7280;

				font-size: 12px;
				font-weight: 700;

				text-transform: uppercase;
				letter-spacing: 0.07em;

			}


			/* ---------------------------------------------------------
			* Notice
			* --------------------------------------------------------- */

			.pvx-downliners-notice {

				padding: 16px 18px;

				border-radius: 12px;

				font-size: 14px;
				line-height: 1.6;

			}


			.pvx-downliners-notice-error {

				border: 1px solid #fecaca;

				background: #fff1f2;

				color: #991b1b;

			}


			/* ---------------------------------------------------------
			* Filter Card
			* --------------------------------------------------------- */

			.pvx-downliners-filter-card {

				margin-bottom: 22px;

				padding: 22px;

				border: 1px solid #e5e7eb;
				border-radius: 16px;

				background: #ffffff;

				box-shadow:
					0 8px 24px
					rgba(0, 0, 0, 0.035);

			}


			.pvx-downliners-filter-form {

				display: grid;

				grid-template-columns:
					minmax(260px, 2fr)
					minmax(160px, 1fr)
					minmax(160px, 1fr)
					auto;

				gap: 16px;

				align-items: end;

			}


			.pvx-downliners-search-field,
			.pvx-downliners-filter-field {

				min-width: 0;

			}


			.pvx-downliners-search-field label,
			.pvx-downliners-filter-field label {

				display: block;

				margin-bottom: 7px;

				color: #374151;

				font-size: 12px;
				font-weight: 700;

			}


			.pvx-downliners-search-field input,
			.pvx-downliners-filter-field select {

				width: 100%;
				min-height: 46px;

				padding: 0 13px;

				border: 1px solid #d1d5db;
				border-radius: 9px;

				background: #ffffff;

				color: #171717;

				font-size: 14px;

				outline: none;

				transition:
					border-color .2s ease,
					box-shadow .2s ease;

			}


			.pvx-downliners-search-field input:focus,
			.pvx-downliners-filter-field select:focus {

				border-color: #b89535;

				box-shadow:
					0 0 0 3px
					rgba(184, 149, 53, 0.12);

			}


			.pvx-downliners-filter-actions {

				display: flex;

				gap: 10px;

				align-items: center;

			}


			.pvx-downliners-search-button,
			.pvx-downliners-reset-button {

				min-height: 46px;

				display: inline-flex;
				align-items: center;
				justify-content: center;

				white-space: nowrap;

			}


			/* ---------------------------------------------------------
			* Result Summary
			* --------------------------------------------------------- */

			.pvx-downliners-result-summary {

				margin-bottom: 14px;

				color: #6b7280;

				font-size: 13px;
				font-weight: 600;

			}


			/* =========================================================
			* DESKTOP RESULTS
			* ========================================================= */

			.pvx-downliners-desktop-results {

				display: block;

			}


			.pvx-downliners-mobile-results {

				display: none;

			}


			/* ---------------------------------------------------------
			* Desktop Table
			* --------------------------------------------------------- */

			.pvx-downliners-table-card {

				overflow: hidden;

				border: 1px solid #e5e7eb;
				border-radius: 16px;

				background: #ffffff;

				box-shadow:
					0 8px 26px
					rgba(0, 0, 0, 0.035);

			}


			.pvx-downliners-table {

				width: 100%;

				border-collapse: collapse;
				border-spacing: 0;

			}


			.pvx-downliners-table th {

				padding: 14px 16px;

				background: #f8f9fa;

				border-bottom: 1px solid #e5e7eb;

				color: #6b7280;

				font-size: 11px;
				font-weight: 800;

				text-align: left;

				text-transform: uppercase;
				letter-spacing: 0.055em;

			}


			.pvx-downliners-table td {

				padding: 16px;

				border-bottom: 1px solid #edf0f2;

				color: #374151;

				font-size: 14px;

				vertical-align: middle;

			}


			.pvx-downliners-table tbody tr:last-child td {

				border-bottom: 0;

			}


			.pvx-downliners-table tbody tr {

				transition: background .18s ease;

			}


			.pvx-downliners-table tbody tr:hover {

				background: #fafafa;

			}


			/* ---------------------------------------------------------
			* Member Identity
			* --------------------------------------------------------- */

			.pvx-downliner-member {

				display: flex;
				flex-direction: column;

				gap: 3px;

			}


			.pvx-downliner-member strong {

				color: #171717;

				font-size: 14px;
				font-weight: 750;

			}


			.pvx-downliner-member span {

				color: #8b9098;

				font-size: 12px;

			}


			/* ---------------------------------------------------------
			* Membership Badge
			* --------------------------------------------------------- */

			.pvx-downliner-membership {

				display: inline-flex;

				align-items: center;

				min-height: 27px;

				padding: 4px 9px;

				border-radius: 999px;

				background: #f6f2e8;

				color: #80651e;

				font-size: 12px;
				font-weight: 700;

			}


			/* ---------------------------------------------------------
			* Status Badge
			* --------------------------------------------------------- */

			.pvx-downliner-status {

				display: inline-flex;

				align-items: center;

				min-height: 27px;

				padding: 4px 9px;

				border-radius: 999px;

				background: #f3f4f6;

				color: #4b5563;

				font-size: 11px;
				font-weight: 800;

			}


			.pvx-downliner-status[data-status="active"] {

				background: #ecfdf3;

				color: #067647;

			}


			.pvx-downliner-status[data-status="inactive"] {

				background: #f3f4f6;

				color: #6b7280;

			}


			.pvx-downliner-status[data-status="pending"] {

				background: #fffaeb;

				color: #b54708;

			}


			.pvx-downliner-status[data-status="suspended"] {

				background: #fff4ed;

				color: #c4320a;

			}


			.pvx-downliner-status[data-status="blocked"] {

				background: #fff1f3;

				color: #c01048;

			}


			/* =========================================================
			* MOBILE MEMBER CARDS
			* ========================================================= */

			.pvx-downliner-mobile-card {

				padding: 18px;

				border: 1px solid #e5e7eb;
				border-radius: 14px;

				background: #ffffff;

				box-shadow:
					0 6px 20px
					rgba(0, 0, 0, 0.035);

			}


			.pvx-downliner-mobile-header {

				display: flex;

				align-items: flex-start;
				justify-content: space-between;

				gap: 14px;

				padding-bottom: 14px;

				border-bottom: 1px solid #edf0f2;

			}


			.pvx-downliner-mobile-header h2 {

				margin: 0;

				color: #171717;

				font-size: 17px;
				line-height: 1.3;
				font-weight: 800;

				overflow-wrap: anywhere;

			}


			.pvx-downliner-mobile-username {

				display: block;

				margin-top: 4px;

				color: #8b9098;

				font-size: 12px;

				overflow-wrap: anywhere;

			}


			.pvx-downliner-mobile-details {

				display: grid;

				gap: 12px;

				padding-top: 14px;

			}


			.pvx-downliner-mobile-details > div {

				display: flex;

				align-items: center;
				justify-content: space-between;

				gap: 14px;

			}


			.pvx-downliner-mobile-details span {

				color: #7b8088;

				font-size: 12px;

			}


			.pvx-downliner-mobile-details strong {

				color: #252525;

				font-size: 13px;
				font-weight: 700;

				text-align: right;

				overflow-wrap: anywhere;

			}


			/* =========================================================
			* PAGINATION
			* ========================================================= */

			.pvx-downliners-pagination {

				display: flex;

				align-items: center;
				justify-content: center;

				gap: 14px;

				margin-top: 24px;

			}


			.pvx-downliners-page-button {

				min-height: 42px;

				display: inline-flex;

				align-items: center;
				justify-content: center;

				gap: 6px;

				padding: 0 14px;

				border: 1px solid #d1d5db;
				border-radius: 8px;

				background: #ffffff;

				color: #333333;

				font-size: 13px;
				font-weight: 700;

				text-decoration: none;

				transition:
					background .18s ease,
					border-color .18s ease;

			}


			.pvx-downliners-page-button:hover {

				background: #f8f9fa;

				border-color: #bfc3c9;

				color: #171717;

			}


			.pvx-downliners-page-status {

				color: #6b7280;

				font-size: 12px;
				font-weight: 700;

			}


			/* =========================================================
			* TABLET
			* ========================================================= */

			@media ( max-width: 980px ) {

				.pvx-downliners-filter-form {

					grid-template-columns:
						minmax(240px, 2fr)
						1fr
						1fr;

				}


				.pvx-downliners-filter-actions {

					grid-column: 1 / -1;

					justify-content: flex-end;

				}

			}


			/* =========================================================
			* MOBILE
			* ========================================================= */

			@media ( max-width: 760px ) {

				.pvx-downliners-page {

					width: 100%;

				}


				/*
				* Header
				*/

				.pvx-downliners-header {

					align-items: stretch;
					flex-direction: column;

					gap: 18px;

					margin-bottom: 22px;

				}


				.pvx-downliners-header h1 {

					font-size: 27px;

				}


				.pvx-downliners-description {

					font-size: 14px;

				}


				.pvx-downliners-total-card {

					min-width: 0;
					width: 100%;

					display: flex;

					align-items: center;
					justify-content: space-between;

					padding: 16px 18px;

					text-align: left;

				}


				.pvx-downliners-total-number {

					font-size: 26px;

				}


				.pvx-downliners-total-label {

					margin-top: 0;

					text-align: right;

				}


				/*
				* Filters
				*/

				.pvx-downliners-filter-card {

					padding: 18px;

				}


				.pvx-downliners-filter-form {

					grid-template-columns: 1fr;

					gap: 14px;

				}


				.pvx-downliners-filter-actions {

					grid-column: auto;

					display: grid;

					grid-template-columns: 1fr;

					gap: 9px;

				}


				.pvx-downliners-search-button,
				.pvx-downliners-reset-button {

					width: 100%;

				}


				/*
				* Remove desktop result table completely.
				*/

				.pvx-downliners-desktop-results {

					display: none;

				}


				/*
				* Show dedicated mobile cards.
				*/

				.pvx-downliners-mobile-results {

					display: grid;

					grid-template-columns: 1fr;

					gap: 12px;

				}


				/*
				* Pagination
				*/

				.pvx-downliners-pagination {

					display: grid;

					grid-template-columns:
						minmax(0, 1fr)
						auto
						minmax(0, 1fr);

					gap: 8px;

					width: 100%;

				}


				.pvx-downliners-page-button {

					width: 100%;

					padding-left: 10px;
					padding-right: 10px;

				}


				.pvx-downliners-page-status {

					text-align: center;

					white-space: nowrap;

				}

			}


			/* =========================================================
			* SMALL MOBILE
			* ========================================================= */

			@media ( max-width: 480px ) {

				.pvx-downliners-header h1 {

					font-size: 24px;

				}


				.pvx-downliners-filter-card {

					padding: 15px;

					border-radius: 13px;

				}


				.pvx-downliner-mobile-card {

					padding: 15px;

				}


				.pvx-downliner-mobile-header {

					flex-direction: column;

					gap: 9px;

				}


				.pvx-downliner-mobile-details > div {

					align-items: flex-start;

					flex-direction: column;

					gap: 3px;

				}


				.pvx-downliner-mobile-details strong {

					text-align: left;

				}


				/*
				* On very narrow phones keep pagination readable.
				*/

				.pvx-downliners-pagination {

					grid-template-columns: 1fr 1fr;

				}


				.pvx-downliners-page-status {

					grid-column: 1 / -1;
					grid-row: 1;

				}

			}

			/* =========================================================
			* DASHBOARD — MY TEAM
			* ========================================================= */

			.pvx-dashboard-team-card {

				display: flex;
				align-items: center;
				justify-content: space-between;

				gap: 28px;

				margin-bottom: 28px;

				padding: 26px 30px;

				background: var(--pvx-white);

				border: 1px solid var(--pvx-border);
				border-radius: 16px;

				box-shadow:
					0 6px 20px
					rgba(0, 0, 0, 0.04);

			}


			.pvx-dashboard-team-content {

				min-width: 0;
				flex: 1;

			}


			.pvx-dashboard-team-card h2 {

				margin: 4px 0 8px;

				font-size: 22px;
				font-weight: 700;

				line-height: 1.3;

				color: var(--pvx-dark);

			}


			.pvx-dashboard-team-description {

				max-width: 650px;

				margin: 0;

				font-size: 14px;
				line-height: 1.65;

				color: var(--pvx-muted);

			}


			.pvx-dashboard-team-action {

				display: flex;

				align-items: center;

				flex-shrink: 0;

			}


			.pvx-dashboard-team-button {

				display: inline-flex;

				align-items: center;
				justify-content: center;

				gap: 9px;

				white-space: nowrap;

			}


			.pvx-dashboard-team-arrow {

				font-size: 16px;

				line-height: 1;

				transition:
					transform .2s ease;

			}


			.pvx-dashboard-team-button:hover
			.pvx-dashboard-team-arrow {

				transform: translateX(3px);

			}


			/* =========================================================
			* MY TEAM — MOBILE
			* ========================================================= */

			@media ( max-width: 760px ) {

				.pvx-dashboard-team-card {

					align-items: stretch;

					flex-direction: column;

					gap: 20px;

					padding: 22px;

				}


				.pvx-dashboard-team-card h2 {

					font-size: 20px;

				}


				.pvx-dashboard-team-description {

					font-size: 13px;

				}


				.pvx-dashboard-team-action {

					width: 100%;

				}


				.pvx-dashboard-team-button {

					width: 100%;

				}

			}


			/* =========================================================
			* MY TEAM — SMALL MOBILE
			* ========================================================= */

			@media ( max-width: 480px ) {

				.pvx-dashboard-team-card {

					padding: 20px;

					border-radius: 14px;

				}

			}

		}