/* PartnerPay Affiliate Area, login and registration.
   Every rule is scoped under .pp-affiliate (body class set only on those pages).
   Selectors come from AffiliateWP 2.37.0's rendered markup (saved during discovery, 2026-10-11).
   Overrides AffiliateWP's assets/css/forms.css where it sets borders, greys and table padding. */

.pp-affiliate .pp-app {
	min-height: 60vh;
}

/* ======================================================================
   Logged-out: login + registration on a forest band
   ====================================================================== */
.pp-affiliate .pp-auth {
	background: var(--pp-forest);
	color: var(--pp-paper);
	padding: var(--pp-space-16) 0 var(--pp-space-24);
}

.pp-affiliate .pp-auth__inner {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr);
	gap: var(--pp-space-16);
	align-items: start;
}

.pp-affiliate .pp-auth__intro {
	padding-top: var(--pp-space-6);
}

.pp-affiliate .pp-auth__intro .pp-mark {
	width: 56px;
	height: 56px;
	margin-bottom: var(--pp-space-8);
}

.pp-affiliate .pp-auth__title {
	font-size: var(--pp-fs-h2);
	margin-bottom: var(--pp-space-6);
}

.pp-affiliate .pp-auth__intro p {
	color: var(--pp-moss-light);
	font-size: 1.125rem;
}

.pp-affiliate .pp-auth__intro .pp-auth__switch {
	color: var(--pp-paper);
	font-size: 1rem;
	margin-top: var(--pp-space-8);
}

.pp-affiliate .pp-auth__switch a {
	font-weight: 600;
	color: var(--pp-lime);
}

.pp-affiliate .pp-auth__panel {
	background: var(--pp-white);
	color: var(--pp-forest);
	border-radius: var(--pp-radius-panel);
	padding: var(--pp-space-8);
}

.pp-affiliate .pp-auth__panel > :last-child,
.pp-affiliate .pp-auth__panel .affwp-form {
	margin-bottom: 0;
}

@media (max-width: 820px) {
	.pp-affiliate .pp-auth {
		padding: var(--pp-space-8) 0 var(--pp-space-12);
	}

	.pp-affiliate .pp-auth__inner {
		grid-template-columns: minmax(0, 1fr);
		gap: var(--pp-space-8);
	}

	.pp-affiliate .pp-auth__intro {
		padding-top: 0;
	}

	.pp-affiliate .pp-auth__intro .pp-mark {
		width: 44px;
		height: 44px;
		margin-bottom: var(--pp-space-4);
	}
}

@media (max-width: 480px) {
	.pp-affiliate .pp-auth__panel {
		padding: var(--pp-space-6) var(--pp-space-4);
	}
}

/* ======================================================================
   Forms: login, registration, settings, URL generator
   ====================================================================== */
.pp-affiliate .affwp-form fieldset {
	border: 0;
	margin: 0;
	padding: 0;
	min-width: 0;
}

.pp-affiliate .affwp-form legend {
	font-family: var(--pp-font-display);
	font-weight: 600;
	font-size: var(--pp-fs-h3);
	letter-spacing: var(--pp-tracking-display);
	padding: 0;
	margin-bottom: var(--pp-space-6);
}

.pp-affiliate .affwp-form p,
.pp-affiliate .affwp-form .affwp-wrap {
	max-width: none;
	margin: 0 0 var(--pp-space-6);
}

.pp-affiliate .affwp-form label,
.pp-affiliate .affwp-card__content--form label {
	display: block;
	margin-bottom: var(--pp-space-2);
	font-weight: 600;
	font-size: 0.9375rem;
	color: var(--pp-forest);
}

.pp-affiliate .affwp-form label .required {
	font-weight: 400;
	color: var(--pp-moss);
}

