.asp-upr-redemption-box {
	border: 1px solid #dcdcde;
	border-radius: 4px;
	margin: 1rem 0;
	padding: 1rem;
}

.asp-upr-card {
	background: #fff;
	border: 1px solid #e2e4e8;
	border-radius: 10px;
	box-shadow: 0 1px 3px rgba( 16, 24, 40, 0.06 );
	margin: 0 0 1.5rem;
	padding: 1.5rem;
}

.asp-upr-card h2 {
	font-size: 1.25rem;
	margin: 0 0 .75rem;
}

.asp-upr-stat-tiles {
	display: grid;
	gap: 1rem;
	grid-template-columns: repeat( auto-fit, minmax( 160px, 1fr ) );
	margin: 0 0 1.5rem;
}

.asp-upr-stat-tile {
	background: #fff;
	border: 1px solid #e2e4e8;
	border-radius: 8px;
	display: flex;
	flex-direction: column;
	gap: .4rem;
	padding: 1rem 1.25rem;
}

.asp-upr-stat-tile-label {
	color: #6b7280;
	font-size: .75rem;
	font-weight: 600;
	letter-spacing: .04em;
	text-transform: uppercase;
}

.asp-upr-stat-tile-value {
	color: #1d2327;
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 1.2;
}

.asp-upr-stat-tile-value .woocommerce-Price-amount {
	color: inherit;
}

.asp-upr-level-panel {
	border: 1px solid #e2e4e8;
	border-radius: 8px;
	margin: 0 0 1.5rem;
	padding: 1.25rem;
}

.asp-upr-level-summary {
	align-items: flex-start;
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	justify-content: space-between;
	margin-bottom: 1rem;
}

.asp-upr-level-panel h3,
.asp-upr-history-title {
	font-size: 1rem;
	margin: 0 0 .5rem;
}

.asp-upr-level-current {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: .5rem;
	margin: 0;
}

.asp-upr-level-current strong {
	font-size: 1.25rem;
}

.asp-upr-level-badge {
	background: #edfaef;
	border-radius: 999px;
	color: #007017;
	font-size: .8rem;
	font-weight: 600;
	padding: .2rem .65rem;
}

.asp-upr-level-description {
	color: #50575e;
	margin: .4rem 0 0;
}

.asp-upr-level-lifetime {
	display: flex;
	flex-direction: column;
	margin: 0;
	text-align: right;
}

.asp-upr-level-lifetime span {
	color: #6b7280;
	font-size: .75rem;
	font-weight: 600;
	letter-spacing: .04em;
	text-transform: uppercase;
}

.asp-upr-level-lifetime strong {
	font-size: 1.25rem;
}

.asp-upr-level-progress {
	margin-bottom: 1rem;
}

.asp-upr-level-progress-labels {
	color: #50575e;
	display: flex;
	font-size: .85rem;
	font-weight: 600;
	justify-content: space-between;
	margin-bottom: .35rem;
}

.asp-upr-level-progress progress {
	appearance: none;
	background: #f0f0f1;
	border: 0;
	border-radius: 999px;
	display: block;
	height: 10px;
	overflow: hidden;
	width: 100%;
}

.asp-upr-level-progress progress::-webkit-progress-bar {
	background: #f0f0f1;
	border-radius: 999px;
}

.asp-upr-level-progress progress::-webkit-progress-value {
	background: #2271b1;
	border-radius: 999px;
}

.asp-upr-level-progress progress::-moz-progress-bar {
	background: #2271b1;
	border-radius: 999px;
}

.asp-upr-level-progress p,
.asp-upr-level-top {
	color: #50575e;
	font-size: .9rem;
	margin: .5rem 0 0;
}

.asp-upr-level-top {
	margin: 0 0 1rem;
}

.asp-upr-levels-table {
	margin: 0;
}

.asp-upr-levels-table tr.is-current td {
	background: #f0f6fc;
	font-weight: 600;
}

.asp-upr-level-status {
	border-radius: 999px;
	display: inline-block;
	font-size: .75rem;
	font-weight: 600;
	padding: .15rem .6rem;
}

.asp-upr-level-status.is-current {
	background: #2271b1;
	color: #fff;
}

.asp-upr-level-status.is-reached {
	background: #edfaef;
	color: #007017;
}

