/* Клуб CHYSTOTIL — front-end. Colours via custom properties, override in the theme. */
:root {
	--chc-accent: #2f6f4f;
	--chc-accent-soft: #e8f2ec;
	--chc-sale: #b4541a;
	--chc-sale-soft: #fbefe6;
	--chc-text-muted: #5f6b66;
	--chc-border: #dfe6e2;
	--chc-radius: 8px;
}

/* Catalog / product hint */
.chc-hint {
	display: block;
	margin-top: 4px;
	font-size: 0.875em;
	line-height: 1.35;
	color: var(--chc-accent);
}
.chc-hint strong { font-weight: 700; }
.chc-hint__cond { color: var(--chc-text-muted); font-size: 0.9em; white-space: nowrap; }
.chc-hint--sale { color: var(--chc-sale); }

/* Cart badges */
.chc-badge {
	display: inline-block;
	margin-left: 6px;
	padding: 1px 6px;
	border-radius: 999px;
	font-size: 0.75em;
	line-height: 1.6;
	white-space: nowrap;
	vertical-align: middle;
}
.chc-badge--club { background: var(--chc-accent-soft); color: var(--chc-accent); }
.chc-badge--sale { background: var(--chc-sale-soft); color: var(--chc-sale); }

/* Cart notices */
.chc-notice {
	margin: 0 0 16px;
	padding: 12px 16px;
	border-left: 4px solid var(--chc-accent);
	border-radius: var(--chc-radius);
	background: var(--chc-accent-soft);
	font-size: 0.95em;
}
.chc-notice--info { border-left-color: #6b8f7d; background: #f3f6f4; }
.chc-saving td { color: var(--chc-accent); font-weight: 600; }
.chc-saving small { font-weight: 400; color: var(--chc-text-muted); }

/* Registration / promo */
.chc-register-hint,
.chc-promo {
	padding: 12px 16px;
	border-radius: var(--chc-radius);
	background: var(--chc-accent-soft);
	color: var(--chc-accent);
	font-weight: 600;
}
.chc-teaser {
	margin-bottom: 20px;
	padding: 12px 16px;
	border: 1px solid var(--chc-border);
	border-radius: var(--chc-radius);
}

/* Status card */
.chc-status {
	margin-bottom: 32px;
	padding: 24px;
	border: 1px solid var(--chc-border);
	border-radius: var(--chc-radius);
}
.chc-status__title { margin: 0 0 4px; font-size: 1.1em; }
.chc-status__value { margin: 0; font-size: 2.6em; font-weight: 700; line-height: 1.1; color: var(--chc-accent); }
.chc-status__cond { margin: 4px 0 12px; color: var(--chc-text-muted); }
.chc-status__hint { margin: 0 0 16px; font-size: 0.9em; }
.chc-progress__sum { margin: 0 0 8px; }
.chc-progress__bar {
	height: 10px;
	overflow: hidden;
	border-radius: 999px;
	background: var(--chc-accent-soft);
}
.chc-progress__fill { display: block; height: 100%; border-radius: inherit; background: var(--chc-accent); }
.chc-progress__next { margin: 8px 0 0; }

/* Tables */
.chc-club__history,
.chc-club__levels { margin-bottom: 32px; }
.chc-levels { width: 100%; border-collapse: collapse; }
.chc-levels th,
.chc-levels td { padding: 10px 12px; border-bottom: 1px solid var(--chc-border); text-align: left; }
.chc-levels__percent { font-weight: 700; color: var(--chc-accent); }
.chc-table .chc-minus { color: var(--chc-sale); }
.chc-rules { margin: 16px 0 0; padding-left: 20px; }
.chc-rules li { margin-bottom: 6px; }

@media (max-width: 600px) {
	.chc-status { padding: 16px; }
	.chc-status__value { font-size: 2.1em; }
	.chc-levels th,
	.chc-levels td { padding: 8px 6px; font-size: 0.9em; }
}
