/* IXH — top tickers (FX + CNN headlines) */
:root{--tk-fx:26px;--tk-news:24px;--tk-h:calc(var(--tk-fx) + var(--tk-news) + 1px)}
.ixh-ticker{position:relative;z-index:45;background:#05070a;color:#c9d1d8;font:500 11.5px/1 'Inter',system-ui,sans-serif;letter-spacing:.02em;user-select:none}
.tk-row{display:flex;align-items:stretch;overflow:hidden}
.tk-fx{height:var(--tk-fx)}
.tk-news{height:var(--tk-news);border-top:1px solid rgba(212,175,55,.45);background:#080b0f;font-size:11px;color:#aeb7bf}
.tk-tag{flex:none;display:flex;align-items:center;padding:0 12px;font:700 10px/1 'Inter',sans-serif;letter-spacing:.14em;color:#0b0f14;background:#d4af37;position:relative;z-index:2}
.tk-tag-news{background:#c00;color:#fff}
.tk-view{flex:1;min-width:0;overflow:hidden;position:relative;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 30px,#000 calc(100% - 30px),transparent);
          mask-image:linear-gradient(90deg,transparent,#000 30px,#000 calc(100% - 30px),transparent)}
.tk-track{display:flex;width:max-content;height:100%;align-items:center;will-change:transform}
.tk-seg{display:flex;align-items:center;flex:none;white-space:nowrap;padding-inline-start:18px}
.tk-item{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.tk-item b{color:#fff;font-weight:600;letter-spacing:.04em}
.tk-item i{font-style:normal;font-size:10px}
.tk-item i.up{color:#5fd08a}
.tk-item i.down{color:#f07b7b}
.tk-news a.tk-item{color:#c3cbd2;transition:color .2s}
.tk-news a.tk-item:hover{color:#fff;text-decoration:underline}
.tk-news time{color:#d4af37;font-weight:600;font-size:10px}
.tk-sep{margin:0 16px;color:rgba(212,175,55,.6)}
.tk-wait{padding:0 16px;color:#6f7a84}

/* right → left (FX) */
@keyframes tk-rtl{from{transform:translateX(0)}to{transform:translateX(-50%)}}
/* left → right (news) */
@keyframes tk-ltr{from{transform:translateX(-50%)}to{transform:translateX(0)}}
.tk-track.go{animation:tk-rtl 60s linear infinite}
.tk-track.tk-ltr.go{animation-name:tk-ltr}
.tk-view:hover .tk-track{animation-play-state:paused}
@media (prefers-reduced-motion:reduce){.tk-track.go{animation:tk-rtl 120s linear infinite!important}.tk-track.tk-ltr.go{animation-name:tk-ltr!important}}

/* portal (desktop): header is fixed, so pin the ticker and push header down */
@media (min-width:901px){
  .portal .ixh-ticker{position:fixed;top:0;inset-inline:0}
  .portal .p-header{top:var(--tk-h)}
  .portal .p-intro{top:calc(112px + var(--tk-h))}
}
@media (min-width:901px) and (max-height:780px){.portal .p-intro{top:calc(88px + var(--tk-h))}}

@media (max-width:600px){
  :root{--tk-fx:24px;--tk-news:22px}
  .ixh-ticker{font-size:10.5px}
  .tk-tag{padding:0 8px;font-size:9px}
}