.asp-upr-level-status.is-locked {
	background: #f0f0f1;
	color: #50575e;
}

@media ( max-width: 600px ) {
	.asp-upr-level-lifetime {
		text-align: left;
	}
}

.asp-upr-table-wrap {
	overflow-x: auto;
}

.asp-upr-history-table {
	margin: 0;
}

/* Keep account tables readable on mobile, including when used in shortcodes. */
@media ( max-width: 768px ) {
	.asp-upr-card {
		min-width: 0;
		padding: 1rem;
		overflow-wrap: anywhere;
	}

	.asp-upr-stat-tiles {
		grid-template-columns: repeat( auto-fit, minmax( min( 160px, 100% ), 1fr ) );
	}

	.asp-upr-card table.shop_table_responsive {
		width: 100%;
	}

	.asp-upr-card table.shop_table_responsive thead {
		display: none;
	}

	.asp-upr-card table.shop_table_responsive tbody,
	.asp-upr-card table.shop_table_responsive tbody tr {
		display: block;
		width: 100%;
	}

	.asp-upr-card table.shop_table_responsive tbody tr + tr {
		border-top: 2px solid #e2e4e8;
	}

	.asp-upr-card table.shop_table_responsive tbody tr td {
		box-sizing: border-box;
		display: block;
		width: 100%;
		text-align: left !important;
		white-space: normal;
		overflow-wrap: anywhere;
	}

	.asp-upr-card table.shop_table_responsive tbody tr td[data-title]::before {
		content: attr( data-title ) ":";
		display: block;
		float: none;
		font-weight: 600;
		margin-bottom: .25rem;
	}

	.asp-upr-card table.shop_table_responsive tbody tr td.asp-upr-table-empty::before {
		content: none;
		display: none;
	}

	.asp-upr-level-panel {
		padding: .75rem;
	}

	.asp-upr-level-lifetime {
		text-align: left;
	}
}

.asp-upr-redemption-box input {
	max-width: 140px;
}

.asp-upr-redemption-notice:empty {
	display: none;
}

/* Matches WooCommerce's message notice. Own class names, because WooCommerce removes its
   .woocommerce-message and .woocommerce-error elements whenever the cart or checkout refreshes. */
.asp-upr-notice {
	background-color: #f6f5f8;
	border-top: 3px solid #720eec;
	color: #515151;
	margin: .75rem 0 0;
	padding: 1em 2em 1em 1.5em;
	position: relative;
	word-wrap: break-word;
}

.asp-upr-notice--success {
	padding-left: 3.5em;
}

.asp-upr-notice--success::before {
	content: "\e028";
	font-family: WooCommerce;
	left: 1.5em;
	position: absolute;
	top: 1em;
}

.asp-upr-notice--error {
	border-top-color: #cc1818;
}

/* Themes give .button a display value, which would otherwise override the hidden attribute. */
.asp-upr-redemption-box [hidden] {
	display: none !important;
}

/* Scoped to the box and given extra weight so it beats WooCommerce's button.button colours. */
.asp-upr-redemption-box button.asp-upr-redeem-remove.button {
	background-color: #cc1818;
	border-color: #cc1818;
	color: #fff;
}

.asp-upr-redemption-box button.asp-upr-redeem-remove.button:hover,
.asp-upr-redemption-box button.asp-upr-redeem-remove.button:focus {
	background-color: #a00;
	border-color: #a00;
	color: #fff;
}

.asp-upr-earn-message {
	background: #f6f8fb;
	border: 1px solid #dcdcde;
	border-radius: 4px;
	color: #1d2327;
	font-weight: 600;
	margin: .25rem 0 0;
	padding: .5rem .75rem;
}

.asp-upr-earn-message--loop {
	border-style: dashed;
	font-size: .85em;
	font-weight: 400;
	margin: .15rem 0 0;
	padding: .3rem .5rem;
}

.asp-upr-earn-message--block {
	margin: .25rem 0 0;
}

.asp-upr-earn-message--payment-gateway {
	border-style: dashed;
	font-size: .85em;
	font-weight: 400;
	margin: .5rem 0 0;
	padding: .3rem .5rem;
}

.asp-upr-earn-message--referral {
	background: #f3f1fb;
	border-color: #d8d2f3;
	color: #4a3fc0;
	margin: 0 0 1rem;
}

.asp-upr-referral-intro {
	color: #50575e;
	margin: 0 0 1rem;
}

