/* BPG Vote Checker 1.0.0 — colours can be changed with these variables. */
:root {
	--bpg-vc-bg: #1b2a4a;
	--bpg-vc-text: #ffffff;
	--bpg-vc-accent: #e6c84f;
	--bpg-vc-warn: #cc7a2e;
	--bpg-vc-free: rgba(255, 255, 255, .14);
	--bpg-vc-ok: #5cb85c;
}

/* Tally strip */
.bpg-vc-strip {
	position: fixed;
	left: 50%;
	bottom: 16px;
	transform: translateX(-50%);
	z-index: 99990;
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 10px 14px 10px 18px;
	max-width: calc(100vw - 32px);
	box-sizing: border-box;
	background: var(--bpg-vc-bg);
	color: var(--bpg-vc-text);
	border: 1px solid var(--bpg-vc-accent);
	border-radius: 999px;
	box-shadow: 0 6px 24px rgba(0, 0, 0, .45);
	font: 600 15px/1.2 system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
}
.bpg-vc-strip[hidden] { display: none; }
.bpg-vc-label { white-space: nowrap; }
.bpg-vc-chips { display: flex; gap: 6px; }
.bpg-vc-chip {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 4px 9px;
	border-radius: 999px;
	background: var(--bpg-vc-free);
	color: inherit;
	font-weight: 600;
	white-space: nowrap;
}
.bpg-vc-chip b { font-weight: 700; }
.bpg-vc-chip i { font-style: normal; opacity: .8; }
.bpg-vc-chip.is-used { background: var(--bpg-vc-accent); color: #1b2a4a; }
.bpg-vc-chip.is-dup { background: var(--bpg-vc-warn); color: #fff; }
.bpg-vc-count { white-space: nowrap; font-weight: 500; opacity: .9; }
.bpg-vc-count.is-done { color: var(--bpg-vc-accent); opacity: 1; }
.bpg-vc-min, .bpg-vc-open {
	cursor: pointer;
	border: 0;
	background: transparent;
	color: inherit;
	font: inherit;
}
.bpg-vc-min { width: 28px; height: 28px; border-radius: 50%; font-size: 20px; line-height: 1; opacity: .7; }
.bpg-vc-min:hover { opacity: 1; background: var(--bpg-vc-free); }
.bpg-vc-strip.is-min { padding: 6px 14px; }
.bpg-vc-open { padding: 4px 0; }

@media (max-width: 640px) {
	.bpg-vc-strip {
		left: 8px;
		right: 8px;
		bottom: 8px;
		transform: none;
		max-width: none;
		flex-wrap: wrap;
		justify-content: center;
		gap: 6px 10px;
		border-radius: 16px;
		font-size: 14px;
	}
	.bpg-vc-strip.is-min { left: auto; right: 8px; border-radius: 999px; }
	.bpg-vc-chip { padding: 3px 7px; }
}

/* Inside Contest Gallery's "Your vote" box */
.bpg-vc-used {
	opacity: .28 !important;
	filter: grayscale(1);
	cursor: not-allowed !important;
	position: relative;
}
.bpg-vc-used::after {
	content: "used";
	position: absolute;
	left: 50%;
	top: 100%;
	transform: translateX(-50%);
	font: 600 10px/1 system-ui, sans-serif;
	color: var(--bpg-vc-accent);
	opacity: 1;
	pointer-events: none;
}
.bpg-vc-note {
	margin: 18px auto 4px;
	text-align: center;
	color: #fff;
	font: 500 14px/1.4 system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
}
.bpg-vc-note-row { margin: 6px 0; display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 6px; }
.bpg-vc-note .bpg-vc-chip { padding: 2px 8px; }

/* Reminder pop-up */
.bpg-vc-modal {
	position: fixed;
	inset: 0;
	z-index: 2147483600;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 16px;
	background: rgba(0, 0, 0, .6);
}
.bpg-vc-box {
	width: 100%;
	max-width: 420px;
	box-sizing: border-box;
	padding: 26px 26px 22px;
	background: var(--bpg-vc-bg);
	color: var(--bpg-vc-text);
	border: 1px solid var(--bpg-vc-accent);
	border-radius: 16px;
	box-shadow: 0 16px 48px rgba(0, 0, 0, .55);
	text-align: center;
	font: 400 16px/1.5 system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
}
.bpg-vc-icon {
	width: 52px;
	height: 52px;
	margin: 0 auto 10px;
	border-radius: 50%;
	background: var(--bpg-vc-warn);
	color: #fff;
	font-size: 28px;
	line-height: 52px;
}
.bpg-vc-modal.is-done .bpg-vc-icon { background: var(--bpg-vc-ok); }
.bpg-vc-box h3 { margin: 0 0 10px; color: var(--bpg-vc-accent); font-size: 20px; line-height: 1.3; }
.bpg-vc-box p { margin: 0 0 10px; }
.bpg-vc-left { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 6px; font-weight: 600; }
.bpg-vc-ok {
	margin-top: 8px;
	min-width: 120px;
	padding: 10px 22px;
	border: 0;
	border-radius: 999px;
	background: var(--bpg-vc-accent);
	color: #1b2a4a;
	font: 700 16px/1 system-ui, sans-serif;
	cursor: pointer;
}
.bpg-vc-ok:focus-visible { outline: 3px solid #fff; outline-offset: 2px; }