.pp-affiliate .affwp-form input[type="text"],
.pp-affiliate .affwp-form input[type="email"],
.pp-affiliate .affwp-form input[type="password"],
.pp-affiliate .affwp-form input[type="url"],
.pp-affiliate .affwp-form input[type="number"],
.pp-affiliate .affwp-form input[type="tel"],
.pp-affiliate .affwp-form select,
.pp-affiliate .affwp-form textarea,
.pp-affiliate .affwp-affiliate-link__input,
.pp-affiliate .pp-copy__input,
.pp-affiliate #affwp-affiliate-dashboard input[type="text"]:not([readonly]) {
	display: block;
	width: 100%;
	min-height: 44px;
	padding: 0.55rem 0.85rem;
	border: 1px solid var(--pp-rule);
	border-radius: var(--pp-radius-input);
	background: var(--pp-white);
	color: var(--pp-forest);
	font-family: var(--pp-font-body);
	font-size: 1rem;
	line-height: 1.4;
	box-shadow: none;
	transition: border-color 0.15s ease;
}

.pp-affiliate .affwp-form textarea {
	min-height: 7.5rem;
	resize: vertical;
}

.pp-affiliate .affwp-form input:hover,
.pp-affiliate .affwp-form select:hover,
.pp-affiliate .affwp-form textarea:hover {
	border-color: var(--pp-moss);
}

.pp-affiliate .affwp-form input:focus-visible,
.pp-affiliate .affwp-form select:focus-visible,
.pp-affiliate .affwp-form textarea:focus-visible,
.pp-affiliate .affwp-affiliate-link__input:focus-visible,
.pp-affiliate .pp-copy__input:focus-visible {
	outline: none;
	border-color: var(--pp-forest);
	box-shadow: var(--pp-focus);
}

/* Errors: red text, matching field border. */
.pp-affiliate .affwp-form input[aria-invalid="true"],
.pp-affiliate .affwp-form textarea[aria-invalid="true"],
.pp-affiliate .affwp-form .affwp-error-field,
.pp-affiliate .affwp-form input:user-invalid,
.pp-affiliate .affwp-form textarea:user-invalid {
	border-color: var(--pp-error);
}

.pp-affiliate .affwp-errors {
	margin: 0 0 var(--pp-space-6);
	padding: var(--pp-space-4);
	border-radius: var(--pp-radius-input);
	background: var(--pp-error-bg);
	color: var(--pp-error);
	font-weight: 500;
}

.pp-affiliate .affwp-errors p,
.pp-affiliate .affwp-error {
	margin: 0;
	color: var(--pp-error);
}

.pp-affiliate .affwp-errors p + p {
	margin-top: var(--pp-space-2);
}

/* Checkbox rows (Remember me, notifications, terms) */
.pp-affiliate .affwp-form .affwp-user-remember,
.pp-affiliate .affwp-form label:has(> input[type="checkbox"]) {
	display: inline-flex;
	align-items: center;
	gap: var(--pp-space-2);
	font-weight: 500;
	margin: 0;
}

.pp-affiliate .affwp-form input[type="checkbox"],
.pp-affiliate .affwp-form input[type="radio"] {
	width: 18px;
	height: 18px;
	margin: 0;
	accent-color: var(--pp-forest);
}

/* Buttons: AffiliateWP uses .button and input[type=submit]. Forest fill on light panels. */
.pp-affiliate .affwp-form input[type="submit"],
.pp-affiliate .affwp-form button[type="submit"],
.pp-affiliate #affwp-affiliate-dashboard .button,
.pp-affiliate #affwp-affiliate-dashboard button:not(.affwp-tooltip):not(.affwp-copy-button):not(.affwp-custom-link-action),
.pp-affiliate .affwp-form .button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 0.6rem 1.5rem;
	border: 1.5px solid var(--pp-forest);
	border-radius: var(--pp-radius-pill);
	background: var(--pp-forest);
	color: var(--pp-paper);
	font-family: var(--pp-font-body);
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.2;
	text-decoration: none;
	cursor: pointer;
	box-shadow: none;
	transition: background-color 0.15s ease, border-color 0.15s ease;
}

