/* the page is the whole document here, not a component inside a framework */
* { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }
body {
  background: #ffffff;
  color: #111111;
  font-family: "IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
  -webkit-font-smoothing: antialiased;
}
.tts-page { max-width: 1080px; margin: 0 auto; padding: 26px 24px 30px; }
@media (max-width: 600px) { .tts-page { padding: 18px 14px 22px; } }

.tts-chart {
  --tts-series: #ff9d00;
  --tts-wash: rgba(255, 157, 0, 0.14);
  --tts-brand: #ffd21e;
  --tts-ink: #111111;
  --tts-ink-2: #5b5952;
  --tts-muted: #8c8a82;
  --tts-grid: #ece9e1;
  --tts-axis: #cfccc2;
  --tts-hairline: rgba(17, 17, 17, 0.10);
  --tts-surface: #ffffff;
  --tts-shadow: rgba(17, 17, 17, 0.18);
  font-family: "IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
  color: var(--tts-ink);
}
.dark .tts-chart {
  --tts-series: #ff9d00;
  --tts-wash: rgba(255, 157, 0, 0.16);
  --tts-ink: #ffffff;
  --tts-ink-2: #c3c2b7;
  --tts-muted: #8c8a82;
  --tts-grid: #2c2c2a;
  --tts-axis: #3a3a37;
  --tts-hairline: rgba(255, 255, 255, 0.11);
  --tts-surface: #232321;
  --tts-shadow: rgba(0, 0, 0, 0.6);
}
.tts-chart h1 { margin-bottom: 4px; }

.tts-eyebrow {
  display: flex; align-items: center; gap: 9px;
  font-family: "IBM Plex Mono", ui-monospace, Menlo, monospace;
  font-size: 11px; letter-spacing: 0.14em; text-transform: uppercase;
  color: var(--tts-muted);
}
.tts-mark {
  width: 11px; height: 11px; border-radius: 3px; flex: none;
  background: var(--tts-brand); border: 1px solid var(--tts-hairline);
}
.tts-chart h1 {
  font-size: 23px; font-weight: 600; letter-spacing: -0.012em; margin: 0;
  color: var(--tts-ink);
}
.tts-totals {
  display: flex; flex-wrap: wrap; align-items: baseline; gap: 10px;
  font-size: 16px; color: var(--tts-ink-2); margin-bottom: 20px;
}
.tts-asof {
  font-family: "IBM Plex Mono", ui-monospace, Menlo, monospace;
  font-size: 14px; color: var(--tts-muted);
}

.tts-totals strong {
  font-size: 20px; font-weight: 600; color: var(--tts-ink);
  font-variant-numeric: tabular-nums;
}
.tts-sep { color: var(--tts-axis); }
.tts-plot { overflow-x: auto; }
.tts-svg { display: block; width: 100%; min-width: 420px; height: auto; }
.tts-bar { transition: opacity 90ms linear; }
.tts-svg:hover .tts-bar { opacity: 0.45; }

/* Hover slots: one per month, drawn above the columns. The highlight path is a
   copy of the column so the hovered one stays at full strength while the rest
   dim; the tooltip is real SVG revealed by :hover, because gr.HTML strips
   scripts and a JS tooltip would never run. */
.tts-slot { cursor: pointer; outline: none; }
.tts-bar-hi, .tts-cross, .tts-tip { opacity: 0; pointer-events: none; }
.tts-slot:hover .tts-bar-hi, .tts-slot:is(:focus-visible,.is-pinned) .tts-bar-hi { opacity: 1; }
.tts-slot:hover .tts-cross, .tts-slot:is(:focus-visible,.is-pinned) .tts-cross { opacity: 1; }
.tts-slot:hover .tts-tip, .tts-slot:is(:focus-visible,.is-pinned) .tts-tip { opacity: 1; }

/* Click (or tab) to a month and its box stays put so the model links inside
   are reachable; while one is pinned, passing the cursor over other months
   must not swap the box out from under the pointer. */
