/* ResinCult Partnership Program — frontend (inherits Neve CSS variables when available) */
:root {
	--rcp-accent: var(--nv-primary-accent, #2f5aae);
	--rcp-text: var(--nv-text-color, #272626);
	--rcp-border: var(--nv-light-bg, #e6e6e6);
	--rcp-bg: #fff;
	--rcp-soft: #f7f8fa;
	--rcp-ok: #1e8e3e;
	--rcp-warn: #b26a00;
	--rcp-bad: #c62828;
	--rcp-radius: 8px;
}

.rcp-card, .rcp-box {
	background: var(--rcp-bg);
	border: 1px solid var(--rcp-border);
	border-radius: var(--rcp-radius);
	padding: 18px 20px;
	margin: 0 0 20px;
	color: var(--rcp-text);
}
.rcp-card h3, .rcp-card h4 { margin-top: 0; }
.rcp-muted { opacity: .75; font-size: .9em; }
.rcp-code { font-size: 1.05em; padding: 2px 8px; border-radius: 4px; background: var(--rcp-soft); letter-spacing: .5px; }

.rcp-dl { display: grid; grid-template-columns: max-content 1fr; gap: 8px 16px; margin: 0; }
.rcp-dl dt { font-weight: 600; }
.rcp-dl dd { margin: 0; word-break: break-all; }
@media (max-width: 600px) { .rcp-dl { grid-template-columns: 1fr; } .rcp-dl dt { margin-top: 8px; } }

.rcp-copy-field { display: flex; gap: 8px; align-items: stretch; }
.rcp-copy-input { flex: 1; min-width: 0; }
.rcp-btn-link { background: none; border: 0; color: var(--rcp-accent); cursor: pointer; padding: 0 4px; text-decoration: underline; }
.rcp-toast { display: inline-block; margin-left: 8px; font-size: .85em; color: var(--rcp-ok); }

.rcp-stats { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 12px; }
.rcp-stat { background: var(--rcp-soft); border-radius: var(--rcp-radius); padding: 12px; display: flex; flex-direction: column; gap: 4px; }
.rcp-stat span { font-size: .8em; text-transform: uppercase; letter-spacing: .4px; opacity: .75; }
.rcp-stat strong { font-size: 1.25em; }
.rcp-stat--ok strong { color: var(--rcp-ok); }
.rcp-stat--warn strong { color: var(--rcp-warn); }
.rcp-expiry-note { color: var(--rcp-warn); font-weight: 600; margin-top: 12px; }

.rcp-badge { display: inline-block; padding: 2px 8px; border-radius: 20px; font-size: .78em; font-weight: 600; background: #eceff1; color: #37474f; }
.rcp-badge--approved, .rcp-badge--available, .rcp-badge--credited, .rcp-badge--active { background: #e6f4ea; color: var(--rcp-ok); }
.rcp-badge--pending, .rcp-badge--locked { background: #fff4e0; color: var(--rcp-warn); }
.rcp-badge--rejected, .rcp-badge--reversed, .rcp-badge--expired, .rcp-badge--suspended, .rcp-badge--deactivated { background: #fdecea; color: var(--rcp-bad); }

.rcp-share__menu { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.rcp-share__menu[hidden] { display: none; }
.rcp-share__btn { display: inline-block; padding: 8px 14px; border-radius: 20px; color: #fff !important; text-decoration: none !important; border: 0; cursor: pointer; font-size: .9em; line-height: 1.2; }
.rcp-share__btn--whatsapp { background: #25d366; }
.rcp-share__btn--facebook { background: #1877f2; }
.rcp-share__btn--instagram { background: linear-gradient(45deg, #f58529, #dd2a7b, #8134af); }
.rcp-share__btn--twitter { background: #111; }
.rcp-share__btn--copy { background: var(--rcp-accent); }

.rcp-batches { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 12px; margin-bottom: 20px; }
.rcp-batch { border: 1px solid var(--rcp-border); border-left: 4px solid var(--rcp-ok); border-radius: var(--rcp-radius); padding: 12px; font-size: .92em; line-height: 1.6; }
.rcp-batch--locked { border-left-color: var(--rcp-warn); }
.rcp-batch--expired, .rcp-batch--reversed, .rcp-batch--depleted { border-left-color: #b0bec5; opacity: .75; }
.rcp-batch__coins { font-size: 1.3em; font-weight: 700; }
.rcp-pos { color: var(--rcp-ok); }
.rcp-neg { color: var(--rcp-bad); }
.rcp-table { width: 100%; }

.rcp-combo { border: 2px dashed var(--rcp-accent); background: var(--rcp-soft); margin-top: 16px; }
.rcp-combo[hidden] { display: none; }
.rcp-combo__title { color: var(--rcp-accent); margin-bottom: 6px; }
.rcp-combo__items { list-style: none; margin: 0 0 12px; padding: 0; }
.rcp-combo__item { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; padding: 8px 0; border-bottom: 1px solid var(--rcp-border); }
.rcp-combo__item label { display: flex; align-items: center; gap: 8px; margin: 0; cursor: pointer; flex: 1 1 260px; }
.rcp-combo__item img { width: 44px; height: 44px; object-fit: cover; border-radius: 4px; }
.rcp-combo__variation { max-width: 100%; }
.rcp-combo__benefit strong { color: var(--rcp-ok); }
.rcp-combo__msg { margin-left: 10px; font-size: .9em; }

.rcp-redeem__row { display: flex; gap: 8px; flex-wrap: wrap; }
.rcp-redeem__input { max-width: 140px; }
.rcp-redeem__applied { color: var(--rcp-ok); font-weight: 600; margin: 8px 0 0; }
.rcp-referral-notice strong { margin-left: 6px; }
.rcp-total-savings th, .rcp-total-savings td { color: var(--rcp-ok); }
.rcp-block-prefix { margin-bottom: 16px; }
.rcp-applied { color: var(--rcp-ok); }
