/* All About Material v1.4.17 — approval-first subscriptions and brand promo codes */

.aam-pricing-card.is-payment-target {
	border-color: color-mix(in srgb, var(--aam-primary) 62%, #fff);
	box-shadow: 0 22px 58px color-mix(in srgb, var(--aam-primary) 15%, transparent);
}

.aam-pricing-approval-note {
	margin: 0 0 28px;
}

.aam-subscribe-form {
	display: grid;
	gap: 12px;
}

.aam-promo-field,
.aam-dashboard-payment-form label {
	display: grid;
	gap: 7px;
	text-align: left;
}

.aam-promo-field > span,
.aam-dashboard-payment-form label > span {
	color: var(--aam-ink);
	font-size: 12px;
	font-weight: 700;
}

.aam-promo-field small,
.aam-dashboard-payment-form small {
	color: var(--aam-muted);
	font-weight: 500;
}

.aam-promo-field input,
.aam-dashboard-payment-form input {
	width: 100%;
	min-height: 46px;
	margin: 0;
	padding: 10px 13px;
	border: 1px solid var(--aam-line);
	border-radius: 9px;
	background: #fff;
	color: var(--aam-ink);
	font: 500 14px "DM Sans", sans-serif;
}

.aam-promo-field input:focus,
.aam-dashboard-payment-form input:focus {
	outline: 0;
	border-color: var(--aam-primary);
	box-shadow: 0 0 0 3px var(--aam-primary-soft);
}

.aam-payment-pending-card {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) minmax(280px, .65fr);
	gap: 22px;
	align-items: center;
	margin-bottom: 25px;
	padding: 26px;
	border: 1px solid color-mix(in srgb, var(--aam-primary) 35%, var(--aam-line));
	border-radius: 16px;
	background: linear-gradient(135deg, #fff, var(--aam-primary-soft));
	box-shadow: 0 18px 45px rgba(15, 31, 49, .07);
}

.aam-payment-pending-icon {
	width: 54px;
	height: 54px;
	display: grid;
	place-items: center;
	border-radius: 50%;
	background: var(--aam-primary);
	color: #fff;
}

.aam-payment-pending-icon .dashicons {
	width: auto;
	height: auto;
	font-size: 24px;
}

.aam-payment-pending-card h2 {
	margin: 3px 0 5px;
	font-size: 24px;
}

.aam-payment-pending-card p {
	margin: 0;
	color: var(--aam-muted);
	font-size: 14px;
}

.aam-dashboard-payment-form {
	display: grid;
	grid-template-columns: minmax(150px, 1fr) auto;
	gap: 10px;
	align-items: end;
}

@media (max-width: 960px) {
	.aam-payment-pending-card {
		grid-template-columns: auto 1fr;
	}

	.aam-dashboard-payment-form {
		grid-column: 1 / -1;
	}
}

@media (max-width: 600px) {
	.aam-payment-pending-card {
		grid-template-columns: 1fr;
		padding: 22px;
	}

	.aam-payment-pending-icon {
		width: 48px;
		height: 48px;
	}

	.aam-dashboard-payment-form {
		grid-template-columns: 1fr;
	}
}