.pp-affiliate .affwp-form input[type="submit"]:hover,
.pp-affiliate .affwp-form button[type="submit"]:hover,
.pp-affiliate #affwp-affiliate-dashboard .button:hover,
.pp-affiliate .affwp-form .button:hover {
	background: var(--pp-pine);
	border-color: var(--pp-pine);
}

.pp-affiliate .affwp-form input[type="submit"]:focus-visible,
.pp-affiliate #affwp-affiliate-dashboard .button:focus-visible,
.pp-affiliate #affwp-affiliate-dashboard button:focus-visible {
	outline: none;
	box-shadow: var(--pp-focus);
}

/* Login/registration submit spans the panel */
.pp-affiliate .pp-auth__panel .affwp-form input[type="submit"],
.pp-affiliate .pp-auth__panel .affwp-form button[type="submit"] {
	width: 100%;
}

.pp-affiliate .affwp-lost-password {
	margin-bottom: 0 !important;
	font-size: var(--pp-fs-small);
}

.pp-affiliate .affwp-lost-password a {
	color: var(--pp-forest);
	font-weight: 500;
}

/* ======================================================================
   Notices (no icon fonts): tinted status pairs
   ====================================================================== */
.pp-affiliate .affwp-notice,
.pp-affiliate .affwp-stripe-notice,
.pp-affiliate .affwp-unauthorized-access {
	display: block;
	max-width: none;
	margin: 0 0 var(--pp-space-6);
	padding: var(--pp-space-4) var(--pp-space-6);
	border: 0;
	border-radius: var(--pp-radius-input);
	background: var(--pp-paid-bg);
	color: var(--pp-paid);
	font-weight: 500;
}

.pp-affiliate .affwp-notice-error,
.pp-affiliate .affwp-stripe-notice--error {
	background: var(--pp-error-bg);
	color: var(--pp-error);
}

.pp-affiliate .affwp-stripe-notice--warning {
	background: var(--pp-pending-bg);
	color: var(--pp-pending);
}

.pp-affiliate .affwp-stripe-notice--info {
	background: var(--pp-neutral-bg);
	color: var(--pp-forest);
}

.pp-affiliate .affwp-notice a,
.pp-affiliate .affwp-stripe-notice a {
	color: inherit;
	font-weight: 600;
}

.pp-affiliate .affwp-notice::before,
.pp-affiliate .affwp-stripe-notice::before {
	display: none;
}

/* ======================================================================
   Dashboard shell
   ====================================================================== */
.pp-affiliate .pp-dash {
	padding-top: var(--pp-space-12);
	padding-bottom: var(--pp-space-24);
}

/* Header strip */
.pp-affiliate .pp-dash-head {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	justify-content: space-between;
	gap: var(--pp-space-6) var(--pp-space-12);
	padding-bottom: var(--pp-space-8);
	margin-bottom: var(--pp-space-8);
	border-bottom: 1px solid var(--pp-rule);
}

.pp-affiliate .pp-dash-head__title {
	font-size: var(--pp-fs-h2);
	margin-bottom: var(--pp-space-2);
}

.pp-affiliate .pp-dash-head__name {
	margin: 0;
	color: var(--pp-moss);
	font-weight: 500;
}

.pp-affiliate .pp-dash-head__link {
	flex: 0 1 30rem;
	min-width: 0;
}

.pp-affiliate .pp-dash-head__label {
	display: block;
	font-size: var(--pp-fs-small);
	font-weight: 600;
	color: var(--pp-moss);
	margin-bottom: var(--pp-space-2);
}

.pp-affiliate .pp-copy {
	display: flex;
	gap: var(--pp-space-2);
}

.pp-affiliate .pp-copy__input {
	flex: 1;
	min-width: 0;
	font-variant-numeric: tabular-nums;
}

.pp-affiliate .pp-copy__btn {
	flex-shrink: 0;
}

