/* Visitor Counter - front-end styles */

.vc-counter {
	--vc-accent: #2271b1;
	--vc-bg: #ffffff;
	--vc-fg: #1d2327;
	--vc-muted: #646970;
	--vc-border: #dcdcde;
	--vc-digit-top: #23282d;
	--vc-digit-bottom: #32373c;
	--vc-digit-fg: #ffffff;

	box-sizing: border-box;
	max-width: 100%;
	padding: 14px 16px;
	color: var(--vc-fg);
	background: var(--vc-bg);
	border: 1px solid var(--vc-border);
	border-radius: 10px;
	line-height: 1.4;
}

.vc-counter *,
.vc-counter *::before,
.vc-counter *::after {
	box-sizing: border-box;
}

.vc-theme-dark {
	--vc-bg: #1d2327;
	--vc-fg: #f0f0f1;
	--vc-muted: #a7aaad;
	--vc-border: #3c434a;
	--vc-digit-top: #101315;
	--vc-digit-bottom: #1b2024;
}

@media (prefers-color-scheme: dark) {
	.vc-theme-auto {
		--vc-bg: #1d2327;
		--vc-fg: #f0f0f1;
		--vc-muted: #a7aaad;
		--vc-border: #3c434a;
		--vc-digit-top: #101315;
		--vc-digit-bottom: #1b2024;
	}
}

.vc-theme-plain {
	--vc-bg: transparent;
	--vc-fg: inherit;
	--vc-muted: inherit;
	--vc-border: transparent;
	padding: 0;
	border: 0;
	border-radius: 0;
	color: inherit;
}

.vc-theme-plain .vc-label {
	opacity: 0.75;
}

.vc-counter .vc-title {
	margin: 0 0 10px;
	font-weight: 600;
}

.vc-counter .vc-items {
	margin: 0;
	padding: 0;
	list-style: none;
}

.vc-counter .vc-item {
	margin: 0;
	padding: 0;
	list-style: none;
}

.vc-counter .vc-label {
	color: var(--vc-muted);
}

.vc-counter .vc-value {
	font-variant-numeric: tabular-nums;
	font-weight: 600;
}

/* List */
.vc-layout-list .vc-item {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 16px;
	padding: 7px 0;
	border-bottom: 1px solid var(--vc-border);
}

.vc-layout-list .vc-item:first-child {
	padding-top: 0;
}

.vc-layout-list .vc-item:last-child {
	padding-bottom: 0;
	border-bottom: 0;
}

.vc-layout-list .vc-value {
	color: var(--vc-accent);
}

/* Cards */
.vc-layout-cards .vc-items {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(110px, 1fr));
	gap: 10px;
}

.vc-layout-cards .vc-item {
	display: flex;
	flex-direction: column;
	gap: 2px;
	padding: 12px;
	text-align: center;
	border: 1px solid var(--vc-border);
	border-top: 3px solid var(--vc-accent);
	border-radius: 8px;
}

.vc-layout-cards .vc-value {
	order: -1;
	font-size: 1.7em;
	line-height: 1.15;
	color: var(--vc-fg);
}

.vc-layout-cards .vc-label {
	font-size: 0.85em;
}

/* Digits */
.vc-layout-digits .vc-items {
	display: flex;
	flex-wrap: wrap;
	gap: 14px 22px;
}

.vc-layout-digits .vc-item {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.vc-layout-digits .vc-label {
	font-size: 0.8em;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.vc-digits {
	display: inline-flex;
	gap: 3px;
}

.vc-digit {
	display: inline-block;
	min-width: 1.5em;
	padding: 0.4em 0.25em;
	font: 600 1.3em/1 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
	text-align: center;
	color: var(--vc-digit-fg);
	background: linear-gradient(to bottom, var(--vc-digit-top) 50%, var(--vc-digit-bottom) 50%);
	border-bottom: 2px solid var(--vc-accent);
	border-radius: 4px;
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.06);
}

/* Inline */
.vc-layout-inline {
	display: inline-block;
	padding: 8px 14px;
}

.vc-layout-inline .vc-items {
	display: flex;
	flex-wrap: wrap;
	gap: 2px 18px;
}

.vc-layout-inline .vc-label::after {
	content: ":";
}

.vc-layout-inline .vc-value {
	color: var(--vc-fg);
}

.vc-layout-inline.vc-theme-plain {
	display: block;
	padding: 0;
}

/* Widget areas often style lists; keep ours clean. */
.widget .vc-counter .vc-items,
.widget .vc-counter .vc-item {
	margin: 0;
	list-style: none;
}
