/* Rewards points -- shared styling */

.cthc-rewards-tab {
	max-width: 720px;
}

.cthc-rewards-summary {
	background: #F7F5F0;
	border: 1px solid #E5E1D8;
	border-radius: 12px;
	padding: 24px;
	margin-bottom: 28px;
}

.cthc-rewards-summary__balance {
	display: flex;
	align-items: baseline;
	gap: 8px;
}

.cthc-rewards-summary__number {
	font-size: 36px;
	font-weight: 700;
	color: #1B3624;
	line-height: 1;
}

.cthc-rewards-summary__label {
	font-size: 14px;
	color: #6B7280;
}

.cthc-rewards-summary__value {
	margin: 8px 0 0;
	font-size: 14px;
	color: #4B4B45;
}

.cthc-rewards-summary__note {
	margin: 10px 0 0;
	font-size: 13px;
	color: #7A7A70;
}

.cthc-rewards-summary__note--ready {
	color: #1B3624;
	font-weight: 600;
}

.cthc-rewards-how {
	margin-bottom: 28px;
}

.cthc-rewards-how h3,
.cthc-rewards-history h3 {
	font-size: 17px;
	margin: 0 0 12px;
	color: #1B1B1B;
}

.cthc-rewards-how ul {
	margin: 0;
	padding-left: 20px;
	color: #4B4B45;
	font-size: 14px;
	line-height: 1.7;
}

.cthc-rewards-history__table {
	width: 100%;
	border-collapse: collapse;
	font-size: 14px;
}

.cthc-rewards-history__table th {
	text-align: left;
	padding: 8px 10px;
	border-bottom: 2px solid #E5E1D8;
	color: #6B7280;
	font-weight: 600;
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: 0.03em;
}

.cthc-rewards-history__table td {
	padding: 10px;
	border-bottom: 1px solid #EFEDE6;
}

.cthc-rewards-history__table td.is-positive {
	color: #1B3624;
	font-weight: 700;
}

.cthc-rewards-history__table td.is-negative {
	color: #C1440E;
	font-weight: 700;
}

.cthc-rewards-history__order {
	color: #9C9A93;
	font-size: 12px;
}

.cthc-rewards-history__empty {
	color: #7A7A70;
	font-size: 14px;
}

/* Cart/checkout widget */

.cthc-points-widget {
	background: #F7F5F0;
	border: 1px solid #E5E1D8;
	border-radius: 10px;
	padding: 14px 18px;
	margin: 0 0 20px;
	font-size: 14px;
}

.cthc-points-widget__row {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px 14px;
	justify-content: space-between;
}

.cthc-points-widget__balance {
	color: #1B1B1B;
	font-weight: 600;
}

.cthc-points-widget__btn {
	background: #1B3624;
	color: #FFFFFF;
	border: none;
	border-radius: 6px;
	padding: 8px 14px;
	font-size: 13px;
	font-weight: 600;
	cursor: pointer;
	white-space: nowrap;
}

.cthc-points-widget__btn:hover {
	background: #244A31;
}

.cthc-points-widget__btn--remove {
	background: transparent;
	color: #C1440E;
	border: 1px solid #C1440E;
}

.cthc-points-widget__btn--remove:hover {
	background: #FDEEE8;
}

.cthc-points-widget__applied {
	color: #1B3624;
	font-weight: 600;
	font-size: 13px;
}

.cthc-points-widget__locked {
	color: #7A7A70;
	font-size: 13px;
}

.cthc-points-widget__message {
	margin-top: 8px;
	font-size: 13px;
	min-height: 0;
}

.cthc-points-widget__message.is-error {
	color: #C1440E;
}

.cthc-points-widget__message.is-success {
	color: #1B3624;
}

/* Header badge */

.cthc-points-badge {
	position: fixed;
	top: 90px;
	right: 20px;
	z-index: 9980;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	background: #1B3624;
	color: #FFFFFF;
	text-decoration: none;
	border-radius: 999px;
	padding: 8px 14px 8px 10px;
	font-size: 13px;
	font-weight: 600;
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.15);
}

.cthc-points-badge svg {
	width: 16px;
	height: 16px;
	flex-shrink: 0;
}

.cthc-points-badge:hover {
	background: #244A31;
	color: #FFFFFF;
}

@media (max-width: 780px) {
	.cthc-points-badge {
		top: auto;
		bottom: 90px;
		right: 16px;
	}
}

.cthc-rewards-how__link {
	margin: 14px 0 0;
}
.cthc-rewards-how__link a {
	color: #219244;
	font-weight: 600;
	font-size: 14px;
	text-decoration: none;
}
.cthc-rewards-how__link a:hover {
	text-decoration: underline;
}