.pp-affiliate .pp-copy__status {
	min-height: 1.5em;
	margin: var(--pp-space-1) 0 0;
	font-size: var(--pp-fs-small);
	color: var(--pp-paid);
}

/* Tabs left, content right. Every dashboard child except the tab list sits in column 2.
   row-gap stays 0 because the tab list spans implicit rows; children carry their own margins. */
.pp-affiliate #affwp-affiliate-dashboard {
	display: grid;
	grid-template-columns: 13.5rem minmax(0, 1fr);
	column-gap: var(--pp-space-12);
	align-items: start;
}

.pp-affiliate #affwp-affiliate-dashboard > * {
	grid-column: 2;
	min-width: 0;
}

.pp-affiliate #affwp-affiliate-dashboard-tabs {
	grid-column: 1;
	grid-row: 1 / span 40;
	position: sticky;
	top: var(--pp-space-6);
	display: flex;
	flex-direction: column;
	gap: var(--pp-space-1);
	list-style: none;
	margin: 0;
	padding: 0;
	border: 0;
}

.pp-affiliate .admin-bar #affwp-affiliate-dashboard-tabs,
.admin-bar.pp-affiliate #affwp-affiliate-dashboard-tabs {
	top: calc(32px + var(--pp-space-6));
}

.pp-affiliate .affwp-affiliate-dashboard-tab {
	margin: 0;
	padding: 0;
	border: 0;
	background: none;
	float: none;
}

.pp-affiliate .affwp-affiliate-dashboard-tab a {
	display: block;
	padding: 0.6rem 1rem;
	border-radius: var(--pp-radius-pill);
	color: var(--pp-forest);
	font-weight: 500;
	text-decoration: none;
	white-space: nowrap;
	border: 0;
	background: transparent;
	transition: background-color 0.15s ease;
}

.pp-affiliate .affwp-affiliate-dashboard-tab a:hover {
	background: var(--pp-neutral-bg);
}

.pp-affiliate .affwp-affiliate-dashboard-tab.active a {
	background: var(--pp-lime);
	color: var(--pp-forest);
	font-weight: 600;
}

/* Tab content */
.pp-affiliate .affwp-tab-content {
	margin-bottom: var(--pp-space-8);
}

.pp-affiliate .affwp-tab-content h4 {
	font-size: var(--pp-fs-h3);
	margin-bottom: var(--pp-space-6);
}

.pp-affiliate .affwp-tab-content h3 {
	font-size: var(--pp-fs-h3);
	margin-bottom: var(--pp-space-2);
}

.pp-affiliate .affwp-tab-content p {
	color: var(--pp-moss);
}

.pp-affiliate .affwp-tab-content a:not(.button) {
	color: var(--pp-forest);
	font-weight: 500;
}

/* Inactive / pending affiliate messages sit directly in the dashboard */
.pp-affiliate #affwp-affiliate-dashboard > p {
	grid-column: 1 / -1;
	padding: var(--pp-space-4) var(--pp-space-6);
	border-radius: var(--pp-radius-input);
	background: var(--pp-pending-bg);
	color: var(--pp-pending);
	font-weight: 500;
	max-width: none;
}