.asp-upr-referral-link-row {
	display: flex;
	flex-wrap: wrap;
	gap: .6rem;
}

.asp-upr-referral-link {
	background: #f6f7fb;
	border: 1px solid #dcdcde;
	border-radius: 6px;
	color: #1d2327;
	flex: 1 1 260px;
	font-size: .95rem;
	min-width: 0;
	padding: .6rem .8rem;
}

.asp-upr-copy-referral-link {
	align-items: center;
	background: #5b4fcf;
	border: none;
	border-radius: 6px;
	color: #fff;
	cursor: pointer;
	display: inline-flex;
	flex: 0 0 auto;
	font-weight: 600;
	gap: .4rem;
	padding: .6rem 1.1rem;
	transition: background-color .15s ease;
}

.asp-upr-copy-referral-link:hover,
.asp-upr-copy-referral-link:focus {
	background: #4a3fc0;
	color: #fff;
}

.asp-upr-copy-icon {
	display: inline-flex;
	line-height: 0;
}

.asp-upr-referral-copied {
	color: #2a9d52;
	font-size: .9rem;
	font-weight: 600;
	margin: .5rem 0 0;
	min-height: 1.2em;
}

.asp-upr-referral-share {
	align-items: center;
	border-top: 1px solid #eceef2;
	display: flex;
	flex-wrap: wrap;
	gap: .6rem;
	margin-top: 1.25rem;
	padding-top: 1.1rem;
}

.asp-upr-referral-share-label {
	color: #50575e;
	font-size: .85rem;
	font-weight: 600;
	margin-right: .25rem;
}

.asp-upr-share-icon {
	align-items: center;
	border-radius: 50%;
	display: inline-flex;
	height: 36px;
	justify-content: center;
	line-height: 0;
	transition: transform .15s ease, opacity .15s ease;
	width: 36px;
}

.asp-upr-share-icon:hover,
.asp-upr-share-icon:focus {
	opacity: .85;
	transform: translateY( -2px );
}

.asp-upr-share-whatsapp {
	background: #25d366;
}

.asp-upr-share-facebook {
	background: #1877f2;
}

.asp-upr-share-x {
	background: #111;
}

.asp-upr-share-email {
	background: #6b7280;
}

.asp-upr-clipboard-helper {
	left: -9999px;
	position: fixed;
	top: -9999px;
}

.asp-upr-datepicker {
	background-color: #fff;
	cursor: pointer;
}

.ui-datepicker {
	z-index: 9999 !important;
}

.asp-upr-history-pagination {
	margin-top: 1rem;
}

.asp-upr-history-pages {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: .375rem;
	justify-content: flex-end;
	list-style: none;
	margin: 0;
	padding: 0;
}

.asp-upr-history-pages li {
	display: flex;
}

.asp-upr-history-page-link,
.asp-upr-history-page-current {
	align-items: center;
	border-radius: 4px;
	box-sizing: border-box;
	display: inline-flex;
	font-size: 13px;
	justify-content: center;
	line-height: 1;
	min-height: 2.25em;
	min-width: 2.25em;
	padding: .5em .65em;
}

.asp-upr-history-page-link {
	background: #fff;
	border: 1px solid #dcdcde;
	color: #515151;
	cursor: pointer;
	transition: background-color .15s ease, border-color .15s ease, color .15s ease;
}

.asp-upr-history-page-link:hover,
.asp-upr-history-page-link:focus-visible {
	background: #f3ecfe;
	border-color: #720eec;
	color: #720eec;
	outline: none;
}

.asp-upr-history-page-link:disabled,
.asp-upr-history-page-link:disabled:hover,
.asp-upr-history-page-link:disabled:focus-visible {
	background: #f6f7f7;
	border-color: #e2e4e8;
	color: #c3c4c7;
	cursor: default;
}

.asp-upr-history-page-arrow {
	font-weight: 600;
}

.asp-upr-history-page-current {
	background: #720eec;
	border: 1px solid #720eec;
	color: #fff;
	font-weight: 600;
}

.asp-upr-history-page-dots {
	color: #64748b;
	display: flex;
	align-items: center;
	padding: 0 .3em;
}

