[data-crypto-ticker] {
  --ticker-surface: var(--panel, #07111f);
  --ticker-raised: #0c192b;
  --ticker-text: var(--text, #f8fbff);
  --ticker-muted: var(--muted, #a6b1c5);
  --ticker-border: rgba(137, 166, 204, .15);
  --ticker-highlight: rgba(255, 255, 255, .065);
  --ticker-accent: var(--cyan, #24dfff);
  --ticker-gain: #47d18c;
  --ticker-loss: #ff8a80;
  position: relative;
  min-width: 0;
  max-width: 100%;
  margin: 0;
  padding: 0;
  overflow: hidden;
  border-block: 1px solid var(--ticker-border);
  background: linear-gradient(180deg, var(--ticker-raised), var(--ticker-surface));
  box-shadow: inset 0 1px 0 var(--ticker-highlight);
  color: var(--ticker-text);
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color-scheme: dark;
  isolation: isolate;
}
[data-crypto-ticker] *, [data-crypto-ticker] *::before, [data-crypto-ticker] *::after { box-sizing: border-box; }
[data-crypto-ticker] .bbn-ticker-viewport { max-width: 100%; overflow: hidden; scrollbar-color: var(--ticker-accent) var(--ticker-surface); }
/* Equal, stable copies keep price updates from restarting the scrolling loop. */
[data-crypto-ticker] .bbn-ticker-track { display: flex; width: max-content; animation: bbn-crypto-scroll 80s linear infinite; }
[data-crypto-ticker] .bbn-ticker-group { display: flex; flex: none; margin: 0; padding: 0; list-style: none; }
[data-crypto-ticker] .bbn-ticker-item { flex: none; width: 304px; padding: 16px 20px; border-right: 1px solid var(--ticker-border); }
[data-crypto-ticker] .bbn-ticker-link { display: flex; align-items: center; justify-content: space-between; gap: 14px; min-height: 52px; text-decoration: none; color: var(--ticker-text); }
[data-crypto-ticker] .bbn-ticker-identity { display: flex; align-items: center; gap: 10px; min-width: 0; }
[data-crypto-ticker] .bbn-ticker-icon { display: block; flex: none; width: 36px; height: 36px; object-fit: contain; border-radius: 50%; }
[data-crypto-ticker] .bbn-ticker-label { display: grid; gap: 3px; min-width: 0; }
[data-crypto-ticker] .bbn-ticker-symbol { display: block; font-size: 14px; font-weight: 750; line-height: 1.25; letter-spacing: .025em; }
[data-crypto-ticker] .bbn-ticker-name { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--ticker-muted); font-size: 11px; font-weight: 500; line-height: 1.3; }
[data-crypto-ticker] .bbn-ticker-quote { display: grid; justify-items: end; flex: none; min-width: 110px; gap: 6px; text-align: right; white-space: nowrap; font-variant-numeric: tabular-nums lining-nums; line-height: 1.2; }
[data-crypto-ticker] .bbn-ticker-quote strong { font-size: 20px; font-weight: 650; letter-spacing: -.4px; }
[data-crypto-ticker] .bbn-ticker-change { display: inline-flex; align-items: baseline; padding: 3px 6px; border-radius: 5px; background: color-mix(in srgb, var(--ticker-muted) 8%, transparent); color: var(--ticker-muted); font-size: 12px; font-weight: 650; line-height: 1.2; }
[data-crypto-ticker] .bbn-ticker-change small { margin-left: 3px; font-size: 10px; font-weight: 500; }
[data-crypto-ticker] .bbn-ticker-gain { background: color-mix(in srgb, var(--ticker-gain) 10%, transparent); color: var(--ticker-gain); }
[data-crypto-ticker] .bbn-ticker-loss { background: color-mix(in srgb, var(--ticker-loss) 10%, transparent); color: var(--ticker-loss); }
[data-crypto-ticker] :focus-visible { outline: 2px solid var(--ticker-accent); outline-offset: -2px; }
[data-crypto-ticker] .bbn-ticker-viewport:hover .bbn-ticker-track { animation-play-state: paused; }
[data-crypto-ticker] .bbn-ticker-viewport:focus-within { overflow-x: auto; }
[data-crypto-ticker] .bbn-ticker-viewport:focus-within .bbn-ticker-track { animation: none; }
[data-crypto-ticker] .bbn-ticker-viewport:focus-within .bbn-ticker-group[aria-hidden] { display: none; }
html[data-theme="light"] [data-crypto-ticker], body[data-theme="light"] [data-crypto-ticker], [data-crypto-ticker][data-theme="light"] {
  --ticker-surface: #fff;
  --ticker-raised: #f8fbff;
  --ticker-text: #17283c;
  --ticker-muted: #51647c;
  --ticker-border: #cbd8e6;
  --ticker-highlight: rgba(255, 255, 255, .9);
  --ticker-accent: #006776;
  --ticker-gain: #067647;
  --ticker-loss: #b42318;
  color-scheme: light;
}
@keyframes bbn-crypto-scroll { to { transform: translateX(-50%); } }
@media (max-width: 480px) {
  [data-crypto-ticker] .bbn-ticker-item { width: 272px; padding: 14px; }
  [data-crypto-ticker] .bbn-ticker-identity { gap: 8px; }
  [data-crypto-ticker] .bbn-ticker-icon { width: 32px; height: 32px; }
  [data-crypto-ticker] .bbn-ticker-symbol { font-size: 13px; }
  [data-crypto-ticker] .bbn-ticker-name { font-size: 10.5px; }
  [data-crypto-ticker] .bbn-ticker-quote strong { font-size: 18px; }
}
@media (prefers-reduced-motion: reduce) {
  [data-crypto-ticker] .bbn-ticker-track { animation: none; }
  [data-crypto-ticker] .bbn-ticker-viewport { overflow-x: auto; }
  [data-crypto-ticker] .bbn-ticker-group[aria-hidden] { display: none; }
}