@media (max-width: 820px) {
	.pp-affiliate .pp-dash {
		padding-top: var(--pp-space-8);
	}

	.pp-affiliate .pp-dash-head {
		align-items: stretch;
		flex-direction: column;
	}

	.pp-affiliate .pp-dash-head__link {
		flex-basis: auto;
	}

	.pp-affiliate #affwp-affiliate-dashboard {
		grid-template-columns: minmax(0, 1fr);
	}

	.pp-affiliate #affwp-affiliate-dashboard > *,
	.pp-affiliate #affwp-affiliate-dashboard-tabs {
		grid-column: 1;
		grid-row: auto;
	}

	/* Horizontal scrollable pill row, above any notices */
	.pp-affiliate #affwp-affiliate-dashboard-tabs {
		order: -1;
		position: static;
		flex-direction: row;
		gap: var(--pp-space-2);
		overflow-x: auto;
		margin: 0 calc(-1 * var(--pp-space-6)) var(--pp-space-8);
		padding: var(--pp-space-1) var(--pp-space-6);
		scrollbar-width: none;
	}

	.pp-affiliate #affwp-affiliate-dashboard-tabs::-webkit-scrollbar {
		display: none;
	}

	.pp-affiliate .affwp-affiliate-dashboard-tab {
		flex-shrink: 0;
	}

	.pp-affiliate .affwp-affiliate-dashboard-tab a {
		border: 1px solid var(--pp-rule);
		background: var(--pp-white);
	}

	.pp-affiliate .affwp-affiliate-dashboard-tab.active a {
		border-color: var(--pp-lime);
	}
}

@media (max-width: 480px) {
	.pp-affiliate #affwp-affiliate-dashboard-tabs {
		margin-left: calc(-1 * var(--pp-space-4));
		margin-right: calc(-1 * var(--pp-space-4));
		padding-left: var(--pp-space-4);
		padding-right: var(--pp-space-4);
	}
}

/* ======================================================================
   Tables: referrals, payouts, visits, campaigns, coupons, creatives list
   ====================================================================== */
.pp-affiliate table.affwp-table {
	width: 100%;
	margin: 0 0 var(--pp-space-8);
	border: 1px solid var(--pp-rule);
	border-collapse: separate;
	border-spacing: 0;
	border-radius: var(--pp-radius-panel);
	background: var(--pp-white);
	font-variant-numeric: tabular-nums;
	overflow: hidden;
}

.pp-affiliate table.affwp-table th,
.pp-affiliate table.affwp-table td {
	padding: 0.85rem 1.25rem;
	border: 0;
	border-bottom: 1px solid var(--pp-rule);
	color: var(--pp-forest);
	background: transparent;
	text-align: left;
	vertical-align: middle;
	font-size: 0.9375rem;
}

.pp-affiliate table.affwp-table th {
	font-size: var(--pp-fs-small);
	font-weight: 600;
	color: var(--pp-moss);
	background: var(--pp-white);
}

.pp-affiliate table.affwp-table tbody tr:last-child td {
	border-bottom: 0;
}

/* Amounts right-aligned */
.pp-affiliate table.affwp-table .referral-amount,
.pp-affiliate table.affwp-table .payout-amount,
.pp-affiliate table.affwp-table [data-th="Amount"] {
	text-align: right;
	white-space: nowrap;
}

.pp-affiliate table.affwp-table .affwp-table-no-data {
	padding: var(--pp-space-8) 1.25rem;
	color: var(--pp-moss);
	text-align: left;
}

.pp-affiliate .affwp-payout-status-detail {
	color: var(--pp-moss);
}

@media (max-width: 820px) {
	/* Scroll wrapper: the tab content scrolls sideways, the table keeps full width */
	.pp-affiliate .affwp-tab-content {
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}

	.pp-affiliate table.affwp-table th,
	.pp-affiliate table.affwp-table td {
		white-space: nowrap;
	}

	.pp-affiliate table.affwp-table .affwp-table-no-data {
		white-space: normal;
	}
}

/* ======================================================================
   Statistics tab: the two count tables become white stat panels.
   Labels come from AffiliateWP's own data-th attribute; the thead is hidden visually only.
   ====================================================================== */
.pp-affiliate #affwp-affiliate-dashboard-referral-counts table.affwp-table,
.pp-affiliate #affwp-affiliate-dashboard-earnings-stats table.affwp-table {
	display: block;
	border: 0;
	background: transparent;
	overflow: visible;
	margin-bottom: var(--pp-space-4);
}

.pp-affiliate #affwp-affiliate-dashboard-referral-counts thead,
.pp-affiliate #affwp-affiliate-dashboard-earnings-stats thead {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	white-space: nowrap;
}

