/* Quiet continuous motion; a readable original row remains when scripting is unavailable. */
.strip.market-ticker{max-width:none;margin:0;padding:0;overflow:hidden;background:var(--surface);border-bottom:1px solid var(--line)}
.ticker-frame{display:flex;align-items:center;max-width:var(--page);margin:0 auto;padding:0 20px;min-height:46px;gap:16px}
.ticker-label{flex:0 0 auto;display:flex;align-items:center;gap:7px;font-size:10px;font-weight:750;letter-spacing:.06em;color:var(--muted);white-space:nowrap}
.ticker-label:before{content:"";width:5px;height:5px;border-radius:50%;background:#719bc9}
.ticker-viewport{position:relative;flex:1;min-width:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;scroll-behavior:auto;overscroll-behavior-x:contain;mask-image:linear-gradient(to right,transparent,#000 18px,#000 calc(100% - 18px),transparent)}
.ticker-viewport::-webkit-scrollbar{display:none}
.ticker-track{display:flex;align-items:center;width:max-content;min-height:44px}
.market-ticker .strip-in{display:flex;align-items:center;flex:0 0 auto;width:max-content;min-width:0;max-width:none;margin:0;overflow:visible;gap:0;padding:0 24px 0 0}
.market-ticker .chip{height:24px;padding:0 20px;gap:9px;border:0;border-right:1px solid var(--line);border-radius:0;background:transparent;font-size:12px;white-space:nowrap}
.market-ticker .chip em{font-size:11px;font-weight:500;letter-spacing:-.015em}
.market-ticker .chip b{font-size:12px;font-weight:750;border-radius:2px;font-variant-numeric:tabular-nums}
.market-ticker .chip.key{border-color:var(--line)}
.market-ticker .chip[hidden]{display:none}
.ticker-controls{display:flex;align-items:center;gap:2px;flex:0 0 auto;padding-left:6px;border-left:1px solid var(--line)}
.ticker-button{display:grid;place-items:center;width:25px;height:28px;background:transparent;border:0;border-radius:4px;color:var(--muted);cursor:pointer}
.ticker-button:hover{color:var(--text);background:var(--surface-2)}
.ticker-button:disabled{opacity:.35;cursor:default}
.ticker-button[aria-pressed=true]{color:var(--text)}
.ticker-button:focus-visible,.ticker-viewport:focus-visible{outline:2px solid #719bc9;outline-offset:-2px}
.ticker-viewport[data-ticker-empty=true]:after{content:attr(data-loading);position:absolute;left:20px;top:13px;font-size:11px;color:var(--muted)}
@media(max-width:640px){.ticker-frame{gap:7px;padding:0 12px;min-height:42px}.ticker-label{font-size:9px;letter-spacing:0;gap:5px}.market-ticker .chip{padding:0 13px;gap:7px}.ticker-track{min-height:42px}.ticker-button{width:23px}.ticker-controls{gap:0;padding-left:3px}.ticker-viewport{mask-image:linear-gradient(to right,transparent,#000 10px,#000 calc(100% - 10px),transparent)}}
@media(prefers-reduced-motion:reduce){.ticker-viewport{scroll-behavior:auto}}

/* Small but legible prices, with usable controls on touch screens. */
.ticker-label{font-size:12px;letter-spacing:0}
.market-ticker .chip em{font-size:12px}
.market-ticker .chip b{font-size:13px}
.ticker-button{width:32px;height:34px;color:var(--text-2);border:1px solid var(--line)}
.ticker-controls{gap:4px}
@media(max-width:640px){
  .ticker-frame{gap:8px;padding-inline:12px}
  .ticker-label{font-size:11px}
  .ticker-button{width:36px;height:44px}
  .ticker-controls{gap:2px;padding-left:6px}
  .ticker-controls .ticker-button:first-child,.ticker-controls .ticker-button:last-child{display:none}
  .ticker-viewport[data-ticker-empty=true]:after{font-size:12px}
}