@media ( max-width: 480px ) {
	.asp-upr-history-pages {
		gap: .25rem;
		justify-content: center;
	}

	.asp-upr-history-page-link,
	.asp-upr-history-page-current {
		font-size: 12px;
		min-height: 2em;
		min-width: 2em;
		padding: .4em .5em;
	}
}

/* Cashback exchange and payout history. */
.asp-upr-cashback .asp-upr-cashback-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}
.asp-upr-cashback-heading h3{margin:0 0 6px}.asp-upr-cashback-heading p{margin:0;color:#64748b}
.asp-upr-cashback-badge,.asp-upr-cashback-status{display:inline-block;border-radius:20px;padding:5px 12px;font-size:12px;font-weight:600;background:#edf2ff;color:#3346a3;white-space:nowrap}
.asp-upr-cashback-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:20px 0}
.asp-upr-cashback-stats>div{background:#f7f9fc;border:1px solid #e5eaf1;border-radius:10px;padding:18px;min-width:0;box-sizing:border-box}
.asp-upr-cashback-stats>div>span,.asp-upr-cashback-preview>span{display:block;font-size:13px;color:#64748b;margin-bottom:8px;line-height:1.5}
.asp-upr-cashback-stats>div>strong{font-size:19px;display:block;line-height:1.5;color:#334155}.asp-upr-cashback-help{color:#475569;line-height:1.65}
.asp-upr-cashback .woocommerce-Price-amount,.asp-upr-cashback .woocommerce-Price-currencySymbol,.asp-upr-cashback .woocommerce-Price-amount bdi{display:inline;font-size:inherit;font-weight:inherit;color:inherit;margin:0;padding:0;line-height:inherit;white-space:nowrap}
.asp-upr-cashback-form{padding:22px;border:1px solid #e2e8f0;border-radius:12px;margin:22px 0;background:#fff}
.asp-upr-cashback-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;gap:24px}
.asp-upr-cashback-form label{display:block;font-weight:600;margin-bottom:8px}.asp-upr-cashback-form input:not([type=hidden]),.asp-upr-cashback-form textarea{width:100%;max-width:100%;padding:11px 12px;border:1px solid #cbd5e1;border-radius:7px;box-sizing:border-box}
.asp-upr-cashback-form small{display:block;margin-top:7px;color:#64748b;font-size:12px;line-height:1.5}.asp-upr-cashback-preview{display:flex;flex-direction:column;justify-content:center;border-radius:9px;background:#eef6f1;padding:18px;box-sizing:border-box}.asp-upr-cashback-preview output{display:block;font-size:25px;font-weight:700;color:#166534;line-height:1.3}
.asp-upr-cashback-history{margin-top:30px;border-top:1px solid #e2e8f0;padding-top:24px}.asp-upr-cashback-filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:18px}.asp-upr-cashback-filters select{width:auto;min-width:140px;padding:9px 12px;border:1px solid #cbd5e1;border-radius:6px}
.asp-upr-cashback-table{overflow-x:auto}.asp-upr-cashback-table table{min-width:620px}.asp-upr-cashback-table code{display:inline-block;background:#f1f5f9;padding:5px 8px;border-radius:5px;user-select:all}
.asp-upr-cashback-status-paid,.asp-upr-cashback-status-awarded{background:#eaf7ee;color:#166534}.asp-upr-cashback-status-pending{background:#fff4db;color:#92400e}.asp-upr-cashback-status-rejected{background:#fef0ef;color:#b42318}
@media(max-width:700px){.asp-upr-cashback-stats,.asp-upr-cashback-fields{grid-template-columns:1fr}.asp-upr-cashback .asp-upr-cashback-heading{align-items:flex-start;flex-direction:column}.asp-upr-cashback-form{padding:16px}}

/* Product referral link generator. */
.asp-upr-referral-generator{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:18px;margin:20px 0}.asp-upr-referral-generator>label{display:block;margin:0;font-weight:600;color:#334155}.asp-upr-referral-generator>label>span:first-child{display:block;margin-bottom:8px;font-size:14px}.asp-upr-referral-generator-row{display:flex}.asp-upr-referral-box .asp-upr-referral-target{width:100%;min-width:0;box-sizing:border-box;border:1px solid #cbd5e1;border-radius:6px;background:#fff;padding:10px 12px;font-size:15px;height:44px}.asp-upr-referral-target[aria-invalid=true]{border-color:#dc2626}.asp-upr-referral-generator-actions{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap}.asp-upr-referral-generator-actions button{min-height:44px}.asp-upr-referral-reset{background:#fff;color:#475569;border:1px solid #cbd5e1;border-radius:6px;padding:10px 14px;cursor:pointer;font-size:14px}.asp-upr-referral-reset:hover{background:#eef2f7;color:#334155}.asp-upr-referral-generator-help,.asp-upr-referral-generator-notice{grid-column:1/-1;margin:0!important;font-size:14px;line-height:1.6}.asp-upr-referral-generator-help{color:#64748b}.asp-upr-referral-generator-notice{color:#15803d}.asp-upr-referral-generator-notice:empty{display:none}.asp-upr-referral-generator-notice.is-error{color:#b91c1c}

/* Standalone "My Points" page (templates/myaccount/points-page-template-1.php, -template-2.php, -login-required.php).
   ASP_UPR_My_Account::suppress_sidebar_on_points_page() already drops the sidebar from the page
   on Storefront by reusing its own is_active_sidebar()-driven full-width layout. These rules are
   a best-effort fallback for other themes, scoped to the asp-upr-full-width-page body class that
   class also adds on this page, targeting the sidebar/content container names most WordPress
   themes use; a theme with different markup may need its own override. */
body.asp-upr-full-width-page #secondary,
body.asp-upr-full-width-page .widget-area,
body.asp-upr-full-width-page .sidebar{display:none}
body.asp-upr-full-width-page #primary,
body.asp-upr-full-width-page #content,
body.asp-upr-full-width-page .site-main,
body.asp-upr-full-width-page .content-area{float:none;margin:0;width:100%}

.asp-upr-points-page{margin:0 auto;max-width:1200px}

/* Hero: stays inside the normal content column rather than breaking out to the viewport width.
   A 100vw full-bleed hero assumes the theme's page content spans the whole browser width; many
   themes instead run content next to a sidebar (widgets, search), and a full-bleed element in
   that layout renders behind/under the sidebar column, not above it — so it is avoided here. */
.asp-upr-points-page-hero{background:linear-gradient(135deg,#5b0fc9 0%,#8a2fe0 45%,#c146c9 100%);border-radius:16px;box-shadow:0 14px 34px rgba(91,15,201,.22);color:#fff;margin:1rem 0 2rem;overflow:hidden;position:relative}
.asp-upr-points-page-hero-content{align-items:center;display:flex;flex-wrap:wrap;gap:1.75rem;padding:2.25rem;position:relative;z-index:1}
.asp-upr-points-page-hero-art{height:180px;opacity:.9;pointer-events:none;position:absolute;right:-10px;top:-30px;width:180px;z-index:-1}
.asp-upr-points-page-hero-text{flex:1 1 320px;min-width:260px}
.asp-upr-points-page-eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.08em;margin:0 0 .6rem;opacity:.85;text-transform:uppercase}
.asp-upr-points-page-welcome{color:rgba(255,255,255,.92);font-size:1.15rem;margin:0;max-width:480px}

/* The reused points-summary card, embedded directly in the hero as "glass" stat tiles,
   sharing the hero row with the text column instead of stretching the full hero width. */
.asp-upr-points-page-hero-stats{flex:1 1 320px;min-width:260px}
.asp-upr-points-page-hero-stats .asp-upr-card{background:transparent;border:0;box-shadow:none;margin:0;padding:0}
.asp-upr-points-page-hero-stats .asp-upr-card h2{display:none}
.asp-upr-points-page-hero-stats .asp-upr-stat-tiles{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));margin:0}
.asp-upr-points-page-hero-stats .asp-upr-stat-tile{background:rgba(255,255,255,.14);backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.3);border-radius:12px}
.asp-upr-points-page-hero-stats .asp-upr-stat-tile-label{color:rgba(255,255,255,.75)}
.asp-upr-points-page-hero-stats .asp-upr-stat-tile-value{color:#fff;font-size:1.75rem}

/* Dashboard: a single stacked column, in reading order (member level, history, cashback,
   referral, preferences). */
.asp-upr-points-page-body{display:flex;flex-direction:column;gap:1.5rem}
.asp-upr-points-page-body>.asp-upr-card{border-top:4px solid #e2e4e8;margin:0;transition:box-shadow .2s ease,transform .2s ease}
.asp-upr-points-page-body>.asp-upr-card:hover{box-shadow:0 10px 26px rgba(16,24,40,.1);transform:translateY(-2px)}
.asp-upr-points-page-body .asp-upr-member-level{border-top-color:#2563eb}
.asp-upr-points-page-body .asp-upr-points-history{border-top-color:#720eec}
.asp-upr-points-page-body .asp-upr-cashback{border-top-color:#16a34a}
.asp-upr-points-page-body .asp-upr-referral-box{border-top-color:#db2777}
.asp-upr-points-page-body .asp-upr-email-unsubscribe{border-top-color:#64748b}

/* The program opt-out card sits above the dashboard body (it must stay visible even when the
   customer has opted out, so it can't live inside the body that hides in that case), but still
   gets the same card accent treatment. */
.asp-upr-points-page .asp-upr-program-participation{border-top:4px solid #d97706}

/* Reward points program toggle (templates/myaccount/program-participation.php). A real switch
   instead of a bare checkbox, with a label/description on the left; also used, unstyled by this
   page-scoped accent, on the My Account "points" endpoint. */
.asp-upr-toggle-row{align-items:center;display:flex;gap:1.5rem;justify-content:space-between}
.asp-upr-toggle-row-text h2{margin:0 0 .4rem}
.asp-upr-toggle-row-description{color:#6b7280;margin:0}
.asp-upr-toggle{cursor:pointer;flex:0 0 auto;position:relative}
.asp-upr-toggle input{height:1px;opacity:0;position:absolute;width:1px}
.asp-upr-toggle-track{background:#cbd5e1;border-radius:999px;display:block;height:28px;position:relative;transition:background .15s ease;width:50px}
.asp-upr-toggle-track::after{background:#fff;border-radius:50%;box-shadow:0 1px 3px rgba(16,24,40,.25);content:"";height:22px;left:3px;position:absolute;top:3px;transition:transform .15s ease;width:22px}
.asp-upr-toggle input:checked+.asp-upr-toggle-track{background:#16a34a}
.asp-upr-toggle input:checked+.asp-upr-toggle-track::after{transform:translateX(22px)}
.asp-upr-toggle input:focus-visible+.asp-upr-toggle-track{box-shadow:0 0 0 3px rgba(114,14,236,.3)}

.asp-upr-points-page-login-card{margin:0 auto;max-width:420px;padding:2.5rem 2rem;text-align:center}
.asp-upr-points-page-login-message{color:#50575e;font-size:1rem;line-height:1.6;margin:0 0 1.5rem}
.asp-upr-points-page-login-button{padding:.75rem 2rem}
.asp-upr-points-page-login-register{color:#6b7280;font-size:.9rem;margin:1.5rem 0 0}
.asp-upr-points-page-tabbed{margin-top:2rem}
.asp-upr-points-page-tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}
.asp-upr-points-page-tab{background:#fff;border:1px solid #e2e4e8;border-radius:999px;color:#50575e;cursor:pointer;font-size:.9rem;font-weight:600;padding:.6rem 1.25rem;transition:background .15s ease,border-color .15s ease,color .15s ease}
.asp-upr-points-page-tab:hover{border-color:#720eec;color:#720eec}
.asp-upr-points-page-tab.is-active{background:#720eec;border-color:#720eec;color:#fff}
.asp-upr-points-page-tab.is-active:hover{background:#5b0fc9;border-color:#5b0fc9;color:#fff}
.asp-upr-points-page-panel[hidden]{display:none}

@media(max-width:600px){
	.asp-upr-points-page-hero-content{padding:1.75rem 1.25rem}
	.asp-upr-points-page-hero-art{height:120px;opacity:.4;right:-15px;top:-15px;width:120px}
	.asp-upr-points-page-welcome{font-size:1rem}
	.asp-upr-points-page-hero-stats .asp-upr-stat-tile-value{font-size:1.6rem}
	.asp-upr-points-page-tabs{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch}
	.asp-upr-points-page-tab{flex:0 0 auto}
	.asp-upr-toggle-row{align-items:flex-start;flex-direction:column;gap:1rem}
}
@media(max-width:760px){.asp-upr-referral-generator{grid-template-columns:1fr}.asp-upr-referral-generator-actions{align-items:center}.asp-upr-referral-generator-actions button{flex:1 1 auto}}