.tts-svg:has(.tts-slot:is(:focus-visible,.is-pinned)) .tts-slot:hover .tts-tip { opacity: 0; }
.tts-svg:has(.tts-slot:is(:focus-visible,.is-pinned)) .tts-slot:is(:focus-visible,.is-pinned) .tts-tip { opacity: 1; }
.tts-svg:has(.tts-slot:is(:focus-visible,.is-pinned)) .tts-slot:hover .tts-bar-hi,
.tts-svg:has(.tts-slot:is(:focus-visible,.is-pinned)) .tts-slot:hover .tts-cross { opacity: 0; }
.tts-svg:has(.tts-slot:is(:focus-visible,.is-pinned)) .tts-slot:is(:focus-visible,.is-pinned) .tts-bar-hi,
.tts-svg:has(.tts-slot:is(:focus-visible,.is-pinned)) .tts-slot:is(:focus-visible,.is-pinned) .tts-cross { opacity: 1; }
.tts-svg:has(.tts-slot:is(:focus-visible,.is-pinned)) .tts-bar { opacity: 0.45; }
.tts-tip-eyebrow {
  fill: var(--tts-muted); font-size: 8.5px; letter-spacing: 0.1em;
  font-family: "IBM Plex Mono", ui-monospace, Menlo, monospace;
}
.tts-tip-link text {
  fill: var(--tts-ink); font-size: 11.5px; font-weight: 500;
  text-decoration: underline; text-underline-offset: 2px;
}
.tts-tip-link:hover text { fill: var(--tts-series); }
.tts-cross { stroke: var(--tts-axis); stroke-width: 1; }
.tts-tip-box {
  fill: var(--tts-surface); stroke: var(--tts-hairline); stroke-width: 1;
  filter: drop-shadow(0 2px 6px var(--tts-shadow));
}
.tts-tip-swatch { fill: var(--tts-series); }
.tts-tip-title { fill: var(--tts-ink); font-size: 21px; font-weight: 600; }
.tts-tip-label { fill: var(--tts-ink-2); font-size: 19px; }
.tts-tip-value {
  fill: var(--tts-ink); font-size: 19px; font-weight: 500; text-anchor: end;
  font-family: "IBM Plex Mono", ui-monospace, Menlo, monospace;
  font-variant-numeric: tabular-nums;
}
.tts-tip-rule { stroke: var(--tts-hairline); stroke-width: 1; }
.tts-tip-note { fill: var(--tts-ink-2); font-size: 18px; }
@media (prefers-reduced-motion: reduce) {
  .tts-bar-hi, .tts-cross, .tts-tip { transition: none; }
}
.tts-tick {
  fill: var(--tts-muted); font-size: 22px;
  font-family: "IBM Plex Mono", ui-monospace, Menlo, monospace;
  font-variant-numeric: tabular-nums;
}
.tts-anno { fill: var(--tts-ink-2); font-size: 11.5px; }
.tts-anno-sub {
  fill: var(--tts-muted); font-size: 11px;
  font-family: "IBM Plex Mono", ui-monospace, Menlo, monospace;
}
.tts-foot { font-size: 12.5px; color: var(--tts-muted); margin: 12px 0 0; max-width: 80ch; }

/* Release pins: a hairline dropped at the release date, numbered at the top.
   The key below resolves the numbers — several releases land within weeks of
   each other, so names on the plot would collide. */
.tts-rel-stem { stroke: var(--tts-axis); stroke-width: 1; opacity: 0.55; }
.tts-rel-pin { fill: var(--tts-surface); stroke: var(--tts-axis); stroke-width: 1; }
.tts-rel-num {
  fill: var(--tts-ink-2); font-size: 9.5px; text-anchor: middle;
  font-family: "IBM Plex Mono", ui-monospace, Menlo, monospace;
}

/* ---- release stream --------------------------------------------------- */
/* Each logo is absolutely placed at its release date as a percentage of the
   1040-unit viewBox, so it tracks the chart at any width. Logos overlap where
   releases cluster; the surface ring keeps them separable, and hover raises
   the one under the cursor above its neighbours. */
.tts-stream {
  position: relative;
  height: 52px;
  margin: 22px 0 0;
  min-width: 420px;
}
.tts-rel {
  position: absolute; left: var(--x); top: 6px;
  transform: translateX(-50%);
  width: 32px; height: 32px;
  text-decoration: none;
  transition: left 240ms cubic-bezier(.2,.8,.3,1);
}
.tts-rel::before {
  content: ""; position: absolute; left: 50%; width: 1px;
  top: -22px; height: 22px;
  background: var(--tts-axis); opacity: 0.3;
  transition: background-color 160ms linear, opacity 160ms linear;
}
.tts-av {
  width: 32px; height: 32px; border-radius: 50%;
  object-fit: cover; display: block;
  background: var(--tts-grid);
  border: 2px solid var(--tts-surface);
  box-shadow: 0 0 0 1px var(--tts-hairline);
  transition: transform 180ms cubic-bezier(.2,.8,.3,1), border-color 180ms linear;
  transform-origin: center bottom;
}
.tts-rel:hover { z-index: 20; }
.tts-rel:hover .tts-av, .tts-rel:focus-visible .tts-av {
  transform: translateY(-5px) scale(1.5);
  border-color: var(--tts-series);
}
.tts-rel:hover::before { background: var(--tts-series); opacity: 1; }

