/* PlayGuy Offers: offer cards, promo-code rows, sticky box, mobile claim bar.
   Falls back to plain colours when the PlayGuy theme variables are absent. */

.pg-offer,
.pg-row {
	background: var(--cs-color-widgets-background, #ffffff);
	border: 1px solid var(--cs-color-contrast-200, #e9ecef);
	border-radius: var(--pg-radius, 12px);
	padding: 18px 20px;
	margin: 0 0 16px;
}

.pg-offer > :last-child,
.pg-row > :last-child {
	margin-bottom: 0;
}

.pg-listing__heading {
	margin-top: 0;
}

/* Cards */
.pg-offer .pg-offer__name,
h3.pg-offer__name {
	font-size: 1.05rem;
	font-weight: 700;
	margin: 0 0 8px;
	line-height: 1.3;
}

.pg-offer .pg-offer__deal {
	font-size: 1.3rem;
	font-weight: 700;
	line-height: 1.25;
	letter-spacing: -0.02em;
	margin: 0 0 10px;
}

.pg-offer .pg-offer__text {
	font-size: 0.92rem;
	margin: 0 0 12px;
}

.pg-offer__code,
.pg-row__code {
	font-size: 0.85rem;
	color: var(--cs-color-contrast-600, #6c757d);
	margin: 0 0 12px;
}

.pg-offer .pg-offer__code {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	background: var(--cs-color-contrast-100, #f5f5f5);
	border-radius: 8px;
	padding: 8px 10px;
}

.pg-offer__code code,
.pg-row__code code,
.pg-mbar__btn[data-code] {
	font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
	font-size: 0.85rem;
	font-weight: 500;
	letter-spacing: 0.04em;
	padding: 3px 10px;
	border-radius: 6px;
	border: 1px dashed var(--pg-accent, #0f6e56);
	background: var(--pg-tint, #e1f5ee);
	color: var(--pg-tint-contrast, #085041);
	cursor: copy;
	white-space: nowrap;
}

.pg-offer__code code.is-copied,
.pg-row__code code.is-copied {
	background: var(--pg-accent, #0f6e56);
	color: var(--pg-accent-contrast, #ffffff);
	border-style: solid;
}

.pg-offer__cta,
.pg-row__cta {
	margin: 0 0 12px;
}

.pg-btn .wp-block-button__link {
	background: var(--pg-accent, #0f6e56);
	color: var(--pg-accent-contrast, #ffffff);
	border-radius: 999px;
	padding: 11px 22px;
	font-size: 0.95rem;
	font-weight: 500;
	text-decoration: none;
	border: 0;
}

.pg-btn .wp-block-button__link:hover {
	filter: brightness(1.12);
	color: var(--pg-accent-contrast, #ffffff);
}

.pg-offer .pg-offer__cta .wp-block-button,
.pg-offer .pg-offer__cta .wp-block-button__link {
	width: 100%;
	text-align: center;
}

.pg-offer__terms,
.pg-row__terms {
	font-size: 0.74rem;
	line-height: 1.45;
	color: var(--cs-color-contrast-600, #6c757d);
	margin: 0;
}

/* Three cards in a row */
.pg-offers.wp-block-columns {
	gap: 20px;
	align-items: stretch;
}

.pg-offers .wp-block-column {
	display: flex;
}

.pg-offers .pg-offer {
	display: flex;
	flex-direction: column;
	width: 100%;
	margin: 0;
}

.pg-offers .pg-offer .pg-offer__text {
	flex: 1;
}

/* Rows */
.pg-row {
	padding: 14px 20px;
}

.pg-row .pg-row__cols {
	margin: 0;
	gap: 20px;
}

.pg-row .pg-row__name {
	font-size: 1.05rem;
	font-weight: 700;
	margin: 0 0 2px;
}

.pg-row .pg-row__rules,
.pg-row .pg-row__deal small {
	font-size: 0.8rem;
	color: var(--cs-color-contrast-600, #6c757d);
	margin: 0;
}

.pg-row .pg-row__deal {
	font-size: 1rem;
	font-weight: 500;
	margin: 0;
	line-height: 1.35;
}

.pg-row .pg-row__action {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 12px;
	flex-wrap: wrap;
}

.pg-row .pg-row__code,
.pg-row .pg-row__cta {
	margin: 0;
}

.pg-row .pg-row__terms {
	margin-top: 10px;
	padding-top: 10px;
	border-top: 1px solid var(--cs-color-contrast-200, #e9ecef);
}

@media (max-width: 781px) {
	.pg-row .pg-row__action {
		justify-content: flex-start;
	}
}

/* Sticky sidebar box */
.pg-sticky .pg-offer--sticky {
	margin: 0;
}

.pg-offer--sticky .pg-offer__name {
	font-size: 1.05rem;
	font-weight: 700;
	margin: 0 0 8px;
}

.pg-offer--sticky .pg-offer__deal {
	font-size: 1.3rem;
	font-weight: 700;
	line-height: 1.25;
	letter-spacing: -0.02em;
	margin: 0 0 10px;
}

.pg-offer--sticky .pg-offer__code {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	background: var(--cs-color-contrast-100, #f5f5f5);
	border-radius: 8px;
	padding: 8px 10px;
}

.pg-offer--sticky .pg-offer__cta .wp-block-button,
.pg-offer--sticky .pg-offer__cta .wp-block-button__link {
	width: 100%;
	text-align: center;
}

/* Mobile claim bar */
.pg-mbar {
	display: none;
}

@media (max-width: 1023px) {
	.pg-mbar {
		position: fixed;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 9000;
		display: flex;
		align-items: center;
		gap: 12px;
		padding: 10px 16px;
		padding-bottom: calc(10px + env(safe-area-inset-bottom, 0px));
		background: var(--cs-color-header-background, #ffffff);
		border-top: 1px solid var(--cs-color-contrast-200, #e9ecef);
	}

	.pg-mbar__text {
		flex: 1;
		min-width: 0;
		font-size: 0.72rem;
		line-height: 1.3;
		color: var(--cs-color-contrast-600, #6c757d);
	}

	.pg-mbar__text b {
		display: block;
		font-size: 0.86rem;
		color: var(--cs-color-primary, #191919);
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	.pg-mbar__btn {
		flex: none;
		background: var(--pg-accent, #0f6e56);
		color: var(--pg-accent-contrast, #ffffff);
		border-radius: 999px;
		padding: 10px 18px;
		font-weight: 600;
		font-size: 0.9rem;
		text-decoration: none;
		white-space: nowrap;
	}
}