.pp-affiliate #affwp-affiliate-dashboard-referral-counts tbody,
.pp-affiliate #affwp-affiliate-dashboard-earnings-stats tbody {
	display: block;
}

.pp-affiliate #affwp-affiliate-dashboard-referral-counts tr,
.pp-affiliate #affwp-affiliate-dashboard-earnings-stats tr {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(11rem, 1fr));
	gap: var(--pp-space-4);
}

.pp-affiliate #affwp-affiliate-dashboard-referral-counts td,
.pp-affiliate #affwp-affiliate-dashboard-earnings-stats td {
	display: flex;
	flex-direction: column;
	gap: var(--pp-space-2);
	padding: var(--pp-space-6);
	border: 1px solid var(--pp-rule);
	border-radius: var(--pp-radius-panel);
	background: var(--pp-white);
	font-family: var(--pp-font-display);
	font-weight: 600;
	font-size: 2rem;
	letter-spacing: var(--pp-tracking-display);
	line-height: 1.1;
	white-space: normal;
}

.pp-affiliate #affwp-affiliate-dashboard-referral-counts td::before,
.pp-affiliate #affwp-affiliate-dashboard-earnings-stats td::before {
	content: attr(data-th);
	display: block; /* AffiliateWP's responsive-table CSS hides this on desktop */
	order: -1;
	font-family: var(--pp-font-body);
	font-weight: 500;
	font-size: var(--pp-fs-small);
	letter-spacing: 0;
	color: var(--pp-moss);
	line-height: 1.4;
}

/* Payouts tab summary uses the same panel treatment */
.pp-affiliate .affwp-payout-summary {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(11rem, 1fr));
	gap: var(--pp-space-4);
	margin-bottom: var(--pp-space-8);
}

.pp-affiliate .affwp-payout-summary__stat {
	display: flex;
	flex-direction: column;
	gap: var(--pp-space-2);
	padding: var(--pp-space-6);
	border: 1px solid var(--pp-rule);
	border-radius: var(--pp-radius-panel);
	background: var(--pp-white);
	box-shadow: none;
}

.pp-affiliate .affwp-payout-summary__label {
	font-size: var(--pp-fs-small);
	font-weight: 500;
	color: var(--pp-moss);
}

.pp-affiliate .affwp-payout-summary__value {
	font-family: var(--pp-font-display);
	font-weight: 600;
	font-size: 2rem;
	letter-spacing: var(--pp-tracking-display);
	line-height: 1.1;
	font-variant-numeric: tabular-nums;
	color: var(--pp-forest);
}

/* ======================================================================
   Cards: Affiliate URLs tab (link + custom link generator), Stripe payouts panel
   ====================================================================== */
.pp-affiliate .affwp-card,
.pp-affiliate .affwp-stripe-payouts {
	margin: 0 0 var(--pp-space-6);
	padding: var(--pp-space-6);
	border: 1px solid var(--pp-rule);
	border-radius: var(--pp-radius-panel);
	background: var(--pp-white);
	box-shadow: none;
}

.pp-affiliate .affwp-card__header {
	display: block;
	margin-bottom: var(--pp-space-4);
	padding: 0;
	border: 0;
}

/* Only the affiliate-link card puts its help tooltip beside the heading */
.pp-affiliate .affwp-affiliate-link__header {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: var(--pp-space-4);
}

.pp-affiliate .affwp-card__header p {
	margin: 0;
}

.pp-affiliate .affwp-card__content,
.pp-affiliate .affwp-card__footer {
	padding: 0;
	border: 0;
}

.pp-affiliate .affwp-card__content--form > div {
	margin-bottom: var(--pp-space-4);
}

.pp-affiliate .affwp-card__footer {
	margin-top: var(--pp-space-6);
}

.pp-affiliate .affwp-card__tooltip {
	color: var(--pp-moss);
	flex-shrink: 0;
}

