/* Base mechanics; template-specific design follows in the packaged asset. */
.gmt { --gmt-columns: 3; --gmt-bg: #fff; --gmt-ink: #172333; --gmt-muted: #627184; --gmt-line: #dbe2e9; --gmt-accent: #2860d9; --gmt-up: #087f5b; --gmt-down: #c1374d; --gmt-height: 64px; color: var(--gmt-ink); background: var(--gmt-bg); border-block: 1px solid var(--gmt-line); font-size: 12px; position: relative; isolation: isolate; }
.gmt *, .gmt *::before, .gmt *::after { box-sizing: border-box; }
.gmt [hidden] { display: none !important; }
.gmt-inner { max-width: 1440px; margin: auto; padding: 0 28px; min-width: 0; }
.gmt-viewport { flex: 1 1 0; min-width: 0; overflow: auto; direction: ltr; scrollbar-width: thin; }
.gmt-track, .gmt-group { display: flex; align-items: center; width: max-content; min-width: 100%; }
.gmt-group { min-width: 0; flex-shrink: 0; }
.gmt-ready .gmt-viewport { overflow: hidden; }
.gmt-ready .gmt-track { position: relative; min-height: var(--gmt-height); }
.gmt-page { position: absolute; inset: 0; display: grid; grid-template-columns: repeat(var(--gmt-columns), minmax(0, 1fr)); align-items: center; background: var(--gmt-bg); }
.gmt:not([data-mode="marquee"]):not([data-mode="reverse"]):not(.gmt-static).gmt-ready .gmt-track { width: 100%; }
.gmt-quote { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; column-gap: 8px; row-gap: 4px; align-content: center; align-items: center; min-width: 0; padding: 10px 18px; height: var(--gmt-height); border-inline-end: 1px solid var(--gmt-line); color: var(--gmt-ink); text-decoration: none; font-variant-numeric: tabular-nums; line-height: 1.2; }
.gmt-track > .gmt-quote, .gmt-group > .gmt-quote { width: 246px; flex-shrink: 0; }
.gmt-symbol { font-size: 12px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.gmt-price { font-size: 13px; font-weight: 650; grid-column: 2; grid-row: 2; white-space: nowrap; }
.gmt-badge { grid-column: 1; grid-row: 1 / 3; color: var(--gmt-muted); font-size: 10px; font-family: ui-monospace, monospace; }
.gmt-change { grid-column: 3; grid-row: 1 / 3; font-size: 11px; white-space: nowrap; }
.gmt-up { color: var(--gmt-up); }
.gmt-down { color: var(--gmt-down); }
.gmt-flat { color: var(--gmt-muted); }
.gmt-quote:hover { background: color-mix(in srgb, var(--gmt-accent) 6%, transparent); }
.gmt a:focus-visible, .gmt-viewport:focus-visible { outline: 2px solid var(--gmt-accent); outline-offset: -2px; }
.gmt-empty-message { margin: 0; padding: 16px; color: var(--gmt-muted); min-height: var(--gmt-height); display: flex; align-items: center; }
.gmt-browse .gmt-viewport { overflow-x: auto; }
.gmt-browse .gmt-clone { display: none; }
.gmt-browse .gmt-track { transform: none !important; }
@media (max-width: 1100px) { .gmt { --gmt-columns: 2; } .gmt-inner { padding-inline: 20px; } .gmt-quote { padding-inline: 12px; } }
@media (max-width: 700px) {
    .gmt { --gmt-columns: 1; --gmt-height: 58px; }
    .gmt-inner { padding: 0 16px; }
    .gmt-quote { padding-inline: 10px; } .gmt-symbol { font-size: 12px; } .gmt-price { font-size: 14px; }
}
.gmt.gmt-static .gmt-viewport { overflow-x: auto; }
.gmt.gmt-static .gmt-track { width: max-content; transform: none; }
[data-market-ticker-dock][hidden] { display: none !important; }
.gmt.gmt-docked { --gmt-height: 38px; position: fixed; inset-inline: 0; z-index: 25; width: auto; max-width: none; margin: 0; padding: 0; border: 0; border-radius: 0; box-shadow: none; }
.gmt.gmt-docked[data-placement="top"] { top: 0; bottom: auto; padding-top: env(safe-area-inset-top, 0px); border-bottom: 1px solid var(--gmt-line); }
.gmt.gmt-docked[data-placement="bottom"] { top: auto; bottom: 0; padding-bottom: env(safe-area-inset-bottom, 0px); border-top: 1px solid var(--gmt-line); }
.gmt.gmt-docked .gmt-inner { padding-inline: 20px; }
.gmt.gmt-docked .gmt-page { gap: 0; padding: 0; }
.gmt.gmt-docked .gmt-quote:nth-child(n) { display: flex; align-items: center; gap: 10px; height: var(--gmt-height); padding: 0 14px; margin: 0; border: 0; border-inline-end: 1px solid var(--gmt-line); border-radius: 0; background: transparent; box-shadow: none; }
.gmt.gmt-docked .gmt-quote:last-child { border-inline-end: 0; }
.gmt.gmt-docked .gmt-badge { display: none; }
.gmt.gmt-docked .gmt-symbol { font-size: 12px; font-weight: 600; }
.gmt.gmt-docked .gmt-price { margin-inline-start: auto; font-size: 12px; font-weight: 500; letter-spacing: 0; }
.gmt.gmt-docked .gmt-change { padding: 0; border: 0; background: transparent; font-size: 11px; font-weight: 500; }
.gmt.gmt-docked .gmt-empty-message { min-height: var(--gmt-height); padding: 0 14px; font-size: 11px; }
.gmt-has-top-dock { scroll-padding-top: calc(var(--gmt-top-offset, 39px) + 12px); }
.gmt-dock-spacer { display: block; flex: 0 0 auto; width: 100%; pointer-events: none; }
@media (max-width: 700px) {
    .gmt.gmt-docked { --gmt-height: 34px; }
    .gmt.gmt-docked .gmt-inner { padding-inline: 12px; }
    .gmt.gmt-docked .gmt-quote:nth-child(n) { padding-inline: 6px; gap: 9px; }
}
@media (prefers-reduced-motion: reduce) {
    .gmt[data-mode="marquee"] .gmt-viewport, .gmt[data-mode="reverse"] .gmt-viewport { overflow-x: auto; }
    .gmt[data-mode="marquee"] .gmt-track, .gmt[data-mode="reverse"] .gmt-track { transform: none !important; }
    .gmt-clone { display: none; }
}

/* flux */
.gmt-flux { --gmt-columns:4; --gmt-bg:#f4f7fc; --gmt-ink:#193151; --gmt-muted:#637991; --gmt-line:#dce5f2; --gmt-accent:#356cea; --gmt-height:78px; border:0; padding-block:9px; }
.gmt-flux .gmt-page { gap:9px; }
.gmt-flux .gmt-quote { height:64px; border:1px solid #e1e8f2; background:#fff; border-radius:10px; box-shadow:0 3px 9px #17356808; padding-inline:12px; }
.gmt-flux .gmt-badge { width:24px; height:24px; border-radius:7px; background:#edf3ff; display:grid; place-items:center; color:#3267d8; }
@media(max-width:1100px) { .gmt-flux { --gmt-columns:2; } }
@media(max-width:700px) { .gmt-flux { --gmt-columns:1; padding-block:6px; } .gmt-flux .gmt-quote { height:54px; } }
