/* RMC Wedding Sale Store Credit — front end. Private tokens; inherits the site font (IBM Plex Sans). */
.rmc-wsc-account,
.rmc-wsc-box,
.rmc-wsc-order-msg,
.rmc-wsc-notice {
	--rwsc-navy: #17324D;
	--rwsc-copper: #E0913D;
	--rwsc-copper-text: #9A5A1A;
	--rwsc-body: #5A6472;
	--rwsc-muted: #646E7C;
	--rwsc-line: #E8EBEF;
	--rwsc-surface: #FBFCFD;
	--rwsc-success: #1D7A4F;
	font-family: inherit;
	box-sizing: border-box;
}

/* ---- My Account ---- */
.rmc-wsc-account__title { color: var(--rwsc-navy); font-size: 24px; font-weight: 600; margin: 0 0 20px; line-height: 1.25; }
.rmc-wsc-balances { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin: 0 0 12px; }
.rmc-wsc-balance { border: 1px solid var(--rwsc-line); border-radius: 18px; padding: 20px 22px; background: #fff; display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.rmc-wsc-balance--available { border-color: var(--rwsc-navy); }
.rmc-wsc-balance__label { font-size: 13px; font-weight: 500; color: var(--rwsc-muted); }
.rmc-wsc-balance__amt { font-size: 30px; font-weight: 600; color: var(--rwsc-navy); line-height: 1.1; font-variant-numeric: tabular-nums; }
.rmc-wsc-balance--pending .rmc-wsc-balance__amt { color: var(--rwsc-copper-text); }
.rmc-wsc-account__note { color: var(--rwsc-body); font-size: 15px; margin: 8px 0; }
.rmc-wsc-account__note--warn { color: #8A3B12; }
.rmc-wsc-account__fine { color: var(--rwsc-muted); font-size: 13px; margin: 4px 0 24px; }
.rmc-wsc-account__sub { color: var(--rwsc-navy); font-size: 18px; font-weight: 600; margin: 8px 0 12px; }
.rmc-wsc-table-wrap { overflow-x: auto; max-width: 100%; }
.rmc-wsc-table { width: 100%; border-collapse: collapse; font-size: 14px; }
.rmc-wsc-table th { text-align: left; color: var(--rwsc-muted); font-weight: 500; font-size: 13px; border-bottom: 1px solid var(--rwsc-line); padding: 10px 12px 10px 0; }
.rmc-wsc-table td { border-bottom: 1px solid var(--rwsc-line); padding: 12px 12px 12px 0; color: var(--rwsc-body); vertical-align: top; }
.rmc-wsc-table .rmc-wsc-num { text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; color: var(--rwsc-navy); }
.rmc-wsc-status { display: inline-block; border-radius: 999px; padding: 2px 10px; font-size: 12px; font-weight: 500; background: #F1F3F6; color: var(--rwsc-navy); }
.rmc-wsc-status--pending { background: rgba(224, 145, 61, .12); color: var(--rwsc-copper-text); }
.rmc-wsc-status--available { background: rgba(29, 122, 79, .08); color: var(--rwsc-success); }
.rmc-wsc-status--used, .rmc-wsc-status--reversed { background: #F1F3F6; color: var(--rwsc-muted); }
.rmc-wsc-dash { color: var(--rwsc-body); }

.rmc-wsc-notice,
.rmc-wsc-order-msg {
	border: 1px solid var(--rwsc-line);
	border-left: 3px solid var(--rwsc-copper);
	border-radius: 8px;
	background: var(--rwsc-surface);
	color: var(--rwsc-navy);
	padding: 14px 16px;
	margin: 0 0 20px;
	font-size: 15px;
	line-height: 1.5;
}
.rmc-wsc-notice--ok { border-left-color: var(--rwsc-success); }

/* ---- Checkout box (hardened against FunnelKit + theme field/checkbox layers) ---- */
html body #rmc-wsc-box.rmc-wsc-box {
	border: 1px solid var(--rwsc-line) !important;
	border-radius: 8px !important;
	background: var(--rwsc-surface) !important;
	padding: 14px 16px !important;
	margin: 0 0 16px !important;
	text-align: left !important;
}
html body #rmc-wsc-box .rmc-wsc-box__line { margin: 0 0 8px !important; color: var(--rwsc-body) !important; font-size: 14px !important; }
html body #rmc-wsc-box.rmc-wsc-box--pending .rmc-wsc-box__line { margin: 0 !important; }
html body #rmc-wsc-box .rmc-wsc-box__amt { color: var(--rwsc-navy) !important; font-weight: 600 !important; }
html body #rmc-wsc-box label.rmc-wsc-box__toggle {
	display: flex !important;
	align-items: center !important;
	gap: 10px !important;
	position: static !important;
	float: none !important;
	text-align: left !important;
	text-transform: none !important;
	letter-spacing: normal !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	color: var(--rwsc-navy) !important;
	margin: 0 !important;
	padding: 0 !important;
	cursor: pointer !important;
	min-height: 0 !important;
}
html body #rmc-wsc-box input#rmc-wsc-apply {
	position: static !important;
	float: none !important;
	text-align: left !important;
	opacity: 1 !important;
	appearance: auto !important;
	-webkit-appearance: checkbox !important;
	width: 18px !important;
	height: 18px !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	flex: 0 0 auto !important;
	accent-color: var(--rwsc-navy);
}
html body #rmc-wsc-box input#rmc-wsc-apply:focus-visible { outline: 2px solid var(--rwsc-copper) !important; outline-offset: 2px !important; }

@media (max-width: 640px) {
	.rmc-wsc-balances { grid-template-columns: 1fr; }
	.rmc-wsc-balance__amt { font-size: 26px; }
}
