/* BBCE Ticker — faixa de preços em loop */
.bbce-ticker {
	--bbce-teal: #13b1b9;
	--bbce-up: #22c55e;
	--bbce-down: #ef4444;
	--bbce-txt: #ffffff;
	--bbce-txt-mut: rgba(19, 177, 185, 0.85);

	box-sizing: border-box;
	display: flex;
	align-items: center;
	gap: 16px;
	width: 100%;
	background: #001016;
	border-top: 1px solid rgba(19, 177, 185, 0.15);
	border-bottom: 1px solid rgba(19, 177, 185, 0.15);
	padding: 10px 16px;
	font-family: 'Open Sans', system-ui, -apple-system, 'Segoe UI', sans-serif;
	font-size: 14px;
	line-height: 1.4;
	overflow: hidden;
}

.bbce-ticker *,
.bbce-ticker *::before,
.bbce-ticker *::after {
	box-sizing: border-box;
}

/* Etiqueta de dados fictícios (Modo DEMO) */
.bbce-ticker .bbce-demo-badge {
	flex-shrink: 0;
	padding: 2px 8px;
	border-radius: 4px;
	background: #f59e0b;
	color: #1a1a00;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.06em;
}

.bbce-ticker-viewport {
	flex: 1;
	min-width: 0;
	overflow: hidden;
	/* esmaece as bordas para a entrada/saída ficar suave */
	-webkit-mask-image: linear-gradient(to right, transparent, #000 32px, #000 calc(100% - 32px), transparent);
	mask-image: linear-gradient(to right, transparent, #000 32px, #000 calc(100% - 32px), transparent);
}

.bbce-ticker-track {
	display: inline-flex;
	align-items: center;
	white-space: nowrap;
	will-change: transform;
	animation: bbce-ticker-scroll var(--bbce-ticker-duration, 40s) linear infinite;
}

/* pausa quando o mouse está em cima, para leitura */
.bbce-ticker:hover .bbce-ticker-track {
	animation-play-state: paused;
}

@keyframes bbce-ticker-scroll {
	from {
		transform: translateX(0);
	}
	to {
		transform: translateX(-50%);
	}
}

/* acessibilidade: sem animação para quem prefere movimento reduzido */
@media (prefers-reduced-motion: reduce) {
	.bbce-ticker-track {
		animation: none;
	}
}

.bbce-ticker-item {
	display: inline-flex;
	align-items: center;
	gap: 8px;
}

.bbce-ticker-name {
	color: var(--bbce-txt-mut);
	font-weight: 600;
}

.bbce-ticker-price {
	color: var(--bbce-txt);
	font-weight: 700;
}

.bbce-ticker-price.is-up {
	color: var(--bbce-up);
}

.bbce-ticker-price.is-down {
	color: var(--bbce-down);
}

.bbce-ticker-sep {
	color: rgba(255, 255, 255, 0.25);
	margin: 0 14px;
}

.bbce-ticker-btn {
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	height: 34px;
	padding: 0 18px;
	border: 1px solid var(--bbce-txt);
	border-radius: 8px;
	color: var(--bbce-txt);
	font-weight: 600;
	font-size: 14px;
	text-decoration: none;
	transition: background 0.15s, color 0.15s, border-color 0.15s;
}

.bbce-ticker-btn:hover {
	background: var(--bbce-teal);
	border-color: var(--bbce-teal);
	color: var(--bbce-txt);
}
