/* Compact summary within the weekly terminal masthead. */
.terminal-integrated-header { container-type: inline-size; min-width: 0; margin-bottom: 1rem; }
.terminal-compact { font-family: "IBM Plex Sans", Arial, sans-serif; font-weight: 400; text-align: left; }
.terminal-compact :is(h1,h2,h3,p,figure,dl,dd) { margin: 0; }
.terminal-compact .compact-label { font-family: "IBM Plex Sans", Arial, sans-serif; font-weight: 600; line-height: 1.45; text-transform: uppercase; }
.terminal-compact a { text-decoration: none; }
.terminal-compact :is(a,button,svg[tabindex]):focus-visible { outline: 2px solid #7eddd2; outline-offset: 3px; }
.terminal-compact {
  --compact-divider: #ffffff20;
  --compact-muted: #a4bdd0;
  background: #092138;
  color: #f6f9fc;
  border-top: 2px solid #058975;
}
.terminal-compact .compact-label { color: #aac9e0; font-size: 9px; letter-spacing: .1em; }
.terminal-compact .compact-tone-positive { color: #70dfb8; }
.terminal-compact .compact-tone-negative { color: #ff9299; }
.compact-main { display: grid; grid-template-columns: 1.23fr 1.06fr 1fr 1.08fr 1.18fr; padding: 15px 0; }
.compact-main > * { min-width: 0; padding: 0 19px; }
.compact-main > * + * { border-left: 1px solid var(--compact-divider); }
.compact-kind { white-space: nowrap; }
.compact-kind > span:first-child { color: #77ded3; }
.compact-kind .compact-divider { padding: 0 3px; color: #7894a8; }
.compact-identity { position: relative; }
.compact-identity::before { content: ''; position: absolute; top: 0; bottom: 0; left: 8px; width: 2px; background: #18b9ac; }
.compact-identity h1 { color: #fff; font: 700 50px/1.05 "Source Serif 4", Georgia, serif; letter-spacing: -.035em; margin-top: 3px; }
.compact-company { font-size: 13px; font-weight: 600; line-height: 1.35; margin-top: 4px; }
.compact-classification { font-size: 9.5px; color: #aacbdf; margin-top: 3px; line-height: 1.5; }
.compact-classification span { padding: 0 2px; color: #607e95; }
.compact-date { display: flex; align-items: baseline; gap: 9px; margin-top: 9px; }
.compact-date > span { font-size: 10px; color: var(--compact-muted); }
.compact-date time { font-size: 12px; font-weight: 600; }
.compact-links { display: flex; align-items: center; gap: 16px; margin-top: 3px; flex-wrap: wrap; }
.compact-links a { display: inline-flex; gap: 5px; align-items: center; font-size: 10px; font-weight: 500; min-height: 28px; color: #d0e5f3; }
.compact-links a:hover { color: #76ead4; text-decoration: underline; text-underline-offset: 3px; }
.compact-links svg { width: 12px; height: 12px; color: #779fb8; }
.compact-prices, .compact-trend, .compact-outlook { padding-top: 4px; padding-bottom: 4px; }
.compact-price-pair { display: grid; grid-template-columns: 1fr 1fr; gap: 17px; }
.compact-number { font: 600 31px/1.18 "Source Serif 4", Georgia, serif; letter-spacing: -.025em; white-space: nowrap; margin-top: 5px; }
.compact-number > span { font: 500 8px/1 "IBM Plex Sans", Arial, sans-serif; letter-spacing: 0; color: #b5cbdc; margin-left: 3px; }
.compact-fair-value { color: #d2e3f0; }
.compact-note { font-family: inherit; font-size: 10px; font-weight: 400; line-height: 1.45; color: var(--compact-muted); }
.compact-price-note { margin-top: 4px; }
.compact-returns { display: grid; grid-template-columns: 1fr 1fr; gap: 17px; border-top: 1px solid var(--compact-divider); margin-top: 16px; padding-top: 12px; }
.compact-returns p:not(.compact-note) { font-size: 19px; line-height: 1.3; font-weight: 600; margin-top: 4px; white-space: nowrap; }
.compact-returns .compact-note { margin-top: 2px; font-size: 9px; }
.compact-result { color: #c8dce9; font: 600 20px/1.2 "Source Serif 4", Georgia, serif; letter-spacing: -.01em; display: flex; align-items: center; gap: 7px; margin-top: 7px; }
.compact-trend-dot { width: 6px; height: 6px; border-radius: 50%; background: currentColor; box-shadow: 0 0 0 3px #76d5b81a; flex-shrink: 0; margin: 0 3px; }
.compact-activity-title { margin-top: 10px; font-size: 9.5px; }
.compact-activity { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; margin-top: 7px; }
.compact-activity > div { display: grid; grid-template-columns: auto 1fr; column-gap: 7px; align-items: center; padding: 6px 8px; border: 1px solid #638d9638; background: #6ccbad05; }
.compact-activity strong { font-size: 10px; font-weight: 600; line-height: 1.2; }
.compact-up { grid-row: span 2; color: currentColor; font-size: 19px; line-height: 1; }
.compact-activity div > span:last-child { font-size: 8.5px; white-space: nowrap; color: #abc7d5; line-height: 1.4; }
.compact-help-row { display: flex; align-items: center; justify-content: space-between; gap: 7px; position: relative; padding-right: 20px; min-height: 14px; }
.compact-help-row .compact-help-button { position: absolute; width: 28px; height: 28px; right: 0; top: -8px; font-size: 9px; color: #c6ddeb; border: 0; background: transparent; }
.compact-help-row .compact-help-button::before { inset: 7px; border-color: #9bbfd375; }
.compact-help-row .compact-help-button:hover { color: #75e5cd; }
.compact-help-row .compact-help-button:hover::before { background: transparent; }
.compact-expectancy-result { display: inline-flex; align-items: baseline; gap: 7px; font-size: 14px; font-weight: 600; line-height: 1.2; color: #cadce9; background: #ffffff08; border: 1px solid #b0c8d33d; padding: 5px 8px; margin-top: 7px; white-space: nowrap; }
.compact-expectancy-result strong { font-size: 18px; font-weight: 600; font-variant-numeric: tabular-nums; }
.compact-expectancy-result strong span { font-size: 12px; margin-left: 1px; }
.compact-expectancy > .compact-note { margin-top: 5px; font-size: 9px; }
.compact-pattern { margin-top: 15px; padding-top: 10px; border-top: 1px solid var(--compact-divider); }
.compact-pattern .compact-label span { white-space: nowrap; }
.compact-pattern .compact-result { margin-top: 5px; font-size: 18px; }
.compact-pattern .compact-note { font-size: 9px; margin-top: 4px; }
.compact-pattern .compact-note strong { color: #cadfe9; font-weight: 600; }
.compact-history { display: flex; flex-direction: column; justify-content: center; gap: 8px; }
.compact-history figcaption { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.compact-history figcaption > span { font-size: 15px; font-weight: 600; }
.compact-spark svg { display: block; width: 100%; height: 83px; overflow: visible; }
.compact-chart-dates { display: flex; justify-content: space-between; gap: 4px; color: #9cb9cf; font-size: 8px; white-space: nowrap; }
.compact-chart-dates #spark-readout { font-size: 8px; color: #b8d1df; }
.compact-context { display: flex; align-items: center; gap: 25px; padding: 12px 19px; border-top: 1px solid var(--compact-divider); background: #ffffff02; }
.compact-context h2 { flex-shrink: 0; }
.compact-context dl { display: grid; grid-template-columns: .7fr .9fr .8fr .9fr 1.25fr 1.35fr; gap: 22px; flex: 1; }
.compact-context dl > div { display: flex; align-items: baseline; gap: 8px; min-width: 0; }
.compact-context dt { font-size: 10px; color: #a9c0d4; white-space: nowrap; }
.compact-context dd { font-size: 12px; font-weight: 600; color: #edf6fb; white-space: nowrap; font-variant-numeric: tabular-nums; }
.compact-context dd.compact-tone-positive { color: #6fdfb8; }

@container (min-width:1450px) {
  .compact-main { grid-template-columns: 1.23fr 1.04fr 1.02fr 1.08fr 1.18fr; }
  .compact-main > * { padding-left: 20px; padding-right: 20px; }
  .compact-identity h1 { font-size: 52px; }
  .compact-number { font-size: 33px; }
  .compact-activity div > span:last-child { font-size: 9px; }
}
@container (max-width:1259px) {
  .compact-main { grid-template-columns: 1.25fr 1.12fr 1.15fr 1.1fr; row-gap: 17px; }
  .compact-main > * { padding-left: 17px; padding-right: 17px; }
  .compact-identity h1 { font-size: 45px; }
  .compact-company { font-size: 12px; }
  .compact-kind { white-space: normal; font-size: 8px!important; }
  .compact-classification { font-size: 9px; }
  .compact-number { font-size: 28px; }
  .compact-price-pair,.compact-returns { gap: 12px; }
  .compact-result { font-size: 19px; }
  .compact-expectancy-result { gap: 5px; font-size: 12px; padding: 5px 6px; }
  .compact-expectancy-result strong { font-size: 17px; }
  .compact-history { grid-column: 1/-1; border-left: 0!important; border-top: 1px solid var(--compact-divider); display: grid; grid-template-columns: 130px 1fr 145px; align-items: center; gap: 16px; padding-top: 12px; }
  .compact-history figcaption { display: block; }
  .compact-history figcaption > span { display: block; margin-top: 3px; font-size: 17px; }
  .compact-spark svg { height: 48px; }
  .compact-chart-dates { flex-wrap: wrap; column-gap: 10px; row-gap: 4px; font-size: 9px; }
  .compact-chart-dates #spark-readout { order: 3; width: 100%; text-align: right; font-size: 9px; }
  .compact-context { padding-left: 17px; padding-right: 17px; gap: 20px; }
  .compact-context dl { gap: 12px; grid-template-columns: .6fr .8fr .8fr .9fr 1.25fr 1.35fr; }
  .compact-context dl > div { flex-direction: column; gap: 1px; }
}
@container (max-width:949px) {
  .compact-main { grid-template-columns: 1.1fr 1fr; padding-top: 17px; padding-bottom: 13px; row-gap: 18px; }
  .compact-main > * { padding-left: 20px; padding-right: 20px; }
  .compact-main .compact-identity { border-left: 0; }
  .compact-identity h1 { font-size: 48px; }
  .compact-company { font-size: 14px; }
  .compact-kind { font-size: 9px!important; }
  .compact-classification { font-size: 10px; }
  .compact-date > span { font-size: 11px; }
  .compact-date time { font-size: 13px; }
  .compact-links a { min-height: 34px; font-size: 11px; }
  .compact-links svg { width: 14px; height: 14px; }
  .compact-number { font-size: 35px; }
  .compact-number > span { font-size: 9px; }
  .compact-returns { margin-top: 17px; }
  .compact-returns p:not(.compact-note) { font-size: 22px; }
  .compact-returns .compact-note { font-size: 10px; }
  .terminal-compact .compact-label { font-size: 10px; }
  .compact-trend, .compact-outlook { border-top: 1px solid var(--compact-divider); padding-top: 16px; }
  .compact-main .compact-trend { border-left: 0; }
  .compact-result { font-size: 22px; }
  .compact-note { font-size: 11px; }
  .compact-activity { gap: 7px; }
  .compact-activity > div { padding: 7px 10px; }
  .compact-activity strong { font-size: 11px; }
  .compact-activity div > span:last-child { font-size: 10px; }
  .compact-expectancy-result { font-size: 15px; padding: 5px 8px; gap: 8px; }
  .compact-expectancy-result strong { font-size: 21px; }
  .compact-expectancy > .compact-note, .compact-pattern .compact-note { font-size: 10px; }
  .compact-pattern .compact-result { font-size: 20px; }
  .compact-help-row { padding-right: 32px; }
  .compact-help-row .compact-help-button { width: 40px; height: 40px; right: 0; top: -12px; font-size: 10px; }
  .compact-help-row .compact-help-button::before { inset: 12px; }
  .compact-history { grid-template-columns: 100px 1fr; row-gap: 4px; }
  .compact-chart-dates { grid-column: 2; flex-wrap: nowrap; font-size: 9px; }
  .compact-chart-dates #spark-readout { order: 0; width: auto; }
  .compact-spark svg { height: 62px; }
  .compact-context { align-items: flex-start; flex-direction: column; gap: 10px; padding: 14px 20px; }
  .compact-context dl { width: 100%; grid-template-columns: repeat(6,minmax(0,1fr)); }
  .compact-context dt { font-size: 10px; }
  .compact-context dd { font-size: 13px; }
}
@container (max-width:579px) {
  .compact-main { grid-template-columns: 1fr; row-gap: 15px; padding-top: 16px; }
  .compact-main > * { border-left: 0; padding-left: 17px; padding-right: 17px; }
  .compact-identity h1 { font-size: 46px; }
  .compact-company { font-size: 15px; }
  .compact-classification { font-size: 11px; }
  .compact-identity::before { left: 6px; }
  .compact-date { margin-top: 9px; }
  .compact-links { gap: 20px; margin-top: 3px; }
  .compact-links a { min-height: 40px; font-size: 12px; }
  .compact-prices { border-top: 1px solid var(--compact-divider); padding-top: 15px; }
  .compact-number { font-size: 35px; }
  .compact-number > span { font-size: 10px; }
  .compact-price-pair,.compact-returns { gap: 24px; }
  .compact-price-note { font-size: 10px; margin-top: 5px; }
  .compact-returns { margin-top: 12px; padding-top: 11px; }
  .compact-returns .compact-note { font-size: 10px; }
  .compact-returns p:not(.compact-note) { font-size: 22px; }
  .compact-trend { padding-top: 14px; }
  .compact-activity-title { margin-top: 8px; font-size: 11px; }
  .compact-result { font-size: 23px; }
  .compact-activity { margin-top: 9px; }
  .compact-activity > div { padding: 8px 10px; }
  .compact-activity strong { font-size: 12px; }
  .compact-activity div > span:last-child { font-size: 10px; }
  .compact-outlook { display: grid; grid-template-columns: 1fr 1fr; padding-top: 15px; gap: 18px; }
  .compact-pattern { margin: 0; padding: 0; border-top: 0; }
  .compact-help-row { min-height: 29px; padding-right: 24px; }
  .compact-help-row .compact-help-button { width: 28px; height: 40px; right: 0; top: -4px; }
  .compact-help-row .compact-help-button::before { inset: 12px 6px; }
  .compact-pattern > .compact-label { min-height: 29px; }
  .compact-expectancy-result { flex-wrap: wrap; white-space: normal; gap: 2px 6px; font-size: 12px; padding: 5px 6px; }
  .compact-expectancy-result strong { font-size: 18px; }
  .compact-pattern .compact-result { font-size: 19px; margin-top: 9px; }
  .compact-expectancy > .compact-note,.compact-pattern .compact-note { font-size: 10px; }
  .compact-history { display: flex; align-items: stretch; gap: 7px; padding-top: 13px; }
  .compact-history figcaption { display: flex; }
  .compact-history figcaption > span { margin-top: 0; font-size: 17px; }
  .compact-spark svg { height: 75px; }
  .compact-chart-dates,.compact-chart-dates #spark-readout { font-size: 9px; }
  .compact-context { padding: 13px 17px 16px; }
  .compact-context dl { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px 10px; }
  .compact-context dd { font-size: 15px; }
  .compact-context dl > div:last-child dd { font-size: 12px; line-height: 22px; }
  .compact-context dt { font-size: 10px; }
}
@container (max-width:349px) {
  .compact-main > * { padding-left: 14px; padding-right: 14px; }
  .compact-company { font-size: 14px; }
  .compact-classification { font-size: 10px; }
  .compact-kind { font-size: 8px!important; }
  .compact-outlook { gap: 14px; }
  .compact-expectancy-result strong { font-size: 17px; }
  .compact-pattern .compact-result { font-size: 17px; }
  .compact-help-row .compact-label { font-size: 9px; }
  .compact-context { padding-left: 14px; padding-right: 14px; }
  .compact-context dt { font-size: 9px; }
  .compact-context dd { font-size: 14px; }
  .compact-context dl > div:last-child dd { font-size: 11px; }
}

.terminal-compact .compact-tone-positive, .terminal-compact .compact-tone-green,
.terminal-compact .compact-tone-above, .terminal-compact .compact-tone-up { color: #70dfb8; }
.terminal-compact .compact-tone-negative, .terminal-compact .compact-tone-red,
.terminal-compact .compact-tone-below, .terminal-compact .compact-tone-down { color: #ff9299; }
.terminal-compact .compact-tone-mixed, .terminal-compact .compact-tone-orange,
.terminal-compact .compact-tone-level, .terminal-compact .compact-tone-undecided { color: #edc37c; }
.terminal-compact .compact-tone-unavailable, .terminal-compact .compact-tone-neutral,
.terminal-compact .compact-tone-flat { color: #c4d5e2; }
.compact-activity strong { color: #f0f6fa; }
.compact-expectancy-result.compact-tone-positive { background: #37ba8a13; border-color: #61c8aa3d; }
.compact-expectancy-result.compact-tone-negative { background: #a12d371a; border-color: #d2707755; }
.compact-spark svg { color: #53d2b3; }
.compact-spark-guide { stroke: #ffffff10; fill: none; stroke-width: .5; }
.compact-spark-line { stroke: currentColor; fill: none; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.compact-spark-dot { fill: #092138; stroke: currentColor; stroke-width: 1.6; }
.compact-cursor-guide { stroke: #9ec6d8; stroke-dasharray: 3 3; fill: none; stroke-width: .8; }
.compact-cursor-dot { fill: #fff; stroke: currentColor; stroke-width: 1.5; }
.compact-classification a { color: inherit; text-underline-offset: 2px; }
.compact-classification a:hover { color: #76ead4; text-decoration: underline; }
.compact-kind, .compact-company, .compact-classification, .compact-identity h1 { overflow-wrap: anywhere; white-space: normal; }
.compact-context abbr { text-decoration: none; }
.compact-help-button { display: grid; place-items: center; padding: 0; cursor: pointer; font-family: inherit; }
.compact-help-button::before { content: ''; position: absolute; border: 1px solid; border-radius: 50%; pointer-events: none; }
.compact-number.compact-number-long { font-size: 18px; }
.compact-context .compact-week-range { white-space: normal; display: flex; flex-wrap: wrap; gap: 0 2px; }
.compact-week-range > span { white-space: nowrap; }
@container (max-width:949px) { .compact-number.compact-number-long { font-size: 22px; } }
@container (max-width:579px) { .compact-number.compact-number-long { font-size: 20px; } }
@container (max-width:349px) { .compact-number.compact-number-long { font-size: 18px; } }
@media print {
    .terminal-integrated-header { display: none !important; }
}