.pp-affiliate .affwp-affiliate-link__display {
	display: flex;
	gap: var(--pp-space-2);
}

.pp-affiliate .affwp-affiliate-link__input {
	flex: 1;
	min-width: 0;
}

.pp-affiliate .affwp-card__content--form input[type="url"],
.pp-affiliate .affwp-card__content--form input[type="text"] {
	display: block;
	width: 100%;
	min-height: 44px;
	padding: 0.55rem 0.85rem;
	border: 1px solid var(--pp-rule);
	border-radius: var(--pp-radius-input);
	background: var(--pp-white);
	color: var(--pp-forest);
	font-family: var(--pp-font-body);
	font-size: 1rem;
}

@media (max-width: 480px) {
	.pp-affiliate .affwp-affiliate-link__display,
	.pp-affiliate .pp-copy {
		flex-direction: column;
	}
}

/* Stripe payouts panel (Settings tab) */
.pp-affiliate .affwp-stripe-payouts__status {
	display: inline-block;
	max-width: 100%;
	padding: 0.45rem 0.85rem;
	border-radius: var(--pp-radius-input); /* holds a sentence + account ID, so not a pill */
	line-height: 1.5;
	overflow-wrap: anywhere;
	font-size: var(--pp-fs-small);
	font-weight: 600;
	background: var(--pp-neutral-bg);
	color: var(--pp-neutral);
}

.pp-affiliate .affwp-stripe-payouts__status--success {
	background: var(--pp-paid-bg);
	color: var(--pp-paid);
}

.pp-affiliate .affwp-stripe-payouts__status--warning {
	background: var(--pp-pending-bg);
	color: var(--pp-pending);
}

.pp-affiliate .affwp-stripe-payouts__status--error {
	background: var(--pp-error-bg);
	color: var(--pp-error);
}

.pp-affiliate .affwp-stripe-payouts__actions {
	display: flex;
	flex-wrap: wrap;
	gap: var(--pp-space-3);
	margin-top: var(--pp-space-4);
}

.pp-affiliate .affwp-stripe-payouts__link {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	padding: 0.6rem 1.35rem;
	border-radius: var(--pp-radius-pill);
	background: var(--pp-lime);
	color: var(--pp-forest) !important;
	font-weight: 600;
	text-decoration: none;
}

.pp-affiliate .affwp-stripe-payouts__link:hover {
	background: var(--pp-lime-hover);
}

/* "Choose a different country" is the secondary action */
.pp-affiliate .affwp-stripe-payouts__link--reonboard {
	background: transparent;
	border: 1.5px solid var(--pp-forest);
}

.pp-affiliate .affwp-stripe-payouts__link--reonboard:hover {
	background: var(--pp-neutral-bg);
}

.pp-affiliate .affwp-stripe-payouts__link:focus-visible {
	outline: none;
	box-shadow: var(--pp-focus);
}

.pp-affiliate .affwp-stripe-payouts__account-info {
	font-variant-numeric: tabular-nums;
	color: var(--pp-moss);
}

/* Graphs + date filters */
.pp-affiliate .affwp-graphs-date-options,
.pp-affiliate .affwp-creatives-filters {
	display: flex;
	flex-wrap: wrap;
	gap: var(--pp-space-3);
	align-items: center;
	margin-bottom: var(--pp-space-6);
}

.pp-affiliate .affwp-graph {
	padding: var(--pp-space-6);
	border: 1px solid var(--pp-rule);
	border-radius: var(--pp-radius-panel);
	background: var(--pp-white);
}

.pp-affiliate #affwp-affiliate-dashboard select,
.pp-affiliate .affwp-graphs-date-options input[type="text"] {
	min-height: 44px;
	padding: 0.5rem 0.85rem;
	border: 1px solid var(--pp-rule);
	border-radius: var(--pp-radius-input);
	background: var(--pp-white);
	color: var(--pp-forest);
	font-family: var(--pp-font-body);
	font-size: 1rem;
}