/* hover card, floated above the logo over the chart's lower band */
.tts-card {
  position: absolute; bottom: calc(100% + 16px); left: 50%;
  transform: translateX(-50%) translateY(4px);
  display: flex; flex-direction: column; gap: 1px;
  min-width: 200px; padding: 11px 13px;
  background: var(--tts-surface);
  border: 1px solid var(--tts-hairline); border-radius: 6px;
  box-shadow: 0 4px 16px var(--tts-shadow);
  opacity: 0; pointer-events: none;
  transition: opacity 140ms linear, transform 180ms cubic-bezier(.2,.8,.3,1);
}
.tts-card-start .tts-card { left: 0; transform: translateX(0) translateY(4px); }
.tts-card-end .tts-card { left: auto; right: 0; transform: translateX(0) translateY(4px); }
.tts-rel:hover .tts-card, .tts-rel:focus-visible .tts-card {
  opacity: 1; transform: translateX(-50%) translateY(0);
}
.tts-card-start:hover .tts-card, .tts-card-end:hover .tts-card {
  transform: translateX(0) translateY(0);
}
.tts-card-name { font-size: 16px; font-weight: 600; color: var(--tts-ink); }
.tts-card-id {
  font-family: "IBM Plex Mono", ui-monospace, Menlo, monospace;
  font-size: 13px; color: var(--tts-ink-2); overflow-wrap: anywhere;
}
.tts-card-meta {
  display: flex; justify-content: space-between; gap: 12px; margin-top: 4px;
  padding-top: 5px; border-top: 1px solid var(--tts-hairline);
  font-family: "IBM Plex Mono", ui-monospace, Menlo, monospace;
  font-size: 12.5px; color: var(--tts-muted); white-space: nowrap;
}
.tts-stream-cap {
  margin: 6px 0 0; padding-left: var(--x0, 5.385%);
  font-size: 14px; color: var(--tts-muted);
}
.tts-sr {
  position: absolute; width: 1px; height: 1px; overflow: hidden;
  clip: rect(0 0 0 0); white-space: nowrap;
}
@media (prefers-reduced-motion: reduce) {
  .tts-av, .tts-card { transition: none; }
}
.tts-sub { margin-top: 30px; border-top: 1px solid var(--tts-hairline); padding-top: 18px; }
.tts-sub h2 {
  font-size: 14px; font-weight: 600; margin: 0 0 4px; color: var(--tts-ink);
}
.tts-sub > p { margin: 0 0 10px; font-size: 12.5px; color: var(--tts-ink-2); max-width: 84ch; }
.tts-svg-sub { min-width: 640px; }
.tts-bar-sub { opacity: 0.85; }
.tts-bar-sub:hover { opacity: 1; }
.tts-key { margin-top: 22px; border-top: 1px solid var(--tts-hairline); padding-top: 16px; }
.tts-key h2 {
  font-family: "IBM Plex Mono", ui-monospace, Menlo, monospace;
  font-size: 11px; letter-spacing: 0.14em; text-transform: uppercase;
  color: var(--tts-muted); margin: 0 0 14px; font-weight: 500;
}
.tts-key ol {
  list-style: none; margin: 0; padding: 0;
  display: grid; grid-template-columns: repeat(3, minmax(240px, 1fr)); gap: 11px 28px;
}
.tts-key li {
  display: grid; grid-template-columns: 18px minmax(0, 1fr);
  column-gap: 9px; row-gap: 1px; font-size: 12.5px; align-items: start;
}
.tts-key-num {
  grid-row: span 2;
  width: 17px; height: 17px; border-radius: 50%; margin-top: 1px;
  border: 1px solid var(--tts-axis); color: var(--tts-muted);
  display: inline-flex; align-items: center; justify-content: center;
  font-family: "IBM Plex Mono", ui-monospace, Menlo, monospace; font-size: 9.5px;
}
.tts-key-head { display: flex; align-items: baseline; gap: 8px; min-width: 0; }
.tts-key-date {
  font-family: "IBM Plex Mono", ui-monospace, Menlo, monospace;
  font-size: 11px; color: var(--tts-muted); white-space: nowrap;
}
.tts-key-label { font-weight: 600; color: var(--tts-ink); overflow-wrap: anywhere; }
.tts-key-sub { display: flex; align-items: baseline; gap: 8px; min-width: 0; flex-wrap: wrap; }
.tts-key-id {
  color: var(--tts-ink-2); font-size: 11px; text-decoration: none;
  overflow-wrap: anywhere; border-bottom: 1px solid transparent;
  font-family: "IBM Plex Mono", ui-monospace, Menlo, monospace;
}
.tts-key-id:hover { border-bottom-color: var(--tts-series); color: var(--tts-ink); }
.tts-key-stat {
  color: var(--tts-muted); font-size: 11px; white-space: nowrap;
  font-variant-numeric: tabular-nums;
}
.tts-key-foot { font-size: 11.5px; color: var(--tts-muted); margin: 16px 0 0; max-width: 92ch; }
@media (max-width: 1040px) { .tts-key ol { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 780px) { .tts-key ol { grid-template-columns: 1fr; } }
@media (prefers-reduced-motion: reduce) { .tts-bar { transition: none; } }

.tts-plot:has(.tts-slot-202302:hover) .tts-rel-202302,.tts-plot:has(.tts-slot-202302.is-pinned) .tts-rel-202302{z-index:5;left:calc(var(--xc) + var(--off))}
.tts-plot:has(.tts-slot-202302:hover) .tts-rel-202302 .tts-av,.tts-plot:has(.tts-slot-202302.is-pinned) .tts-rel-202302 .tts-av{transform:translateY(-5px) scale(1.5);border-color:var(--tts-series)}
.tts-plot:has(.tts-slot-202302:hover) .tts-rel-202302::before,.tts-plot:has(.tts-slot-202302.is-pinned) .tts-rel-202302::before{background:var(--tts-series);opacity:1}
.tts-plot:has(.tts-rel-202302:hover) .tts-slot-202302 .tts-bar-hi,.tts-plot:has(.tts-rel-202302:hover) .tts-slot-202302 .tts-cross{opacity:1}
.tts-plot:has(.tts-slot-202305:hover) .tts-rel-202305,.tts-plot:has(.tts-slot-202305.is-pinned) .tts-rel-202305{z-index:5;left:calc(var(--xc) + var(--off))}
.tts-plot:has(.tts-slot-202305:hover) .tts-rel-202305 .tts-av,.tts-plot:has(.tts-slot-202305.is-pinned) .tts-rel-202305 .tts-av{transform:translateY(-5px) scale(1.5);border-color:var(--tts-series)}
.tts-plot:has(.tts-slot-202305:hover) .tts-rel-202305::before,.tts-plot:has(.tts-slot-202305.is-pinned) .tts-rel-202305::before{background:var(--tts-series);opacity:1}
.tts-plot:has(.tts-rel-202305:hover) .tts-slot-202305 .tts-bar-hi,.tts-plot:has(.tts-rel-202305:hover) .tts-slot-202305 .tts-cross{opacity:1}
.tts-plot:has(.tts-slot-202306:hover) .tts-rel-202306,.tts-plot:has(.tts-slot-202306.is-pinned) .tts-rel-202306{z-index:5;left:calc(var(--xc) + var(--off))}
.tts-plot:has(.tts-slot-202306:hover) .tts-rel-202306 .tts-av,.tts-plot:has(.tts-slot-202306.is-pinned) .tts-rel-202306 .tts-av{transform:translateY(-5px) scale(1.5);border-color:var(--tts-series)}
.tts-plot:has(.tts-slot-202306:hover) .tts-rel-202306::before,.tts-plot:has(.tts-slot-202306.is-pinned) .tts-rel-202306::before{background:var(--tts-series);opacity:1}
.tts-plot:has(.tts-rel-202306:hover) .tts-slot-202306 .tts-bar-hi,.tts-plot:has(.tts-rel-202306:hover) .tts-slot-202306 .tts-cross{opacity:1}
.tts-plot:has(.tts-slot-202308:hover) .tts-rel-202308,.tts-plot:has(.tts-slot-202308.is-pinned) .tts-rel-202308{z-index:5;left:calc(var(--xc) + var(--off))}
.tts-plot:has(.tts-slot-202308:hover) .tts-rel-202308 .tts-av,.tts-plot:has(.tts-slot-202308.is-pinned) .tts-rel-202308 .tts-av{transform:translateY(-5px) scale(1.5);border-color:var(--tts-series)}
.tts-plot:has(.tts-slot-202308:hover) .tts-rel-202308::before,.tts-plot:has(.tts-slot-202308.is-pinned) .tts-rel-202308::before{background:var(--tts-series);opacity:1}
.tts-plot:has(.tts-rel-202308:hover) .tts-slot-202308 .tts-bar-hi,.tts-plot:has(.tts-rel-202308:hover) .tts-slot-202308 .tts-cross{opacity:1}
.tts-plot:has(.tts-slot-202310:hover) .tts-rel-202310,.tts-plot:has(.tts-slot-202310.is-pinned) .tts-rel-202310{z-index:5;left:calc(var(--xc) + var(--off))}
.tts-plot:has(.tts-slot-202310:hover) .tts-rel-202310 .tts-av,.tts-plot:has(.tts-slot-202310.is-pinned) .tts-rel-202310 .tts-av{transform:translateY(-5px) scale(1.5);border-color:var(--tts-series)}
.tts-plot:has(.tts-slot-202310:hover) .tts-rel-202310::before,.tts-plot:has(.tts-slot-202310.is-pinned) .tts-rel-202310::before{background:var(--tts-series);opacity:1}
.tts-plot:has(.tts-rel-202310:hover) .tts-slot-202310 .tts-bar-hi,.tts-plot:has(.tts-rel-202310:hover) .tts-slot-202310 .tts-cross{opacity:1}
.tts-plot:has(.tts-slot-202312:hover) .tts-rel-202312,.tts-plot:has(.tts-slot-202312.is-pinned) .tts-rel-202312{z-index:5;left:calc(var(--xc) + var(--off))}
.tts-plot:has(.tts-slot-202312:hover) .tts-rel-202312 .tts-av,.tts-plot:has(.tts-slot-202312.is-pinned) .tts-rel-202312 .tts-av{transform:translateY(-5px) scale(1.5);border-color:var(--tts-series)}
.tts-plot:has(.tts-slot-202312:hover) .tts-rel-202312::before,.tts-plot:has(.tts-slot-202312.is-pinned) .tts-rel-202312::before{background:var(--tts-series);opacity:1}
.tts-plot:has(.tts-rel-202312:hover) .tts-slot-202312 .tts-bar-hi,.tts-plot:has(.tts-rel-202312:hover) .tts-slot-202312 .tts-cross{opacity:1}
.tts-plot:has(.tts-slot-202401:hover) .tts-rel-202401,.tts-plot:has(.tts-slot-202401.is-pinned) .tts-rel-202401{z-index:5;left:calc(var(--xc) + var(--off))}
.tts-plot:has(.tts-slot-202401:hover) .tts-rel-202401 .tts-av,.tts-plot:has(.tts-slot-202401.is-pinned) .tts-rel-202401 .tts-av{transform:translateY(-5px) scale(1.5);border-color:var(--tts-series)}
.tts-plot:has(.tts-slot-202401:hover) .tts-rel-202401::before,.tts-plot:has(.tts-slot-202401.is-pinned) .tts-rel-202401::before{background:var(--tts-series);opacity:1}
.tts-plot:has(.tts-rel-202401:hover) .tts-slot-202401 .tts-bar-hi,.tts-plot:has(.tts-rel-202401:hover) .tts-slot-202401 .tts-cross{opacity:1}
.tts-plot:has(.tts-slot-202404:hover) .tts-rel-202404,.tts-plot:has(.tts-slot-202404.is-pinned) .tts-rel-202404{z-index:5;left:calc(var(--xc) + var(--off))}
.tts-plot:has(.tts-slot-202404:hover) .tts-rel-202404 .tts-av,.tts-plot:has(.tts-slot-202404.is-pinned) .tts-rel-202404 .tts-av{transform:translateY(-5px) scale(1.5);border-color:var(--tts-series)}
.tts-plot:has(.tts-slot-202404:hover) .tts-rel-202404::before,.tts-plot:has(.tts-slot-202404.is-pinned) .tts-rel-202404::before{background:var(--tts-series);opacity:1}
.tts-plot:has(.tts-rel-202404:hover) .tts-slot-202404 .tts-bar-hi,.tts-plot:has(.tts-rel-202404:hover) .tts-slot-202404 .tts-cross{opacity:1}
.tts-plot:has(.tts-slot-202406:hover) .tts-rel-202406,.tts-plot:has(.tts-slot-202406.is-pinned) .tts-rel-202406{z-index:5;left:calc(var(--xc) + var(--off))}
.tts-plot:has(.tts-slot-202406:hover) .tts-rel-202406 .tts-av,.tts-plot:has(.tts-slot-202406.is-pinned) .tts-rel-202406 .tts-av{transform:translateY(-5px) scale(1.5);border-color:var(--tts-series)}
.tts-plot:has(.tts-slot-202406:hover) .tts-rel-202406::before,.tts-plot:has(.tts-slot-202406.is-pinned) .tts-rel-202406::before{background:var(--tts-series);opacity:1}
.tts-plot:has(.tts-rel-202406:hover) .tts-slot-202406 .tts-bar-hi,.tts-plot:has(.tts-rel-202406:hover) .tts-slot-202406 .tts-cross{opacity:1}
.tts-plot:has(.tts-slot-202407:hover) .tts-rel-202407,.tts-plot:has(.tts-slot-202407.is-pinned) .tts-rel-202407{z-index:5;left:calc(var(--xc) + var(--off))}
.tts-plot:has(.tts-slot-202407:hover) .tts-rel-202407 .tts-av,.tts-plot:has(.tts-slot-202407.is-pinned) .tts-rel-202407 .tts-av{transform:translateY(-5px) scale(1.5);border-color:var(--tts-series)}
.tts-plot:has(.tts-slot-202407:hover) .tts-rel-202407::before,.tts-plot:has(.tts-slot-202407.is-pinned) .tts-rel-202407::before{background:var(--tts-series);opacity:1}
.tts-plot:has(.tts-rel-202407:hover) .tts-slot-202407 .tts-bar-hi,.tts-plot:has(.tts-rel-202407:hover) .tts-slot-202407 .tts-cross{opacity:1}
.tts-plot:has(.tts-slot-202408:hover) .tts-rel-202408,.tts-plot:has(.tts-slot-202408.is-pinned) .tts-rel-202408{z-index:5;left:calc(var(--xc) + var(--off))}
.tts-plot:has(.tts-slot-202408:hover) .tts-rel-202408 .tts-av,.tts-plot:has(.tts-slot-202408.is-pinned) .tts-rel-202408 .tts-av{transform:translateY(-5px) scale(1.5);border-color:var(--tts-series)}
.tts-plot:has(.tts-slot-202408:hover) .tts-rel-202408::before,.tts-plot:has(.tts-slot-202408.is-pinned) .tts-rel-202408::before{background:var(--tts-series);opacity:1}
.tts-plot:has(.tts-rel-202408:hover) .tts-slot-202408 .tts-bar-hi,.tts-plot:has(.tts-rel-202408:hover) .tts-slot-202408 .tts-cross{opacity:1}
.tts-plot:has(.tts-slot-202409:hover) .tts-rel-202409,.tts-plot:has(.tts-slot-202409.is-pinned) .tts-rel-202409{z-index:5;left:calc(var(--xc) + var(--off))}
.tts-plot:has(.tts-slot-202409:hover) .tts-rel-202409 .tts-av,.tts-plot:has(.tts-slot-202409.is-pinned) .tts-rel-202409 .tts-av{transform:translateY(-5px) scale(1.5);border-color:var(--tts-series)}
.tts-plot:has(.tts-slot-202409:hover) .tts-rel-202409::before,.tts-plot:has(.tts-slot-202409.is-pinned) .tts-rel-202409::before{background:var(--tts-series);opacity:1}
.tts-plot:has(.tts-rel-202409:hover) .tts-slot-202409 .tts-bar-hi,.tts-plot:has(.tts-rel-202409:hover) .tts-slot-202409 .tts-cross{opacity:1}
.tts-plot:has(.tts-slot-202410:hover) .tts-rel-202410,.tts-plot:has(.tts-slot-202410.is-pinned) .tts-rel-202410{z-index:5;left:calc(var(--xc) + var(--off))}
.tts-plot:has(.tts-slot-202410:hover) .tts-rel-202410 .tts-av,.tts-plot:has(.tts-slot-202410.is-pinned) .tts-rel-202410 .tts-av{transform:translateY(-5px) scale(1.5);border-color:var(--tts-series)}
.tts-plot:has(.tts-slot-202410:hover) .tts-rel-202410::before,.tts-plot:has(.tts-slot-202410.is-pinned) .tts-rel-202410::before{background:var(--tts-series);opacity:1}
.tts-plot:has(.tts-rel-202410:hover) .tts-slot-202410 .tts-bar-hi,.tts-plot:has(.tts-rel-202410:hover) .tts-slot-202410 .tts-cross{opacity:1}
.tts-plot:has(.tts-slot-202411:hover) .tts-rel-202411,.tts-plot:has(.tts-slot-202411.is-pinned) .tts-rel-202411{z-index:5;left:calc(var(--xc) + var(--off))}
.tts-plot:has(.tts-slot-202411:hover) .tts-rel-202411 .tts-av,.tts-plot:has(.tts-slot-202411.is-pinned) .tts-rel-202411 .tts-av{transform:translateY(-5px) scale(1.5);border-color:var(--tts-series)}
.tts-plot:has(.tts-slot-202411:hover) .tts-rel-202411::before,.tts-plot:has(.tts-slot-202411.is-pinned) .tts-rel-202411::before{background:var(--tts-series);opacity:1}
.tts-plot:has(.tts-rel-202411:hover) .tts-slot-202411 .tts-bar-hi,.tts-plot:has(.tts-rel-202411:hover) .tts-slot-202411 .tts-cross{opacity:1}
.tts-plot:has(.tts-slot-202501:hover) .tts-rel-202501,.tts-plot:has(.tts-slot-202501.is-pinned) .tts-rel-202501{z-index:5;left:calc(var(--xc) + var(--off))}
.tts-plot:has(.tts-slot-202501:hover) .tts-rel-202501 .tts-av,.tts-plot:has(.tts-slot-202501.is-pinned) .tts-rel-202501 .tts-av{transform:translateY(-5px) scale(1.5);border-color:var(--tts-series)}
.tts-plot:has(.tts-slot-202501:hover) .tts-rel-202501::before,.tts-plot:has(.tts-slot-202501.is-pinned) .tts-rel-202501::before{background:var(--tts-series);opacity:1}
.tts-plot:has(.tts-rel-202501:hover) .tts-slot-202501 .tts-bar-hi,.tts-plot:has(.tts-rel-202501:hover) .tts-slot-202501 .tts-cross{opacity:1}
.tts-plot:has(.tts-slot-202502:hover) .tts-rel-202502,.tts-plot:has(.tts-slot-202502.is-pinned) .tts-rel-202502{z-index:5;left:calc(var(--xc) + var(--off))}
.tts-plot:has(.tts-slot-202502:hover) .tts-rel-202502 .tts-av,.tts-plot:has(.tts-slot-202502.is-pinned) .tts-rel-202502 .tts-av{transform:translateY(-5px) scale(1.5);border-color:var(--tts-series)}
.tts-plot:has(.tts-slot-202502:hover) .tts-rel-202502::before,.tts-plot:has(.tts-slot-202502.is-pinned) .tts-rel-202502::before{background:var(--tts-series);opacity:1}
.tts-plot:has(.tts-rel-202502:hover) .tts-slot-202502 .tts-bar-hi,.tts-plot:has(.tts-rel-202502:hover) .tts-slot-202502 .tts-cross{opacity:1}
.tts-plot:has(.tts-slot-202503:hover) .tts-rel-202503,.tts-plot:has(.tts-slot-202503.is-pinned) .tts-rel-202503{z-index:5;left:calc(var(--xc) + var(--off))}
.tts-plot:has(.tts-slot-202503:hover) .tts-rel-202503 .tts-av,.tts-plot:has(.tts-slot-202503.is-pinned) .tts-rel-202503 .tts-av{transform:translateY(-5px) scale(1.5);border-color:var(--tts-series)}
.tts-plot:has(.tts-slot-202503:hover) .tts-rel-202503::before,.tts-plot:has(.tts-slot-202503.is-pinned) .tts-rel-202503::before{background:var(--tts-series);opacity:1}
.tts-plot:has(.tts-rel-202503:hover) .tts-slot-202503 .tts-bar-hi,.tts-plot:has(.tts-rel-202503:hover) .tts-slot-202503 .tts-cross{opacity:1}
.tts-plot:has(.tts-slot-202506:hover) .tts-rel-202506,.tts-plot:has(.tts-slot-202506.is-pinned) .tts-rel-202506{z-index:5;left:calc(var(--xc) + var(--off))}
.tts-plot:has(.tts-slot-202506:hover) .tts-rel-202506 .tts-av,.tts-plot:has(.tts-slot-202506.is-pinned) .tts-rel-202506 .tts-av{transform:translateY(-5px) scale(1.5);border-color:var(--tts-series)}
.tts-plot:has(.tts-slot-202506:hover) .tts-rel-202506::before,.tts-plot:has(.tts-slot-202506.is-pinned) .tts-rel-202506::before{background:var(--tts-series);opacity:1}
.tts-plot:has(.tts-rel-202506:hover) .tts-slot-202506 .tts-bar-hi,.tts-plot:has(.tts-rel-202506:hover) .tts-slot-202506 .tts-cross{opacity:1}
.tts-plot:has(.tts-slot-202508:hover) .tts-rel-202508,.tts-plot:has(.tts-slot-202508.is-pinned) .tts-rel-202508{z-index:5;left:calc(var(--xc) + var(--off))}
.tts-plot:has(.tts-slot-202508:hover) .tts-rel-202508 .tts-av,.tts-plot:has(.tts-slot-202508.is-pinned) .tts-rel-202508 .tts-av{transform:translateY(-5px) scale(1.5);border-color:var(--tts-series)}
.tts-plot:has(.tts-slot-202508:hover) .tts-rel-202508::before,.tts-plot:has(.tts-slot-202508.is-pinned) .tts-rel-202508::before{background:var(--tts-series);opacity:1}
.tts-plot:has(.tts-rel-202508:hover) .tts-slot-202508 .tts-bar-hi,.tts-plot:has(.tts-rel-202508:hover) .tts-slot-202508 .tts-cross{opacity:1}
.tts-plot:has(.tts-slot-202511:hover) .tts-rel-202511,.tts-plot:has(.tts-slot-202511.is-pinned) .tts-rel-202511{z-index:5;left:calc(var(--xc) + var(--off))}
.tts-plot:has(.tts-slot-202511:hover) .tts-rel-202511 .tts-av,.tts-plot:has(.tts-slot-202511.is-pinned) .tts-rel-202511 .tts-av{transform:translateY(-5px) scale(1.5);border-color:var(--tts-series)}
.tts-plot:has(.tts-slot-202511:hover) .tts-rel-202511::before,.tts-plot:has(.tts-slot-202511.is-pinned) .tts-rel-202511::before{background:var(--tts-series);opacity:1}
.tts-plot:has(.tts-rel-202511:hover) .tts-slot-202511 .tts-bar-hi,.tts-plot:has(.tts-rel-202511:hover) .tts-slot-202511 .tts-cross{opacity:1}
.tts-plot:has(.tts-slot-202512:hover) .tts-rel-202512,.tts-plot:has(.tts-slot-202512.is-pinned) .tts-rel-202512{z-index:5;left:calc(var(--xc) + var(--off))}
.tts-plot:has(.tts-slot-202512:hover) .tts-rel-202512 .tts-av,.tts-plot:has(.tts-slot-202512.is-pinned) .tts-rel-202512 .tts-av{transform:translateY(-5px) scale(1.5);border-color:var(--tts-series)}
.tts-plot:has(.tts-slot-202512:hover) .tts-rel-202512::before,.tts-plot:has(.tts-slot-202512.is-pinned) .tts-rel-202512::before{background:var(--tts-series);opacity:1}
.tts-plot:has(.tts-rel-202512:hover) .tts-slot-202512 .tts-bar-hi,.tts-plot:has(.tts-rel-202512:hover) .tts-slot-202512 .tts-cross{opacity:1}
.tts-plot:has(.tts-slot-202601:hover) .tts-rel-202601,.tts-plot:has(.tts-slot-202601.is-pinned) .tts-rel-202601{z-index:5;left:calc(var(--xc) + var(--off))}
.tts-plot:has(.tts-slot-202601:hover) .tts-rel-202601 .tts-av,.tts-plot:has(.tts-slot-202601.is-pinned) .tts-rel-202601 .tts-av{transform:translateY(-5px) scale(1.5);border-color:var(--tts-series)}
.tts-plot:has(.tts-slot-202601:hover) .tts-rel-202601::before,.tts-plot:has(.tts-slot-202601.is-pinned) .tts-rel-202601::before{background:var(--tts-series);opacity:1}
.tts-plot:has(.tts-rel-202601:hover) .tts-slot-202601 .tts-bar-hi,.tts-plot:has(.tts-rel-202601:hover) .tts-slot-202601 .tts-cross{opacity:1}
.tts-plot:has(.tts-slot-202602:hover) .tts-rel-202602,.tts-plot:has(.tts-slot-202602.is-pinned) .tts-rel-202602{z-index:5;left:calc(var(--xc) + var(--off))}
.tts-plot:has(.tts-slot-202602:hover) .tts-rel-202602 .tts-av,.tts-plot:has(.tts-slot-202602.is-pinned) .tts-rel-202602 .tts-av{transform:translateY(-5px) scale(1.5);border-color:var(--tts-series)}
.tts-plot:has(.tts-slot-202602:hover) .tts-rel-202602::before,.tts-plot:has(.tts-slot-202602.is-pinned) .tts-rel-202602::before{background:var(--tts-series);opacity:1}
.tts-plot:has(.tts-rel-202602:hover) .tts-slot-202602 .tts-bar-hi,.tts-plot:has(.tts-rel-202602:hover) .tts-slot-202602 .tts-cross{opacity:1}
.tts-plot:has(.tts-slot-202603:hover) .tts-rel-202603,.tts-plot:has(.tts-slot-202603.is-pinned) .tts-rel-202603{z-index:5;left:calc(var(--xc) + var(--off))}
.tts-plot:has(.tts-slot-202603:hover) .tts-rel-202603 .tts-av,.tts-plot:has(.tts-slot-202603.is-pinned) .tts-rel-202603 .tts-av{transform:translateY(-5px) scale(1.5);border-color:var(--tts-series)}
.tts-plot:has(.tts-slot-202603:hover) .tts-rel-202603::before,.tts-plot:has(.tts-slot-202603.is-pinned) .tts-rel-202603::before{background:var(--tts-series);opacity:1}
.tts-plot:has(.tts-rel-202603:hover) .tts-slot-202603 .tts-bar-hi,.tts-plot:has(.tts-rel-202603:hover) .tts-slot-202603 .tts-cross{opacity:1}
.tts-plot:has(.tts-slot-202604:hover) .tts-rel-202604,.tts-plot:has(.tts-slot-202604.is-pinned) .tts-rel-202604{z-index:5;left:calc(var(--xc) + var(--off))}
.tts-plot:has(.tts-slot-202604:hover) .tts-rel-202604 .tts-av,.tts-plot:has(.tts-slot-202604.is-pinned) .tts-rel-202604 .tts-av{transform:translateY(-5px) scale(1.5);border-color:var(--tts-series)}
.tts-plot:has(.tts-slot-202604:hover) .tts-rel-202604::before,.tts-plot:has(.tts-slot-202604.is-pinned) .tts-rel-202604::before{background:var(--tts-series);opacity:1}
.tts-plot:has(.tts-rel-202604:hover) .tts-slot-202604 .tts-bar-hi,.tts-plot:has(.tts-rel-202604:hover) .tts-slot-202604 .tts-cross{opacity:1}
.tts-plot:has(.tts-slot-202605:hover) .tts-rel-202605,.tts-plot:has(.tts-slot-202605.is-pinned) .tts-rel-202605{z-index:5;left:calc(var(--xc) + var(--off))}
.tts-plot:has(.tts-slot-202605:hover) .tts-rel-202605 .tts-av,.tts-plot:has(.tts-slot-202605.is-pinned) .tts-rel-202605 .tts-av{transform:translateY(-5px) scale(1.5);border-color:var(--tts-series)}
.tts-plot:has(.tts-slot-202605:hover) .tts-rel-202605::before,.tts-plot:has(.tts-slot-202605.is-pinned) .tts-rel-202605::before{background:var(--tts-series);opacity:1}
.tts-plot:has(.tts-rel-202605:hover) .tts-slot-202605 .tts-bar-hi,.tts-plot:has(.tts-rel-202605:hover) .tts-slot-202605 .tts-cross{opacity:1}
.tts-plot:has(.tts-slot-202606:hover) .tts-rel-202606,.tts-plot:has(.tts-slot-202606.is-pinned) .tts-rel-202606{z-index:5;left:calc(var(--xc) + var(--off))}
.tts-plot:has(.tts-slot-202606:hover) .tts-rel-202606 .tts-av,.tts-plot:has(.tts-slot-202606.is-pinned) .tts-rel-202606 .tts-av{transform:translateY(-5px) scale(1.5);border-color:var(--tts-series)}
.tts-plot:has(.tts-slot-202606:hover) .tts-rel-202606::before,.tts-plot:has(.tts-slot-202606.is-pinned) .tts-rel-202606::before{background:var(--tts-series);opacity:1}
.tts-plot:has(.tts-rel-202606:hover) .tts-slot-202606 .tts-bar-hi,.tts-plot:has(.tts-rel-202606:hover) .tts-slot-202606 .tts-cross{opacity:1}
.tts-plot:has(.tts-slot-202607:hover) .tts-rel-202607,.tts-plot:has(.tts-slot-202607.is-pinned) .tts-rel-202607{z-index:5;left:calc(var(--xc) + var(--off))}
.tts-plot:has(.tts-slot-202607:hover) .tts-rel-202607 .tts-av,.tts-plot:has(.tts-slot-202607.is-pinned) .tts-rel-202607 .tts-av{transform:translateY(-5px) scale(1.5);border-color:var(--tts-series)}
.tts-plot:has(.tts-slot-202607:hover) .tts-rel-202607::before,.tts-plot:has(.tts-slot-202607.is-pinned) .tts-rel-202607::before{background:var(--tts-series);opacity:1}
.tts-plot:has(.tts-rel-202607:hover) .tts-slot-202607 .tts-bar-hi,.tts-plot:has(.tts-rel-202607:hover) .tts-slot-202607 .tts-cross{opacity:1}
.tts-plot:has(.tts-slot-202609:hover) .tts-rel-202609,.tts-plot:has(.tts-slot-202609.is-pinned) .tts-rel-202609{z-index:5;left:calc(var(--xc) + var(--off))}
.tts-plot:has(.tts-slot-202609:hover) .tts-rel-202609 .tts-av,.tts-plot:has(.tts-slot-202609.is-pinned) .tts-rel-202609 .tts-av{transform:translateY(-5px) scale(1.5);border-color:var(--tts-series)}
.tts-plot:has(.tts-slot-202609:hover) .tts-rel-202609::before,.tts-plot:has(.tts-slot-202609.is-pinned) .tts-rel-202609::before{background:var(--tts-series);opacity:1}
.tts-plot:has(.tts-rel-202609:hover) .tts-slot-202609 .tts-bar-hi,.tts-plot:has(.tts-rel-202609:hover) .tts-slot-202609 .tts-cross{opacity:1}
