/* [project]/client/node_modules/@fontsource-variable/merriweather/wght.css [app-client] (css) */
@font-face {
  font-family: Merriweather Variable;
  font-style: normal;
  font-display: swap;
  font-weight: 300 900;
  src: url("../media/merriweather-cyrillic-ext-wght-normal.2sijkyk96p2fw.woff2") format("woff2-variations");
  unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

@font-face {
  font-family: Merriweather Variable;
  font-style: normal;
  font-display: swap;
  font-weight: 300 900;
  src: url("../media/merriweather-cyrillic-wght-normal.3j_v380mtc8i3.woff2") format("woff2-variations");
  unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116;
}

@font-face {
  font-family: Merriweather Variable;
  font-style: normal;
  font-display: swap;
  font-weight: 300 900;
  src: url("../media/merriweather-vietnamese-wght-normal.43qua1d1ld_rt.woff2") format("woff2-variations");
  unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB;
}

@font-face {
  font-family: Merriweather Variable;
  font-style: normal;
  font-display: swap;
  font-weight: 300 900;
  src: url("../media/merriweather-latin-ext-wght-normal.2zfnk_dvmsn2m.woff2") format("woff2-variations");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: Merriweather Variable;
  font-style: normal;
  font-display: swap;
  font-weight: 300 900;
  src: url("../media/merriweather-latin-wght-normal.3_g2n7q20a3c1.woff2") format("woff2-variations");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* [project]/client/node_modules/@fontsource-variable/raleway/wght.css [app-client] (css) */
@font-face {
  font-family: Raleway Variable;
  font-style: normal;
  font-display: swap;
  font-weight: 100 900;
  src: url("../media/raleway-cyrillic-ext-wght-normal.38is4kf6_bs_8.woff2") format("woff2-variations");
  unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

@font-face {
  font-family: Raleway Variable;
  font-style: normal;
  font-display: swap;
  font-weight: 100 900;
  src: url("../media/raleway-cyrillic-wght-normal.2zgicrf277h2v.woff2") format("woff2-variations");
  unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116;
}

@font-face {
  font-family: Raleway Variable;
  font-style: normal;
  font-display: swap;
  font-weight: 100 900;
  src: url("../media/raleway-vietnamese-wght-normal.0yhgv5ojathm3.woff2") format("woff2-variations");
  unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB;
}

@font-face {
  font-family: Raleway Variable;
  font-style: normal;
  font-display: swap;
  font-weight: 100 900;
  src: url("../media/raleway-latin-ext-wght-normal.3sk1bguzngd9x.woff2") format("woff2-variations");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: Raleway Variable;
  font-style: normal;
  font-display: swap;
  font-weight: 100 900;
  src: url("../media/raleway-latin-wght-normal.43nl7c6owh8w3.woff2") format("woff2-variations");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* [project]/client/node_modules/@fontsource-variable/source-sans-3/wght.css [app-client] (css) */
@font-face {
  font-family: "Source Sans 3 Variable";
  font-style: normal;
  font-display: swap;
  font-weight: 200 900;
  src: url("../media/source-sans-3-cyrillic-ext-wght-normal.3dr-dgdzidi0_.woff2") format("woff2-variations");
  unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

@font-face {
  font-family: "Source Sans 3 Variable";
  font-style: normal;
  font-display: swap;
  font-weight: 200 900;
  src: url("../media/source-sans-3-cyrillic-wght-normal.2rcjvmmvk3bh-.woff2") format("woff2-variations");
  unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116;
}

@font-face {
  font-family: "Source Sans 3 Variable";
  font-style: normal;
  font-display: swap;
  font-weight: 200 900;
  src: url("../media/source-sans-3-greek-ext-wght-normal.0wpy8o7woho9l.woff2") format("woff2-variations");
  unicode-range: U+1F??;
}

@font-face {
  font-family: "Source Sans 3 Variable";
  font-style: normal;
  font-display: swap;
  font-weight: 200 900;
  src: url("../media/source-sans-3-greek-wght-normal.37txlz2jx52f0.woff2") format("woff2-variations");
  unicode-range: U+370-377, U+37A-37F, U+384-38A, U+38C, U+38E-3A1, U+3A3-3FF;
}

@font-face {
  font-family: "Source Sans 3 Variable";
  font-style: normal;
  font-display: swap;
  font-weight: 200 900;
  src: url("../media/source-sans-3-vietnamese-wght-normal.0txey9puiotzv.woff2") format("woff2-variations");
  unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB;
}

@font-face {
  font-family: "Source Sans 3 Variable";
  font-style: normal;
  font-display: swap;
  font-weight: 200 900;
  src: url("../media/source-sans-3-latin-ext-wght-normal.1zvx38bd_81k2.woff2") format("woff2-variations");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: "Source Sans 3 Variable";
  font-style: normal;
  font-display: swap;
  font-weight: 200 900;
  src: url("../media/source-sans-3-latin-wght-normal.3y33ar50ixvlj.woff2") format("woff2-variations");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* [project]/client/app/globals.css [app-client] (css) */
:root {
  --lightningcss-light: initial;
  --lightningcss-dark: ;
  color-scheme: light;
  --canvas: #f7f7f3;
  --ink: #151715;
  --muted: #666b66;
  --faint: #929791;
  --border: #0000000d;
  --accent: #2459e0;
  --chart-grid-strong: #d9dcd5;
  --chart-grid: #e8eae5;
  --chart-label: #868a82;
  --chart-value: #343833;
  --chart-name: #5f645c;
  --income-profit: #00ce2d;
  --income-expense: #f04;
  --surface: #fff;
  --surface-subtle: #fafaf7;
  --segmented-track: #f1f2ee;
  --financial-table-row: var(--surface);
  --financial-table-header: var(--accent);
  --financial-table-header-ink: #fff;
  --font-legacy: Inter, ui-sans-serif, system-ui, -apple-system, sans-serif;
  --font-ui: var(--font-legacy);
  --font-editorial: var(--font-legacy);
  --text-micro: 10px;
  --text-caption: 11px;
  --text-small: 12px;
  --text-ui: 13px;
  --text-body: 14px;
  --text-reading: 15px;
  --text-card-title: 16px;
  --text-section: 21px;
}

html[data-light-background="white"] {
  --canvas: #fff;
}

html[data-typography="editorial"] {
  --font-ui: "Source Sans 3 Variable", ui-sans-serif, system-ui, -apple-system, sans-serif;
  --font-editorial: "Source Sans 3 Variable", ui-sans-serif, system-ui, -apple-system, sans-serif;
}

* {
  box-sizing: border-box;
}

html {
  background: var(--canvas);
  scroll-behavior: smooth;
}

body {
  background: var(--canvas);
  color: var(--ink);
  font-family: var(--font-editorial);
  font-size: var(--text-body);
  -webkit-font-smoothing: antialiased;
  margin: 0;
  font-weight: 500;
  transition: background-color .18s, color .18s;
}

#root {
  isolation: isolate;
  flex-direction: column;
  min-height: 100vh;
  display: flex;
  position: relative;
}

a {
  color: inherit;
  text-decoration: none;
}

button {
  font: inherit;
}

:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 3px;
}

.section-intro h1, .stock-detail h1, .company-history-heading-row h3, .company-history-subheading, .corporate-events-heading-row h3, .insider-heading-row h3, .section-heading-row h3, .company-summary h3, .company-history-body p {
  font-family: var(--font-editorial);
}

html[data-typography="editorial"] .section-intro h1 {
  letter-spacing: -.045em;
  font-weight: 560;
  line-height: .96;
}

html[data-typography="editorial"] .stock-detail h1 {
  letter-spacing: -.03em;
  font-weight: 720;
  line-height: 1.02;
}

html[data-typography="editorial"] :is(.company-history-heading-row h3, .corporate-events-heading-row h3, .insider-heading-row h3, .section-heading-row h3, .company-summary h3) {
  letter-spacing: -.02em;
  font-weight: 560;
  line-height: 1.08;
}

html[data-typography="editorial"] .company-history-subheading {
  letter-spacing: -.01em;
  font-weight: 560;
  line-height: 1.25;
}

.stock-price-block, .stock-overview-metric dd, .history-axis-label, .history-volume-label, .history-chart-tooltip, .financing-table, .financial-table, .native-select-control, .balance-donut-center-value, .balance-donut-center-percentage, .balance-donut-legend strong, .balance-donut-percentage, .sankey-label-value {
  font-variant-numeric: tabular-nums lining-nums;
}

.skip-link {
  z-index: 100;
  background: var(--ink);
  color: #fff;
  border-radius: 6px;
  padding: 10px 14px;
  position: fixed;
  top: -60px;
  left: 16px;
}

.skip-link:focus {
  top: 12px;
}

.site-header {
  z-index: 20;
  border-bottom: 1px solid var(--border);
  background: color-mix(in srgb, var(--surface) 94%, transparent);
  width: 100%;
  height: 60px;
  box-shadow: none;
  -webkit-backdrop-filter: blur(18px) saturate(140%);
  backdrop-filter: blur(18px) saturate(140%);
  border-radius: 0;
  margin-inline: auto;
  position: sticky;
  top: 0;
}

.header-inner {
  z-index: 1;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  grid-template-areas: "brand center .";
  align-items: center;
  gap: 20px;
  width: 100%;
  height: 100%;
  padding: 0 24px;
  display: grid;
  position: relative;
}

.wordmark {
  letter-spacing: -.055em;
  width: max-content;
  font-size: 18px;
  font-weight: 760;
}

.site-header .wordmark {
  grid-area: brand;
  align-items: center;
  gap: 6px;
  font-size: 16px;
  display: inline-flex;
}

.brand-logo {
  object-fit: contain;
  width: auto;
  height: auto;
  display: block;
}

.site-header .brand-logo {
  width: 78px;
  height: auto;
}

.header-center {
  grid-area: center;
  justify-content: center;
  align-items: center;
  gap: 18px;
  display: flex;
}

.header-search {
  width: clamp(280px, 30vw, 420px);
  position: relative;
}

.header-search input {
  border: 1px solid var(--border);
  background: var(--surface-subtle);
  width: 100%;
  height: 34px;
  box-shadow: none;
  color: var(--ink);
  font: inherit;
  font-size: var(--text-ui);
  appearance: none;
  border-radius: 999px;
  padding: 0 40px 0 36px;
  transition: border-color .16s, background-color .16s;
}

.header-search:not(.has-value) input {
  padding-right: 72px;
}

.header-search input::-webkit-search-cancel-button {
  appearance: none;
}

.header-search input::placeholder {
  color: var(--faint);
  opacity: 1;
}

.header-search input:hover {
  background: var(--surface-subtle);
}

.header-search input:focus {
  border-color: var(--border);
  background: var(--surface);
  box-shadow: none;
  outline: none;
}

.search-icon {
  z-index: 1;
  fill: none;
  width: 16px;
  height: 16px;
  stroke: var(--faint);
  stroke-width: 1.7px;
  stroke-linecap: round;
  pointer-events: none;
  position: absolute;
  top: 50%;
  left: 13px;
  transform: translateY(-50%);
}

.search-clear {
  z-index: 2;
  width: 20px;
  height: 20px;
  color: var(--faint);
  cursor: pointer;
  background: none;
  border: 0;
  border-radius: 5px;
  place-items: center;
  padding: 0;
  display: grid;
  position: absolute;
  top: 50%;
  right: 8px;
  transform: translateY(-50%);
}

.search-clear:hover {
  background: color-mix(in srgb, var(--ink) 7%, transparent);
  color: var(--ink);
}

.search-clear:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 1px;
}

.search-clear svg {
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-width: 1.8px;
  width: 13px;
  height: 13px;
}

.search-shortcut {
  z-index: 1;
  color: var(--faint);
  pointer-events: none;
  align-items: center;
  gap: 3px;
  display: inline-flex;
  position: absolute;
  top: 50%;
  right: 9px;
  transform: translateY(-50%);
}

.search-shortcut kbd {
  border: 1px solid var(--border);
  border-bottom-color: var(--border-strong);
  background: var(--surface-subtle);
  min-width: 18px;
  height: 19px;
  color: inherit;
  font: 600 11px/1 var(--font-ui);
  border-radius: 5px;
  place-items: center;
  padding: 0 4px;
  display: grid;
  box-shadow: 0 1px #14181414;
}

.search-results {
  border: 1px solid var(--border);
  background: var(--surface);
  border-radius: 14px;
  padding: 6px;
  position: absolute;
  top: calc(100% + 9px);
  left: 0;
  right: 0;
  overflow: hidden;
  box-shadow: 0 14px 34px #1418141a;
}

.search-results > p {
  color: var(--muted);
  font-size: var(--text-ui);
  margin: 0;
  padding: 14px;
}

.search-results > .search-error {
  color: #913b3b;
}

.search-results a {
  width: 100%;
  min-height: 58px;
  color: var(--ink);
  text-align: left;
  cursor: pointer;
  background: none;
  border: 0;
  border-radius: 10px;
  grid-template-columns: 36px minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  padding: 7px 9px;
  display: grid;
}

.search-results a:hover, .search-results a:focus-visible, .search-results a.search-result-active {
  background: #f3f4f0;
}

.search-results a > span:nth-child(2) {
  min-width: 0;
}

.search-results strong, .search-results small {
  display: block;
}

.search-results strong {
  font-size: var(--text-ui);
}

.search-results small {
  color: var(--faint);
  font-size: var(--text-caption);
  text-overflow: ellipsis;
  white-space: nowrap;
  margin-top: 2px;
  overflow: hidden;
}

.search-results em {
  color: var(--faint);
  font-size: var(--text-micro);
  font-style: normal;
}

.primary-nav {
  align-items: center;
  gap: 2px;
  height: 100%;
  display: flex;
  position: relative;
}

.primary-nav a {
  min-height: 34px;
  color: var(--muted);
  font-size: var(--text-ui);
  border-radius: 7px;
  place-items: center;
  padding: 0 10px;
  font-weight: 550;
  transition: color .16s, background-color .16s;
  display: grid;
  position: relative;
}

.primary-nav a:hover {
  background: var(--surface-subtle);
  color: var(--ink);
}

.primary-nav a.active {
  background: color-mix(in srgb, var(--ink) 10%, var(--surface));
  color: var(--ink);
  font-weight: 680;
}

.nav-indicator {
  display: none;
}

.nav-indicator.visible {
  opacity: 1;
}

.page-shell {
  --page-gutter: 24px;
  min-width: 0;
  width: min(1240px, calc(100% - 2 * var(--page-gutter)));
  flex: 1;
  margin: 0 auto;
  position: relative;
}

.eyebrow {
  color: var(--accent);
  font-size: var(--text-caption);
  letter-spacing: .12em;
  text-transform: uppercase;
  margin-bottom: 10px;
  font-weight: 720;
  display: block;
}

.primary-action {
  background: var(--ink);
  color: #fff;
  cursor: pointer;
  border: 0;
  border-radius: 10px;
  min-height: 44px;
  margin-top: 12px;
  padding: 0 18px;
}

.section-intro {
  max-width: 680px;
  padding: 132px 0 180px;
}

.section-intro h1 {
  letter-spacing: -.07em;
  margin: 0;
  font-size: clamp(40px, 5.5vw, 64px);
  line-height: .95;
}

.section-intro p {
  max-width: 540px;
  color: var(--muted);
  font-size: var(--text-card-title);
  margin: 22px 0 18px;
  line-height: 1.6;
}

.company-page {
  padding: 48px 0 64px;
}

.company-page:has(.stock-detail) {
  padding-top: 0;
}

.company-logo {
  color: var(--ink);
  background: none;
  border: 0;
  flex: none;
  place-items: center;
  font-weight: 760;
  display: grid;
  overflow: hidden;
}

.company-logo img {
  object-fit: contain;
  background: none;
  width: 100%;
  height: 100%;
  display: block;
}

.company-logo-search {
  border-radius: 10px;
  width: 36px;
  height: 36px;
  font-size: 13px;
}

.company-logo-nav {
  border-radius: 0;
  width: 28px;
  height: 28px;
  font-size: 12px;
}

.company-logo-page {
  background: none;
  border: 0;
  border-radius: 0;
  width: 44px;
  height: 44px;
  font-size: 16px;
}

.company-logo-page img {
  background: none;
}

.company-workspace {
  min-height: 560px;
}

.workspace-state {
  text-align: center;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  min-height: 560px;
  padding: 48px;
  display: flex;
}

.workspace-state strong {
  font-size: var(--text-card-title);
}

.workspace-state p {
  max-width: 420px;
  color: var(--muted);
  margin: 8px 0 0;
  line-height: 1.5;
}

.error-message {
  color: #913b3b;
}

.error-message p {
  color: #955656;
}

.loading-ring {
  border: 2px solid var(--border);
  border-top-color: var(--accent);
  border-radius: 50%;
  width: 28px;
  height: 28px;
  margin-bottom: 18px;
  animation: .8s linear infinite loading-spin;
}

@keyframes loading-spin {
  to {
    transform: rotate(360deg);
  }
}

.skeleton-block {
  color: #0000;
  background: #e7e9e4;
  border-radius: 999px;
  display: block;
  position: relative;
  overflow: hidden;
}

.skeleton-block:after {
  content: "";
  background: linear-gradient(100deg, #0000 18%, #ffffffb8 48%, #0000 78%);
  animation: 1.45s ease-in-out infinite skeleton-shimmer;
  position: absolute;
  inset: 0;
  transform: translateX(-115%);
}

@keyframes skeleton-shimmer {
  to {
    transform: translateX(115%);
  }
}

.skeleton-line {
  width: 100%;
  height: 9px;
}

.skeleton-line-title {
  width: 58%;
  height: 15px;
  margin-top: 14px;
}

.skeleton-line-medium {
  width: 72%;
}

.skeleton-line-short {
  width: 42%;
}

.skeleton-summary-row {
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 18px;
  display: flex;
}

.skeleton-summary-pill {
  width: 108px;
  height: 13px;
}

.skeleton-control {
  border-radius: 8px;
  width: 126px;
  height: 32px;
}

.skeleton-control-short {
  width: 82px;
}

button:disabled {
  cursor: default;
  opacity: .58;
}

.stock-detail {
  --company-identity-bottom: 132px;
  --company-rail-height: 56px;
  --company-section-top: var(--company-identity-bottom);
  padding: 0;
}

.stock-detail-identity {
  z-index: 15;
  background: var(--surface);
  min-width: 0;
  margin: 0;
  padding: 16px 0;
  position: sticky;
  top: 60px;
}

.stock-title-row {
  align-items: center;
  gap: 12px;
  min-width: 0;
  display: flex;
}

.stock-title-copy {
  min-width: 0;
}

.stock-title-heading {
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  display: flex;
}

.watchlist-toggle {
  border: 1.5px solid var(--muted);
  min-width: 19px;
  height: 19px;
  color: var(--ink);
  cursor: pointer;
  background: none;
  border-radius: 999px;
  flex: none;
  justify-content: flex-start;
  align-items: center;
  margin-left: 8px;
  padding: 0 2px;
  transition: padding .16s;
  display: inline-flex;
  overflow: hidden;
}

.watchlist-toggle svg {
  flex: none;
  width: 12px;
  height: 12px;
}

.watchlist-toggle-label {
  opacity: 0;
  max-width: 0;
  color: inherit;
  font: 550 11px/1 var(--font-ui);
  white-space: nowrap;
  transition: max-width .16s, opacity .16s, margin-left .16s;
  overflow: hidden;
}

.watchlist-toggle:hover, .watchlist-toggle:focus-visible {
  padding-right: 7px;
}

.watchlist-toggle:hover .watchlist-toggle-label, .watchlist-toggle:focus-visible .watchlist-toggle-label {
  opacity: 1;
  max-width: 150px;
  margin-left: 5px;
}

.watchlist-toggle.is-saved {
  border-color: var(--ink);
  background: var(--ink);
  color: var(--surface);
}

.watchlist-toggle:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 3px;
}

.header-watchlist-toggle {
  display: none;
}

.stock-title-heading .company-data-notice {
  margin-left: 12px;
}

.stock-title-heading .company-data-tooltip {
  left: auto;
  right: 0;
}

.stock-title-row .stock-price-block {
  flex: none;
  margin-left: auto;
}

.stock-detail h1 {
  overflow-wrap: anywhere;
  letter-spacing: -.035em;
  min-width: 0;
  margin: 0;
  font-size: clamp(22px, 2vw, 26px);
  font-weight: 760;
  line-height: 1.08;
}

.company-website-link {
  width: fit-content;
  max-width: 100%;
  color: var(--muted);
  align-items: center;
  gap: 3px;
  margin-top: 5px;
  font-size: 12px;
  line-height: 1.2;
  display: flex;
}

.company-website-link span {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

.company-website-link:hover {
  color: var(--ink);
  text-underline-offset: 2px;
  text-decoration: underline;
}

.company-summary {
  width: 100%;
  color: var(--muted);
  font-size: var(--text-body);
  margin: 28px 0 0;
  line-height: 1.55;
}

.company-summary h3 {
  color: var(--ink);
  font-size: var(--text-card-title);
  letter-spacing: -.02em;
  margin: 0 0 10px;
  font-weight: 650;
}

.company-summary p {
  margin: 0;
}

.company-summary p + p {
  margin-top: 10px;
}

.stock-detail-layout {
  grid-template-columns: minmax(184px, 208px) minmax(0, 1fr);
  align-items: start;
  gap: 24px;
  display: grid;
}

.stock-detail {
  --financial-table-header: var(--company-financial-header-light, var(--accent));
}

.stock-detail-rail {
  z-index: 12;
  top: var(--company-identity-bottom);
  min-width: 0;
  max-height: calc(100vh - var(--company-identity-bottom) - 32px);
  flex-direction: column;
  gap: 10px;
  display: flex;
  position: sticky;
}

.stock-detail-content {
  min-width: 0;
}

.company-workspace .stock-detail-content {
  grid-column: 2;
}

.stock-detail-content > .company-content-section, .stock-detail-content > div > .company-content-section {
  margin-top: 0;
  padding-top: 0;
}

.company-section-nav {
  --company-section-accent: var(--company-section-accent-light, var(--accent));
  --company-section-accent-ink: var(--company-section-accent-light-ink, var(--accent));
  border: 1px solid var(--border);
  background: var(--surface);
  border-radius: 14px;
  flex: auto;
  min-width: 0;
  min-height: 0;
  padding: 8px;
  position: relative;
  overflow-y: auto;
}

.company-section-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.company-section-list li + li {
  margin-top: 2px;
}

.company-section-list a {
  min-height: 38px;
  color: var(--muted);
  font-size: var(--text-small);
  border-radius: 9px;
  align-items: center;
  padding: 7px 10px 7px 12px;
  line-height: 1.3;
  transition: color .16s, background-color .16s;
  display: flex;
  position: relative;
}

.company-section-list a:focus-visible {
  outline-color: var(--company-section-accent);
}

.company-section-list a:hover {
  background: color-mix(in srgb, var(--company-section-accent) 5%, transparent);
  color: var(--ink);
}

.company-section-list a[aria-current="location"] {
  background: color-mix(in srgb, var(--company-section-accent) 16%, var(--surface));
  color: var(--company-section-accent-ink);
  font-weight: 680;
}

.company-history-title-list, .company-graph-title-list {
  border-left: 1px solid color-mix(in srgb, var(--company-section-accent) 18%, var(--border));
  margin: 0 0 6px 12px;
  padding: 0 0 0 8px;
  list-style: none;
}

.company-history-title-list li + li, .company-graph-title-list li + li {
  margin-top: 0;
}

.company-history-title-list a, .company-graph-title-list a {
  min-height: 30px;
  padding: 5px 6px 5px var(--company-history-title-indent, 7px);
  font-size: var(--text-caption);
  border-radius: 7px;
  line-height: 1.35;
}

.company-history-title-list a:before, .company-graph-title-list a:before {
  display: none;
}

.company-news-list {
  gap: 16px;
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
}

.company-news-item {
  border-bottom: 1px solid var(--border);
  gap: 6px;
  padding-bottom: 16px;
  display: grid;
}

.company-news-item-with-preview {
  grid-template-columns: 96px minmax(0, 1fr);
  align-items: start;
  gap: 14px;
}

.company-news-preview-link {
  background: var(--surface-subtle);
  border-radius: 8px;
  flex: none;
  width: 96px;
  height: 72px;
  display: block;
  overflow: hidden;
}

.company-news-preview {
  object-fit: cover;
  width: 100%;
  height: 100%;
  display: block;
}

.company-news-body {
  gap: 6px;
  min-width: 0;
  display: grid;
}

.company-news-item:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}

.company-news-title {
  color: var(--ink);
  font-size: var(--text-body);
  font-weight: 650;
  line-height: 1.35;
  text-decoration: none;
}

.company-news-title:hover {
  text-decoration: underline;
}

.company-news-meta {
  color: var(--muted);
  font-size: var(--text-caption);
  flex-wrap: wrap;
  gap: 8px 12px;
  display: flex;
}

.company-news-summary {
  color: var(--muted);
  font-size: var(--text-caption);
  margin: 0;
  line-height: 1.45;
}

.company-news-empty {
  color: var(--muted);
  margin: 0;
}

.company-news-skeleton {
  border-radius: 8px;
}

.company-news-sentinel {
  min-height: 1px;
}

.company-news-load-more {
  margin-top: 16px;
}

@media (max-width: 600px) {
  .company-news-item-with-preview {
    grid-template-columns: 72px minmax(0, 1fr);
    gap: 10px;
  }

  .company-news-preview-link {
    width: 72px;
    height: 54px;
  }
}

.sankey-label-value, .financial-graph-value-link, .income-sankey-canvas, .income-profit-loss-bridge-canvas {
  cursor: pointer;
}

.financial-graph-value-link {
  appearance: none;
  color: inherit;
  font: inherit;
  font-weight: inherit;
  background: none;
  border: 0;
  padding: 0;
}

.financial-graph-value-link:hover, .financial-graph-value-link:focus-visible {
  color: var(--accent);
  text-underline-offset: 2px;
  text-decoration: underline;
}

.stock-price-block {
  text-align: right;
  min-width: 172px;
}

.stock-price-block strong, .stock-price-block span {
  display: block;
}

.stock-price-block strong {
  letter-spacing: -.035em;
  font-size: 22px;
}

.stock-price-change {
  letter-spacing: normal;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
  margin-left: 8px;
  font-size: 13px;
}

.stock-price-change-up {
  color: var(--income-profit);
}

.stock-price-change-down {
  color: var(--income-expense);
}

.stock-price-block span {
  color: var(--faint);
  font-size: var(--text-caption);
  white-space: nowrap;
  margin-top: 4px;
}

.stock-price-block span.stale {
  color: #9a692b;
}

.stock-price-block .skeleton-price-value {
  width: 104px;
  height: 25px;
  margin-left: auto;
}

.stock-price-block .skeleton-price-caption {
  width: 142px;
  height: 9px;
  margin: 8px 0 0 auto;
}

.company-page-skeleton .skeleton-company-logo {
  border-radius: 10px;
  flex: none;
  width: 44px;
  height: 44px;
}

.company-page-skeleton .stock-title-copy {
  flex: auto;
}

.company-page-skeleton .skeleton-company-name {
  border-radius: 8px;
  width: min(260px, 70%);
  height: 24px;
}

.company-page-skeleton .skeleton-company-website {
  width: min(140px, 40%);
  height: 10px;
  margin-top: 10px;
}

.company-page-skeleton .skeleton-company-nav-item {
  align-items: center;
  min-height: 38px;
  padding: 7px 10px 7px 12px;
  display: flex;
}

.company-page-skeleton .skeleton-company-section-title {
  border-radius: 8px;
  width: 128px;
  height: 22px;
}

.stock-overview-section {
  grid-template-columns: minmax(220px, 250px) minmax(0, 1fr);
  grid-template-areas: "heading actions"
                       "metrics chart"
                       "summary summary";
  align-items: stretch;
  gap: 14px 24px;
  display: grid;
}

.stock-overview-heading {
  grid-area: heading;
  align-items: center;
  min-width: 0;
  margin: 0;
  display: flex;
}

.stock-overview-heading h2 {
  font-family: var(--font-editorial);
  font-size: var(--text-section);
  letter-spacing: -.025em;
  margin: 0;
}

.stock-overview-actions {
  flex-wrap: wrap;
  grid-area: actions;
  justify-content: end;
  align-items: center;
  gap: 16px;
  min-width: 0;
  display: flex;
}

.stock-overview-price {
  grid-area: price;
  min-width: 0;
  display: none;
}

.stock-overview-chart {
  grid-area: chart;
  min-width: 0;
}

.stock-overview-chart .market-history {
  padding-inline: 8px;
}

.stock-overview-card {
  grid-area: metrics;
  min-width: 0;
}

.stock-overview-section .company-summary {
  grid-area: summary;
}

.stock-overview-list {
  grid-template-rows: repeat(8, minmax(0, 1fr));
  min-height: 380px;
  margin: 0;
  display: grid;
}

.stock-overview-metric {
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  min-width: 0;
  padding: 7px 0;
  display: flex;
}

.stock-overview-metric dt {
  min-width: 0;
  color: var(--muted);
  font-size: var(--text-small);
  line-height: 1.25;
}

.stock-overview-metric dd {
  color: var(--ink);
  font-size: var(--text-ui);
  letter-spacing: -.015em;
  text-align: right;
  white-space: nowrap;
  margin: 0;
  font-weight: 500;
}

.overview-unavailable {
  color: var(--faint);
  font-weight: 500;
}

.skeleton-overview-value {
  height: 11px;
}

.skeleton-width-1 {
  width: 48px;
}

.skeleton-width-2 {
  width: 66px;
}

.skeleton-width-3 {
  width: 82px;
}

.market-history {
  min-width: 0;
  overflow: hidden;
}

.segmented-control {
  background: var(--segmented-track);
  border: 0;
  border-radius: 10px;
  padding: 3px;
  display: inline-flex;
}

.segmented-control-button {
  color: var(--muted);
  font-size: var(--text-small);
  cursor: pointer;
  background: none;
  border: 0;
  border-radius: 7px;
  font-weight: 650;
  transition: background-color .16s, color .16s, box-shadow .16s;
}

.segmented-control-button:hover {
  color: var(--ink);
}

.segmented-control-button.is-active {
  color: var(--ink);
  background: #fff;
}

.segmented-control[data-size="compact"] .segmented-control-button {
  min-width: 68px;
  height: 32px;
  padding: 0 13px;
}

.segmented-control[data-size="compact"] .segmented-control-button.is-active {
  box-shadow: 0 1px 4px #14181414;
}

.empty-data {
  text-align: center;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  min-height: 196px;
  padding: 28px;
  display: flex;
}

.market-history .empty-data {
  min-height: 380px;
}

.empty-data > span {
  width: 34px;
  height: 34px;
  color: var(--faint);
  background: #f0f1ed;
  border-radius: 50%;
  place-items: center;
  margin-bottom: 12px;
  display: grid;
}

.empty-data strong {
  font-size: var(--text-body);
}

.empty-data p {
  max-width: 280px;
  color: var(--faint);
  font-size: var(--text-small);
  margin: 7px 0 0;
  line-height: 1.5;
}

.history-loading-ring {
  border: 2px solid var(--border);
  border-top-color: var(--accent);
  animation: .8s linear infinite loading-spin;
}

.history-chart-interactive {
  --history-color: var(--accent);
  --history-active-volume: #2459e08c;
  touch-action: pan-y;
  border-radius: 8px;
  width: 100%;
  height: 364px;
  margin: 8px 0;
  position: relative;
  overflow: hidden;
}

.history-chart-interactive.history-trend-up {
  --history-color: var(--income-profit);
  --history-active-volume: color-mix(in srgb, var(--income-profit) 55%, transparent);
}

.history-chart-interactive.history-trend-down {
  --history-color: var(--income-expense);
  --history-active-volume: color-mix(in srgb, var(--income-expense) 55%, transparent);
}

.history-chart-interactive:focus-visible {
  box-shadow: inset 0 0 0 2px var(--accent);
  outline: none;
}

.history-chart {
  width: 100%;
  min-width: 0;
  max-width: 100%;
  height: 364px;
  display: block;
  overflow: hidden;
}

.history-grid-line {
  stroke: var(--border);
  stroke-width: 1px;
  stroke-dasharray: 2 4;
  vector-effect: non-scaling-stroke;
}

.history-axis-label, .history-volume-label {
  fill: var(--faint);
  font-size: 10px;
}

.history-price-axis-label {
  stroke: #ffffffeb;
  stroke-width: 5px;
  paint-order: stroke fill;
  stroke-linejoin: round;
}

.history-volume-label {
  font-size: var(--text-micro);
  letter-spacing: .05em;
  text-transform: uppercase;
  font-weight: 650;
}

.history-price-line {
  fill: none;
  stroke: var(--history-color);
  stroke-width: 2px;
  stroke-linecap: round;
  stroke-linejoin: round;
  vector-effect: non-scaling-stroke;
}

.history-volume-bar {
  fill: #92979157;
}

.history-volume-bar.active {
  fill: var(--history-active-volume);
}

.history-crosshair {
  stroke: #15171570;
  stroke-width: 1px;
  stroke-dasharray: 3 4;
  vector-effect: non-scaling-stroke;
}

.history-active-point {
  fill: #fff;
  stroke: var(--history-color);
  stroke-width: 2px;
  vector-effect: non-scaling-stroke;
}

.history-chart-tooltip {
  z-index: 2;
  border: 1px solid var(--border);
  background: var(--ink);
  color: #fff;
  pointer-events: none;
  border-radius: 9px;
  min-width: 144px;
  padding: 9px 11px;
  position: absolute;
  transform: translate(-50%, calc(-100% - 12px));
  box-shadow: 0 8px 24px #14181424;
}

.history-chart-tooltip.align-left {
  transform: translate(8px, calc(-100% - 12px));
}

.history-chart-tooltip.align-right {
  transform: translate(calc(-100% - 8px), calc(-100% - 12px));
}

.history-chart-tooltip strong, .history-chart-tooltip span {
  display: block;
}

.history-chart-tooltip strong {
  font-size: var(--text-ui);
}

.history-chart-tooltip span {
  color: #ffffffad;
  font-size: var(--text-caption);
  white-space: nowrap;
  margin-top: 3px;
}

.history-chart-skeleton {
  background: linear-gradient(180deg, var(--surface), var(--surface-subtle));
  border-radius: 8px;
  width: 100%;
  height: 364px;
  margin: 8px 0;
  position: relative;
  overflow: hidden;
}

.skeleton-history-grid {
  flex-direction: column;
  justify-content: space-between;
  display: flex;
  position: absolute;
  inset: 24px 0 44px;
}

.skeleton-history-grid span {
  border-top: 1px dashed var(--border);
  width: 100%;
  display: block;
}

.skeleton-history-trend {
  transform-origin: 0;
  border-radius: 4px;
  width: 100%;
  height: 5px;
  position: absolute;
  top: 128px;
  left: 0;
  transform: rotate(-5deg);
}

.skeleton-history-volume {
  align-items: end;
  gap: clamp(4px, 1.2vw, 12px);
  height: 62px;
  display: flex;
  position: absolute;
  bottom: 44px;
  left: 0;
  right: 0;
}

.skeleton-history-bar {
  border-radius: 3px 3px 0 0;
  flex: 1;
  min-width: 3px;
}

.skeleton-history-bar-1, .skeleton-history-bar-7 {
  height: 32%;
}

.skeleton-history-bar-2, .skeleton-history-bar-9 {
  height: 54%;
}

.skeleton-history-bar-3, .skeleton-history-bar-10 {
  height: 76%;
}

.skeleton-history-bar-4, .skeleton-history-bar-8 {
  height: 43%;
}

.skeleton-history-bar-5, .skeleton-history-bar-12 {
  height: 66%;
}

.skeleton-history-bar-6, .skeleton-history-bar-11 {
  height: 88%;
}

.burn-rate-section {
  margin-top: 34px;
  padding-top: 30px;
}

.burn-rate-heading-row {
  margin-bottom: 14px;
}

.burn-rate-heading-row h3 {
  font-family: var(--font-editorial);
  font-size: var(--text-section);
  letter-spacing: -.025em;
  margin: 0;
}

.burn-rate-heading-row p {
  max-width: 42rem;
  color: var(--faint);
  font-size: var(--text-small);
  margin: 6px 0 0;
  line-height: 1.45;
}

.burn-rate-legend {
  color: var(--muted);
  font-size: var(--text-caption);
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px 14px;
  margin: 10px 0 0;
  display: flex;
}

.burn-rate-legend span {
  white-space: nowrap;
  align-items: center;
  gap: 6px;
  display: inline-flex;
}

.burn-rate-legend i {
  border-radius: 3px;
  width: 9px;
  height: 9px;
}

.burn-rate-legend i.reported {
  background: var(--accent);
}

.burn-rate-legend i.forecast {
  border-top: 2px dashed var(--income-expense);
  border-radius: 0;
  width: 12px;
  height: 0;
}

.burn-rate-panel {
  border: 1px solid var(--border);
  border-radius: 14px;
  overflow: hidden;
}

.burn-rate-chart-interactive {
  touch-action: pan-y;
  position: relative;
  overflow: hidden;
}

.burn-rate-chart-interactive:focus-visible {
  box-shadow: inset 0 0 0 2px var(--accent);
  outline: none;
}

.burn-rate-chart {
  width: 100%;
  height: auto;
  display: block;
}

.burn-rate-grid-line {
  stroke: var(--border);
  stroke-width: 1px;
  stroke-dasharray: 2 4;
  vector-effect: non-scaling-stroke;
}

.burn-rate-axis-label {
  fill: var(--faint);
  font-family: var(--font-ui);
  font-variant-numeric: tabular-nums;
  font-size: 10px;
}

.burn-rate-value-label {
  stroke: color-mix(in srgb, var(--surface) 88%, transparent);
  stroke-width: 4px;
  paint-order: stroke fill;
  stroke-linejoin: round;
}

.burn-rate-line {
  fill: none;
  stroke-width: 2px;
  stroke-linecap: round;
  stroke-linejoin: round;
  vector-effect: non-scaling-stroke;
}

.burn-rate-line.reported {
  stroke: var(--accent);
}

.burn-rate-line.forecast {
  stroke: var(--income-expense);
  stroke-dasharray: 7 6;
}

.burn-rate-point {
  fill: var(--surface);
  stroke-width: 2px;
  vector-effect: non-scaling-stroke;
}

.burn-rate-point.reported {
  stroke: var(--accent);
}

.burn-rate-point.reported.active {
  fill: var(--accent);
}

.burn-rate-point.forecast-end {
  stroke: var(--income-expense);
}

.burn-rate-forecast-boundary {
  stroke: color-mix(in srgb, var(--income-expense) 55%, transparent);
  stroke-width: 1px;
  stroke-dasharray: 2 4;
  vector-effect: non-scaling-stroke;
}

.burn-rate-forecast-label {
  fill: var(--income-expense);
  font-weight: 650;
}

.burn-rate-crosshair {
  stroke: #15171561;
  stroke-width: 1px;
  stroke-dasharray: 3 4;
  vector-effect: non-scaling-stroke;
}

.burn-rate-tooltip {
  z-index: 2;
  box-sizing: border-box;
  border: 1px solid var(--border);
  background: var(--ink);
  color: #fff;
  pointer-events: none;
  border-radius: 9px;
  min-width: 188px;
  max-width: calc(100% - 16px);
  padding: 9px 11px;
  position: absolute;
  box-shadow: 0 8px 24px #14181424;
}

.burn-rate-tooltip strong, .burn-rate-tooltip span {
  display: block;
}

.burn-rate-tooltip strong {
  font-size: var(--text-ui);
}

.burn-rate-tooltip span {
  color: #ffffffad;
  font-size: var(--text-caption);
  white-space: nowrap;
  margin-top: 3px;
}

.burn-rate-empty {
  border: 1px solid var(--border);
  background: var(--surface);
  text-align: center;
  border-radius: 14px;
  place-content: center;
  justify-items: center;
  min-height: 220px;
  padding: 28px;
  display: grid;
}

.burn-rate-empty strong {
  font-size: var(--text-body);
}

.burn-rate-empty p {
  max-width: 460px;
  color: var(--faint);
  font-size: var(--text-small);
  margin: 7px 0 0;
  line-height: 1.5;
}

.corporate-events-section {
  min-width: 0;
  max-width: 100%;
  margin-top: 34px;
  padding-top: 30px;
}

.company-history-section {
  margin-top: 34px;
  padding-top: 30px;
}

.company-history-heading-row {
  justify-content: space-between;
  align-items: end;
  gap: 18px;
  margin-bottom: 16px;
  display: flex;
}

.company-history-heading-row h3 {
  font-size: var(--text-section);
  letter-spacing: -.025em;
  margin: 0;
}

.company-history-stale {
  color: var(--faint);
  font-size: var(--text-caption);
}

.company-history-body {
  width: 100%;
  color: var(--muted);
}

.company-history-body p {
  font-size: var(--text-reading);
  margin: 0;
  line-height: 1.68;
}

.company-history-body p + p {
  margin-top: 13px;
}

.company-history-subheading {
  color: var(--ink);
  letter-spacing: -.02em;
  margin: 26px 0 9px;
  scroll-margin-top: 96px;
}

.company-history-body > .company-history-subheading:first-child {
  margin-top: 0;
}

.company-history-subheading-level-3 {
  font-size: 18px;
}

.company-history-subheading-level-4 {
  font-size: var(--text-card-title);
}

.company-history-subheading-level-5, .company-history-subheading-level-6 {
  font-size: var(--text-body);
}

.company-history-body p + .company-history-subheading {
  margin-top: 26px;
}

.company-history-attribution {
  color: var(--faint);
  font-size: var(--text-caption);
  justify-content: space-between;
  gap: 16px;
  margin-top: 16px;
  line-height: 1.45;
  display: flex;
}

.company-history-attribution a {
  color: var(--accent);
}

.corporate-events-heading-row {
  justify-content: space-between;
  align-items: end;
  gap: 18px;
  margin-bottom: 14px;
  display: flex;
}

.corporate-events-heading-row .eyebrow {
  color: var(--faint);
  font-size: var(--text-micro);
  letter-spacing: .08em;
  text-transform: uppercase;
  margin: 0 0 6px;
  font-weight: 700;
}

.corporate-events-heading-row h3 {
  font-size: var(--text-section);
  letter-spacing: -.025em;
  margin: 0;
}

.financing-table-scroll {
  -webkit-overflow-scrolling: touch;
  border: 1px solid var(--border);
  background: var(--surface);
  overscroll-behavior-inline: contain;
  border-radius: 11px;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  overflow: auto hidden;
}

.financing-table-scroll:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 2px;
}

.financing-table {
  border-collapse: collapse;
  width: 100%;
  min-width: 860px;
  color: var(--muted);
  font-family: var(--font-ui);
  font-size: var(--text-small);
  font-style: normal;
  font-weight: 400;
  line-height: 1.45;
}

.financing-table th, .financing-table td {
  border-right: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
  text-align: left;
  vertical-align: middle;
  padding: 13px 14px;
}

.financing-table th:last-child, .financing-table td:last-child {
  border-right: 0;
}

.financing-table tbody tr:last-child th, .financing-table tbody tr:last-child td {
  border-bottom: 0;
}

.financing-table thead th {
  background: var(--financial-table-header);
  color: var(--financial-table-header-ink);
  font-size: var(--text-micro);
  letter-spacing: .015em;
  white-space: nowrap;
  border-right: 0;
  font-weight: 800;
}

.financing-table tbody th {
  color: var(--ink);
  font-size: inherit;
  font-style: inherit;
  font-weight: inherit;
  line-height: inherit;
}

.financing-table time {
  color: var(--muted);
  white-space: nowrap;
}

.financing-table-number {
  white-space: nowrap;
  text-align: right !important;
}

.financing-type {
  color: var(--ink);
  white-space: nowrap;
}

.financing-source-links {
  flex-wrap: wrap;
  gap: 4px;
  display: flex;
}

.financing-source-link {
  color: #000;
  cursor: pointer;
  background: none;
  border: 0;
  border-radius: 4px;
  align-items: center;
  gap: 4px;
  min-height: 27px;
  padding: 0 3px;
  display: inline-flex;
}

.financing-source-link-label {
  text-underline-offset: 2px;
  text-decoration: underline;
  display: block;
}

.financing-source-link-icon {
  flex: none;
  width: 13px;
  height: 13px;
  display: block;
}

.financing-source-link:hover {
  opacity: .68;
}

.financing-source-link:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 1px;
}

.financing-table-skeleton th, .financing-table-skeleton td {
  height: 46px;
}

.financing-table-skeleton .skeleton-line {
  width: 100%;
  height: 9px;
}

.acquisition-table {
  table-layout: fixed;
  min-width: 960px;
}

.acquisition-table-scroll {
  width: 100%;
  min-width: 0;
}

.acquisition-table tbody {
  color: var(--ink);
  font-size: 12px;
}

.acquisition-table tbody :is(th, td, time, .acquisition-stage, .financing-type, .financing-source-link) {
  color: inherit;
}

.acquisition-table th:first-child {
  width: 18%;
}

.acquisition-table th:nth-child(2) {
  width: 11%;
}

.acquisition-table th:nth-child(3) {
  width: 8%;
}

.acquisition-table th:nth-child(4) {
  width: 18%;
}

.acquisition-table th:nth-child(5) {
  width: 34%;
}

.acquisition-table th:nth-child(6) {
  width: 11%;
}

.acquisition-stage {
  color: var(--ink);
  white-space: nowrap;
}

.corporate-events-pagination {
  justify-content: center;
  align-items: center;
  gap: 12px;
  margin-top: 18px;
  display: flex;
}

.corporate-events-pagination-pages {
  align-items: center;
  gap: 4px;
  display: inline-flex;
}

.corporate-events-pagination button {
  min-width: 32px;
  min-height: 32px;
  color: var(--muted);
  font-size: var(--text-caption);
  cursor: pointer;
  background: none;
  border: 1px solid #0000;
  border-radius: 7px;
  padding: 0 8px;
  font-weight: 650;
}

.corporate-events-pagination button:hover:not(:disabled) {
  color: var(--ink);
  background: none;
  border-color: #0000;
}

.corporate-events-pagination button:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 1px;
}

.corporate-events-pagination-page[aria-current="page"]:not(:hover) {
  border-color: var(--border);
  box-shadow: none;
  color: var(--ink);
  background: #fff;
  border-radius: 999px;
}

.corporate-events-pagination-control {
  flex: 0 0 32px;
  place-items: center;
  width: 32px;
  display: inline-grid;
  padding: 0 !important;
}

.corporate-events-pagination-control .chevron-icon {
  width: 12px;
  height: 12px;
}

.corporate-events-pagination-previous .chevron-icon {
  transform: rotate(180deg);
}

.corporate-events-pagination-ellipsis {
  min-width: 18px;
  color: var(--faint);
  text-align: center;
  font-size: 11px;
}

.corporate-event-source-overlay {
  z-index: 50;
  background: #1418146b;
  place-items: center;
  padding: 24px;
  display: grid;
  position: fixed;
  inset: 0;
}

.corporate-event-source-dialog {
  border: 1px solid var(--border);
  background: #fafbf8;
  border-radius: 14px;
  flex-direction: column;
  width: min(1080px, 100%);
  height: min(820px, 100%);
  display: flex;
  overflow: hidden;
  box-shadow: 0 22px 70px #14181438;
}

.corporate-event-source-header {
  background: var(--surface);
  justify-content: space-between;
  align-items: start;
  gap: 18px;
  padding: 18px 20px 14px;
  display: flex;
}

.corporate-event-source-header h3 {
  letter-spacing: -.02em;
  margin: 0;
  font-size: 17px;
}

.corporate-event-source-header p {
  color: var(--faint);
  font-size: var(--text-caption);
  margin: 5px 0 0;
}

.corporate-event-source-close {
  width: 30px;
  height: 30px;
  color: var(--ink);
  cursor: pointer;
  background: none;
  border: 0;
  border-radius: 0;
  flex: none;
  place-items: center;
  padding: 0;
  font-size: 21px;
  line-height: 1;
  display: grid;
}

.corporate-event-source-close:hover {
  background: none;
}

.corporate-event-source-close:focus-visible {
  outline: none;
}

.corporate-event-source-search {
  border-bottom: 1px solid var(--border);
  background: var(--surface);
  align-items: center;
  gap: 6px;
  padding: 8px 12px;
  display: flex;
}

.corporate-event-source-search input {
  border: 1px solid var(--border);
  min-width: 80px;
  height: 34px;
  color: var(--ink);
  font: inherit;
  font-size: var(--text-small);
  background: #fff;
  border-radius: 7px;
  flex: 1;
  padding: 0 10px;
}

.corporate-event-source-search input:focus {
  outline-offset: 0;
  border-color: #2459e08c;
  outline: 2px solid #2459e02e;
}

.corporate-event-source-search-status {
  min-width: 66px;
  color: var(--faint);
  font-size: var(--text-small);
  text-align: right;
  white-space: nowrap;
}

.corporate-event-source-search button {
  border: 1px solid var(--border);
  width: 30px;
  height: 30px;
  color: var(--ink);
  cursor: pointer;
  background: #fff;
  border-radius: 6px;
  flex: none;
  place-items: center;
  padding: 0;
  font-size: 16px;
  line-height: 1;
  display: grid;
}

.corporate-event-source-search button:hover:not(:disabled) {
  background: #f1f2ee;
}

.corporate-event-source-search button:disabled {
  color: var(--border-strong);
  cursor: default;
  opacity: .6;
}

.corporate-event-source-search button:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 1px;
}

.corporate-event-source-frame {
  background: #fff;
  flex: 1;
  min-height: 0;
  padding: 0;
}

.corporate-event-source-frame iframe {
  background: #fff;
  border: 0;
  border-radius: 0;
  width: 100%;
  height: 100%;
  min-height: 300px;
  display: block;
}

.corporate-event-source-state {
  min-height: 220px;
  color: var(--muted);
  font-size: var(--text-ui);
  text-align: center;
  place-items: center;
  padding: 30px;
  display: grid;
}

.corporate-event-source-error {
  flex-direction: column;
  gap: 8px;
  display: flex;
}

.corporate-event-source-error strong {
  color: var(--ink);
  font-size: 13px;
}

.corporate-event-source-error p {
  max-width: 420px;
  margin: 0;
  line-height: 1.5;
}

.corporate-event-source-error button {
  border: 1px solid var(--border);
  min-height: 34px;
  color: var(--ink);
  font-size: var(--text-small);
  cursor: pointer;
  background: #fff;
  border-radius: 7px;
  padding: 0 12px;
  font-weight: 650;
}

.corporate-event-source-error button:hover {
  background: #f1f2ee;
}

.corporate-event-source-warning {
  color: #8a5c25;
  font-size: var(--text-small);
  background: #fff8eb;
  margin: 0;
  padding: 8px 12px;
  line-height: 1.45;
}

.corporate-event-empty {
  border: 1px dashed var(--border);
  text-align: center;
  border-radius: 11px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  min-height: 140px;
  padding: 24px;
  display: flex;
}

.corporate-event-empty strong {
  font-size: var(--text-body);
  margin-top: 8px;
}

.corporate-event-empty p {
  max-width: 380px;
  color: var(--faint);
  font-size: var(--text-small);
  margin: 6px 0 0;
  line-height: 1.5;
}

.insider-section {
  --insider-sticky-top: var(--company-section-top);
  margin-top: 34px;
  padding-top: 30px;
}

.insider-heading-row {
  z-index: 14;
  top: var(--insider-sticky-top);
  background: var(--surface);
  justify-content: space-between;
  align-items: center;
  gap: 18px;
  margin-bottom: 0;
  padding: 6px 0 14px;
  display: flex;
  position: sticky;
}

.insider-heading-row h3 {
  font-size: var(--text-section);
  letter-spacing: -.025em;
  margin: 0;
}

.insider-table {
  min-width: 920px;
}

.insider-table th:first-child {
  width: 12%;
}

.insider-table th:nth-child(2) {
  width: 18%;
}

.insider-table th:nth-child(3) {
  width: 20%;
}

.insider-table th:nth-child(4) {
  width: 16%;
}

.insider-table th:nth-child(5) {
  width: 14%;
}

.insider-table th:nth-child(6) {
  width: 12%;
}

.insider-table th:nth-child(7) {
  width: 8%;
}

.insider-shares {
  white-space: normal;
}

.insider-shares span, .insider-shares small {
  display: block;
}

.insider-shares small {
  color: var(--muted);
  font-size: var(--text-caption);
  margin-top: 2px;
  font-weight: 500;
  line-height: 1.3;
}

.insider-sentinel {
  min-height: 1px;
}

@media (max-width: 800px) {
  .insider-heading-row {
    flex-direction: column;
    align-items: stretch;
    padding: 0 0 16px;
    position: static;
  }

  .insider-heading-row h3 {
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    position: absolute;
    overflow: hidden;
  }

  .insider-table-scroll {
    border: 0;
    border-radius: 0;
    overflow-x: hidden;
  }

  .insider-table {
    width: 100%;
    min-width: 0;
  }

  .insider-table thead {
    display: none;
  }

  .insider-table, .insider-table tbody {
    width: 100%;
    display: block;
  }

  .insider-table tbody tr {
    border-bottom: 1px solid var(--border);
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    grid-template-areas: "name type"
                         ". shares"
                         "title date";
    gap: 2px 12px;
    padding: 12px 0;
    display: grid;
  }

  .insider-table tbody tr:last-child {
    border-bottom: 0;
  }

  .insider-table tbody :is(th, td) {
    white-space: normal;
    overflow-wrap: break-word;
    border: 0;
    min-width: 0;
    padding: 0;
    display: block;
    width: auto !important;
  }

  .insider-cell-name {
    color: var(--ink);
    grid-area: name;
    align-self: start;
    font-weight: 600;
  }

  .insider-cell-title {
    color: var(--muted);
    grid-area: title;
    align-self: end;
  }

  .insider-cell-type {
    text-align: right;
    color: var(--ink);
    grid-area: type;
    place-self: start end;
  }

  .insider-cell-shares {
    grid-area: shares;
    place-self: center end;
    text-align: right !important;
  }

  .insider-table .insider-shares small {
    display: none;
  }

  .insider-cell-date {
    text-align: right;
    grid-area: date;
    place-self: end;
  }

  .insider-cell-date time {
    white-space: nowrap;
  }

  .insider-table tbody :is(.insider-cell-value, .insider-cell-source) {
    display: none;
  }

  .insider-table.financing-table-skeleton tbody :is(th, td) {
    height: auto;
  }

  .insider-table.financing-table-skeleton .insider-cell-name .skeleton-line {
    width: 72%;
  }

  .insider-table.financing-table-skeleton .insider-cell-title .skeleton-line {
    width: 54%;
  }

  .insider-table.financing-table-skeleton :is(.insider-cell-type, .insider-cell-shares, .insider-cell-date) .skeleton-line {
    width: 64px;
    margin-left: auto;
  }
}

.visually-hidden {
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  position: absolute !important;
  overflow: hidden !important;
}

.insider-empty {
  border: 1px dashed var(--border);
  text-align: center;
  border-radius: 11px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  min-height: 170px;
  padding: 28px;
  display: flex;
}

.insider-empty > span:not(.history-loading-ring) {
  color: var(--faint);
  font-size: 20px;
}

.insider-empty strong {
  font-size: var(--text-body);
  margin-top: 10px;
}

.insider-empty p {
  max-width: 380px;
  color: var(--faint);
  font-size: var(--text-small);
  margin: 6px 0 0;
  line-height: 1.5;
}

.financial-section {
  --financial-sticky-top: var(--company-section-top);
  --financial-sticky-heading-height: 48px;
  --financial-sticky-table-header-height: 50px;
  --financial-sticky-toolbar-height: 42px;
  margin-top: 34px;
  padding-top: 30px;
}

.section-heading-row {
  justify-content: space-between;
  align-items: end;
  gap: 24px;
  margin-bottom: 0;
  display: flex;
}

.financial-section .section-heading-row {
  z-index: 15;
  top: var(--financial-sticky-top);
  box-sizing: border-box;
  min-height: var(--financial-sticky-heading-height);
  background: var(--surface);
  align-items: center;
  padding: 6px 0;
  position: sticky;
}

.section-heading-row h3 {
  font-size: var(--text-section);
  letter-spacing: -.025em;
  margin: 0;
}

.section-heading-row p {
  color: var(--faint);
  font-size: var(--text-small);
  margin: 0;
}

.quarterly-earnings-section {
  --earnings-sticky-top: var(--company-section-top);
}

.quarterly-earnings-sticky {
  z-index: 15;
  top: var(--earnings-sticky-top);
  background: var(--surface);
  position: sticky;
}

.quarterly-earnings-sticky > p {
  margin: 0 0 8px;
}

.financial-graphs-section {
  --financial-graphs-sticky-top: var(--company-section-top);
  margin-top: 34px;
  padding-top: 30px;
}

.financial-graphs-heading-row {
  z-index: 14;
  top: var(--financial-graphs-sticky-top);
  background: var(--surface);
  align-items: center;
  padding: 12px 0;
  position: sticky;
}

.financial-graphs-heading-controls {
  align-items: center;
  gap: 8px;
  display: flex;
}

.financial-graphs-choice-group {
  align-items: center;
  gap: 3px;
  display: inline-flex;
}

.financial-graphs-choice-group button {
  min-height: 30px;
  color: var(--muted);
  font: 650 var(--text-small)/1 var(--font-ui);
  cursor: pointer;
  background: none;
  border: 0;
  border-radius: 7px;
  padding: 0 9px;
  transition: background-color .12s, color .12s;
}

.financial-graphs-choice-group button:hover {
  background: var(--surface-subtle);
  color: var(--ink);
}

.financial-graphs-choice-group button.is-active {
  background: color-mix(in srgb, var(--ink) 10%, var(--surface));
  color: var(--ink);
}

.financial-graphs-choice-group button:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 1px;
}

.financial-graphs-control-divider {
  background: var(--border);
  flex: none;
  width: 1px;
  height: 22px;
}

.financial-performance-chart {
  background: var(--surface);
  margin: 18px 0 24px;
  padding: 16px;
}

.financial-performance-chart figcaption {
  justify-content: space-between;
  align-items: start;
  gap: 16px;
  margin-bottom: 10px;
  display: flex;
}

.financial-performance-chart h5 {
  font-size: var(--text-body);
  letter-spacing: -.015em;
  margin: 0;
}

.financial-segment-view-switch {
  align-items: center;
  gap: 3px;
  display: inline-flex;
}

.financial-segment-view-switch button {
  min-height: 28px;
  color: var(--muted);
  font: 650 var(--text-small)/1 var(--font-ui);
  cursor: pointer;
  background: none;
  border: 0;
  border-radius: 6px;
  padding: 0 8px;
}

.financial-segment-view-switch button:hover {
  background: var(--surface-subtle);
  color: var(--ink);
}

.financial-segment-view-switch button.is-active {
  background: color-mix(in srgb, var(--ink) 10%, var(--surface));
  color: var(--ink);
}

.financial-segment-view-switch button:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 1px;
}

.financial-margin-chart {
  background: var(--surface);
  margin: 24px 0;
  padding: 16px;
}

.financial-margin-chart figcaption {
  margin-bottom: 10px;
}

.financial-margin-chart h5 {
  font-size: var(--text-body);
  letter-spacing: -.015em;
  margin: 0;
}

.financial-pe-chart {
  background: var(--surface);
  margin: 24px 0;
  padding: 16px;
}

.financial-pe-chart figcaption {
  justify-content: space-between;
  align-items: start;
  gap: 16px;
  margin-bottom: 10px;
  display: flex;
}

.financial-pe-chart h5 {
  font-size: var(--text-body);
  letter-spacing: -.015em;
  margin: 0;
}

.financial-performance-legend {
  color: var(--muted);
  font-size: var(--text-caption);
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px 14px;
  display: flex;
}

.financial-performance-chart-legend {
  margin-bottom: 10px;
}

.financial-performance-legend span {
  align-items: center;
  gap: 5px;
  display: inline-flex;
}

.financial-performance-legend i {
  border-radius: 2px;
  width: 9px;
  height: 9px;
}

.financial-performance-legend.is-line i {
  border-radius: 1px;
  width: 14px;
  height: 2px;
}

.financial-margin-legend {
  color: var(--muted);
  font-size: var(--text-caption);
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px 14px;
  margin-top: 10px;
  display: flex;
}

.financial-margin-legend span {
  align-items: center;
  gap: 5px;
  display: inline-flex;
}

.financial-margin-legend i {
  border-radius: 1px;
  width: 14px;
  height: 2px;
}

.financial-performance-legend .revenue {
  fill: var(--accent);
  background: var(--accent);
}

.financial-performance-legend .gross-profit {
  fill: #ed9a1f;
  background: #ed9a1f;
}

.financial-performance-legend .profit {
  fill: var(--income-profit);
  background: var(--income-profit);
}

.financial-performance-chart-interactive {
  touch-action: pan-y;
  outline: 0;
  position: relative;
}

.financial-performance-chart-interactive:focus-visible {
  box-shadow: 0 0 0 2px var(--accent);
  border-radius: 6px;
}

.financial-performance-chart svg, .financial-margin-chart svg {
  width: 100%;
  height: auto;
  min-height: 320px;
  display: block;
}

.financial-margin-chart-interactive {
  touch-action: pan-y;
  outline: 0;
  position: relative;
}

.financial-margin-chart-interactive:focus-visible {
  box-shadow: 0 0 0 2px var(--accent);
  border-radius: 6px;
}

.financial-pe-chart svg {
  width: 100%;
  height: auto;
  min-height: 320px;
  display: block;
}

.financial-pe-chart-interactive {
  touch-action: pan-y;
  outline: 0;
  position: relative;
}

.financial-pe-chart-interactive:focus-visible {
  box-shadow: 0 0 0 2px var(--accent);
  border-radius: 6px;
}

.financial-performance-grid {
  stroke: var(--border);
  stroke-width: 1px;
  stroke-dasharray: 2 4;
  vector-effect: non-scaling-stroke;
}

.financial-performance-grid.zero {
  stroke: color-mix(in srgb, var(--ink) 34%, transparent);
}

.financial-chart-period-badge {
  font-family: var(--font-ui);
  font-variant-numeric: tabular-nums;
}

.financial-metrics-vertical-grid {
  display: none;
}

@media (min-width: 801px) {
  .financial-performance-grid {
    stroke: color-mix(in srgb, var(--ink) 14%, transparent);
    stroke-dasharray: 1 4;
    stroke-linecap: round;
    pointer-events: none;
  }

  .financial-metrics-vertical-grid {
    display: initial;
  }
}

.financial-performance-axis {
  fill: var(--faint);
  font-family: var(--font-ui);
  font-variant-numeric: tabular-nums;
  font-size: 10px;
}

.financial-performance-value-axis {
  stroke: color-mix(in srgb, var(--surface) 92%, transparent);
  stroke-width: 5px;
  paint-order: stroke fill;
  stroke-linejoin: round;
}

.financial-chart-hover-label rect {
  stroke: color-mix(in srgb, var(--surface) 34%, transparent);
  stroke-width: .75px;
  vector-effect: non-scaling-stroke;
}

.financial-chart-hover-label text {
  fill: #fff;
  font-family: var(--font-ui);
  font-variant-numeric: tabular-nums;
  letter-spacing: -.01em;
  font-size: 10px;
  font-weight: 700;
}

.financial-chart-hover-label[data-ink="dark"] text {
  fill: #151715;
}

.financial-performance-line {
  fill: none;
  stroke-width: 2px;
  stroke-linecap: round;
  stroke-linejoin: round;
  vector-effect: non-scaling-stroke;
}

.financial-performance-line.revenue {
  stroke: var(--accent);
}

.financial-performance-line.gross-profit {
  stroke: #ed9a1f;
}

.financial-performance-line.profit {
  stroke: var(--income-profit);
}

.financial-performance-point.revenue {
  fill: var(--accent);
}

.financial-performance-point.gross-profit {
  fill: #ed9a1f;
}

.financial-performance-point.profit {
  fill: var(--income-profit);
}

.financial-performance-point {
  stroke: var(--surface);
  stroke-width: 1.5px;
  vector-effect: non-scaling-stroke;
}

.financial-performance-crosshair {
  stroke: color-mix(in srgb, var(--ink) 45%, transparent);
  stroke-width: 1px;
  stroke-dasharray: 3 4;
  vector-effect: non-scaling-stroke;
}

.financial-revenue-segment-area {
  fill: var(--revenue-segment-color);
  fill-opacity: .78;
  stroke: var(--surface);
  stroke-width: 1px;
  stroke-linejoin: round;
  vector-effect: non-scaling-stroke;
  transition: fill-opacity .12s;
}

.financial-revenue-segment-chart:hover .financial-revenue-segment-area {
  fill-opacity: .9;
}

.financial-revenue-segment-legend {
  margin-top: 10px;
}

.financial-margin-line {
  fill: none;
  stroke-width: 2px;
  stroke-linecap: round;
  stroke-linejoin: round;
  vector-effect: non-scaling-stroke;
}

.financial-margin-line.gross {
  stroke: var(--accent);
}

.financial-margin-line.operating {
  stroke: #ed9a1f;
}

.financial-margin-line.profit {
  stroke: var(--income-profit);
}

.financial-margin-legend .gross {
  background: var(--accent);
}

.financial-margin-legend .operating {
  background: #ed9a1f;
}

.financial-margin-legend .profit {
  background: var(--income-profit);
}

.financial-margin-point.gross {
  fill: var(--accent);
}

.financial-margin-point.operating {
  fill: #ed9a1f;
}

.financial-margin-point.profit {
  fill: var(--income-profit);
}

.financial-margin-crosshair {
  stroke: color-mix(in srgb, var(--ink) 45%, transparent);
  stroke-width: 1px;
  stroke-dasharray: 3 4;
  vector-effect: non-scaling-stroke;
}

.financial-pe-line {
  fill: none;
  stroke: var(--accent);
  stroke-width: 2.5px;
  stroke-linecap: round;
  stroke-linejoin: round;
  vector-effect: non-scaling-stroke;
}

.financial-pe-point {
  fill: var(--accent);
  stroke: var(--surface);
  stroke-width: 1.5px;
  vector-effect: non-scaling-stroke;
}

.financial-pe-point.active {
  fill: var(--income-profit);
}

.financial-fundamental-chart {
  background: var(--surface);
  margin: 24px 0;
  padding: 16px;
}

.financial-fundamental-chart figcaption {
  margin-bottom: 10px;
}

.financial-fundamental-chart h5 {
  font-size: var(--text-body);
  letter-spacing: -.015em;
  margin: 0;
}

.financial-fundamental-legend {
  color: var(--muted);
  font-size: var(--text-caption);
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px 14px;
  margin-top: 10px;
  display: flex;
}

.financial-fundamental-legend span {
  align-items: center;
  gap: 5px;
  display: inline-flex;
}

.financial-fundamental-legend i {
  border-radius: 2px;
  width: 10px;
  height: 3px;
}

.financial-fundamental-interactive {
  touch-action: pan-y;
  outline: 0;
  position: relative;
}

.financial-fundamental-interactive:focus-visible {
  box-shadow: 0 0 0 2px var(--accent);
  border-radius: 6px;
}

.financial-fundamental-chart svg {
  width: 100%;
  height: auto;
  min-height: 300px;
  display: block;
}

.financial-performance-loading {
  background: var(--surface);
  min-height: 360px;
  margin: 18px 0 24px;
  padding: 16px;
}

.financial-graph-loading figcaption {
  margin-bottom: 10px;
}

.financial-graph-loading h5 {
  font-size: var(--text-body);
  letter-spacing: -.015em;
  margin: 0;
}

.financial-graph-loading-plot {
  background: linear-gradient(var(--border) 1px, transparent 1px) 0 25% / 100% 25%, var(--surface-subtle);
  border-radius: 6px;
  height: 300px;
  position: relative;
  overflow: hidden;
}

.financial-graph-loading-axis {
  background: var(--border-strong);
  height: 1px;
  position: absolute;
  bottom: 24px;
  left: 0;
  right: 0;
}

.financial-graph-loading-grid {
  background: repeating-linear-gradient(to bottom, transparent 0 calc(25% - 1px), var(--border) calc(25% - 1px) 25%);
  opacity: .7;
  position: absolute;
  inset: 12px 0 24px;
}

.financial-graph-loading-bars {
  justify-content: space-between;
  align-items: end;
  gap: clamp(8px, 3vw, 24px);
  height: 76%;
  display: flex;
  position: absolute;
  bottom: 25px;
  left: 0;
  right: 0;
}

.financial-graph-loading-bars i, .financial-graph-loading-areas i, .financial-graph-loading-lines i {
  background: #e7e9e4;
  display: block;
  position: relative;
  overflow: hidden;
}

.financial-graph-loading-bars i {
  border-radius: 3px 3px 0 0;
  flex: 1 1 0;
  max-width: 32px;
}

.financial-graph-loading-bars i:after, .financial-graph-loading-areas i:after, .financial-graph-loading-lines i:after {
  content: "";
  background: linear-gradient(100deg, #0000 18%, #ffffffb8 48%, #0000 78%);
  animation: 1.45s ease-in-out infinite skeleton-shimmer;
  position: absolute;
  inset: 0;
  transform: translateX(-115%);
}

.financial-graph-loading-areas, .financial-graph-loading-lines {
  position: absolute;
  inset: 14px 0 25px;
}

.financial-graph-loading-areas i {
  opacity: .9;
  clip-path: polygon(0 89%, 14% 75%, 27% 78%, 42% 56%, 58% 64%, 73% 37%, 87% 44%, 100% 15%, 100% 100%, 0 100%);
  position: absolute;
  inset: 0;
}

.financial-graph-loading-areas .series-2 {
  clip-path: polygon(0 89%, 14% 75%, 27% 78%, 42% 56%, 58% 64%, 73% 37%, 87% 44%, 100% 15%, 100% 0, 87% 20%, 73% 18%, 58% 41%, 42% 34%, 27% 51%, 14% 48%, 0 60%);
  background: #dfe3dc;
}

.financial-graph-loading-areas .series-3 {
  clip-path: polygon(0 60%, 14% 48%, 27% 51%, 42% 34%, 58% 41%, 73% 18%, 87% 20%, 100% 0, 100% 0, 87% 0, 73% 0, 58% 0, 42% 0, 27% 8%, 14% 2%, 0 12%);
  background: #d4dad1;
}

.financial-graph-loading-lines i {
  clip-path: polygon(0 76%, 14% 62%, 27% 67%, 42% 42%, 58% 53%, 73% 26%, 87% 35%, 100% 12%, 100% 17%, 87% 40%, 73% 31%, 58% 58%, 42% 47%, 27% 72%, 14% 67%, 0 81%);
  background: #e7e9e4;
  height: 100%;
  position: absolute;
  inset: 0;
}

.financial-graph-loading-lines .series-2 {
  clip-path: polygon(0 45%, 14% 55%, 27% 38%, 42% 50%, 58% 33%, 73% 44%, 87% 24%, 100% 31%, 100% 36%, 87% 29%, 73% 49%, 58% 38%, 42% 55%, 27% 43%, 14% 60%, 0 50%);
  background: #dfe3dc;
}

.financial-graph-loading-lines .series-3 {
  clip-path: polygon(0 88%, 14% 76%, 27% 82%, 42% 66%, 58% 71%, 73% 54%, 87% 62%, 100% 43%, 100% 48%, 87% 67%, 73% 59%, 58% 76%, 42% 71%, 27% 87%, 14% 81%, 0 93%);
  background: #d4dad1;
}

.financial-statement-switcher {
  min-width: 0;
}

.financial-statement-switcher .financial-statement-title-select {
  color: var(--ink);
  font-size: var(--text-ui);
  max-width: 100%;
  min-height: 34px;
  font-weight: 700;
}

.financial-statement-switcher .financial-statement-title-select > span {
  text-overflow: ellipsis;
  overflow: hidden;
}

.segmented-control[data-size="regular"] {
  grid-template-columns: repeat(var(--segmented-option-count), minmax(0, 1fr));
  border-radius: 9px;
  gap: 4px;
  padding: 4px;
  display: grid;
}

.segmented-control[data-size="regular"] .segmented-control-button {
  min-height: 40px;
  padding: 7px 12px;
}

.segmented-control[data-size="regular"] .segmented-control-button.is-active {
  box-shadow: 0 1px 5px #14181417;
}

.segmented-control-button:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 1px;
}

.close-explorer {
  border: 1px solid var(--border);
  background: var(--surface);
  min-height: 34px;
  color: var(--muted);
  font-size: var(--text-small);
  cursor: pointer;
  border-radius: 8px;
  padding: 0 11px;
  font-weight: 650;
}

.close-explorer:hover {
  border-color: var(--border);
  color: var(--ink);
}

.statement-toolbar {
  --statement-control-height: 38px;
  --statement-tool-font-size: 10px;
  --statement-tool-title-size: 8px;
  min-height: var(--statement-control-height);
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  display: flex;
}

.financial-section .statement-toolbar {
  top: var(--financial-sticky-top);
  z-index: 14;
  min-height: var(--financial-sticky-toolbar-height);
  background: var(--surface);
  padding: 2px 0;
  position: sticky;
}

.financial-section .statement-toolbar-stack {
  z-index: 14;
  top: var(--financial-sticky-top);
  background: var(--surface);
  position: sticky;
}

.financial-section .statement-toolbar-stack .statement-toolbar {
  min-height: var(--statement-control-height);
  position: static;
}

.statement-secondary-toolbar {
  margin-top: 12px;
  padding-top: 0;
}

.statement-display-controls {
  flex-wrap: wrap;
  flex: auto;
  align-items: center;
  gap: 20px;
  min-width: 0;
  display: flex;
}

.statement-toolbar-end {
  justify-content: flex-end;
}

.statement-reporting-note {
  flex: auto;
  align-items: center;
  gap: 10px;
  min-width: 0;
  display: flex;
}

.statement-view-actions {
  align-items: center;
  min-width: 0;
  display: flex;
}

.statement-view-actions:empty {
  display: none;
}

.statement-view-carousel-controls {
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  width: 100%;
  min-width: 0;
  display: flex;
}

.statement-view-carousel-nav {
  min-height: 34px;
  color: var(--muted);
  font: 600 var(--text-small)/1.3 var(--font-ui);
  cursor: pointer;
  background: none;
  border: 0;
  border-radius: 0;
  align-items: center;
  gap: 6px;
  padding: 0 4px;
  display: inline-flex;
}

.statement-view-carousel-nav:hover {
  color: var(--ink);
}

.statement-view-carousel-nav .chevron-icon {
  width: 12px;
  height: 12px;
  transform: rotate(180deg);
}

.statement-view-carousel-nav-next {
  margin-left: auto;
}

.statement-view-carousel-nav-next .chevron-icon {
  transform: none;
}

.statement-secondary-toolbar:not(:has(.statement-view-actions)):not(:has(.statement-control-cluster)) {
  display: none;
}

.statement-secondary-toolbar:not(:has(.statement-view-actions)) {
  justify-content: flex-end;
}

.statement-secondary-toolbar:has(.statement-view-carousel-controls) {
  justify-content: stretch;
}

.statement-secondary-toolbar:has(.statement-view-carousel-controls) .statement-view-actions {
  flex: auto;
  min-width: 0;
}

.statement-secondary-toolbar:has(.statement-view-carousel-controls) .statement-control-cluster {
  width: 100%;
}

.statement-control-cluster {
  align-items: center;
  min-width: 0;
  display: flex;
}

.statement-control-cluster + .statement-control-cluster {
  border-left: 1px solid var(--border);
  margin-left: 10px;
  padding-left: 10px;
}

.financial-view-toggle {
  height: var(--statement-control-height);
  color: var(--muted);
  font-size: var(--statement-tool-font-size);
  cursor: pointer;
  background: none;
  border: 0;
  align-items: center;
  gap: 6px;
  padding: 0 2px;
  font-weight: 650;
  transition: color .12s;
  display: inline-flex;
}

.financial-view-toggle:hover {
  color: var(--ink);
}

.financial-view-toggle:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 2px;
}

.financial-view-toggle svg {
  fill: currentColor;
  width: 17px;
  height: 17px;
}

.financial-statement-choice-group {
  align-items: center;
  gap: 3px;
  display: inline-flex;
}

.financial-statement-choice-group button {
  min-height: 30px;
  color: var(--muted);
  font: 650 var(--statement-tool-font-size)/1 var(--font-ui);
  cursor: pointer;
  background: none;
  border: 0;
  border-radius: 7px;
  align-items: center;
  gap: 6px;
  padding: 0 9px;
  transition: background-color .12s, color .12s;
  display: inline-flex;
}

.financial-statement-choice-group button:hover {
  background: var(--surface-subtle);
  color: var(--ink);
}

.financial-statement-choice-group button.is-active {
  background: var(--segmented-track);
  color: var(--ink);
}

.financial-statement-choice-group button:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 1px;
}

.native-select-control {
  min-width: 0;
  height: var(--statement-control-height);
  box-sizing: border-box;
  border: 1px solid var(--border);
  background: var(--surface);
  cursor: pointer;
  border-radius: 9px;
  grid-template-rows: 9px 14px;
  align-content: center;
  row-gap: 1px;
  padding: 4px 30px 4px 10px;
  transition: border-color .12s, background-color .12s;
  display: inline-grid;
  position: relative;
}

.native-select-control:hover {
  border-color: color-mix(in srgb, var(--ink) 14%, transparent);
  background: var(--surface-subtle);
}

.native-select-control-title, .native-select-control-value {
  z-index: 1;
  pointer-events: none;
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
  position: relative;
  overflow: hidden;
}

.native-select-control-title {
  color: var(--faint);
  font-size: var(--statement-tool-title-size);
  letter-spacing: .035em;
  font-weight: 650;
  line-height: 9px;
}

.native-select-control-value {
  color: var(--ink);
  font-size: var(--statement-tool-font-size);
  font-weight: 650;
  line-height: 14px;
}

.native-select-control:after {
  content: "";
  border-right: 1.5px solid var(--muted);
  border-bottom: 1.5px solid var(--muted);
  pointer-events: none;
  width: 6px;
  height: 6px;
  position: absolute;
  top: 50%;
  right: 12px;
  transform: translateY(-70%)rotate(45deg);
}

.native-select-control select {
  z-index: 2;
  appearance: none;
  cursor: pointer;
  opacity: 0;
  background: none;
  border: 0;
  outline: 0;
  width: 100%;
  min-width: 0;
  height: 100%;
  margin: 0;
  padding: 0;
  position: absolute;
  inset: 0;
}

.statement-currency-note {
  color: var(--faint);
  font-size: var(--statement-tool-font-size);
  white-space: nowrap;
  margin: 0;
  font-style: italic;
}

.financial-section .section-heading-row .statement-currency-note {
  margin-top: 12px;
}

.statement-table-scroll {
  overscroll-behavior-inline: contain;
  width: 100%;
  overflow: auto hidden;
}

.financial-section .statement-table-scroll {
  min-width: 0;
}

.statement-table-scroll:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 2px;
}

.statement-table-scroll[data-single-period="true"] {
  width: 100%;
  overflow-x: hidden;
}

.financial-table[data-single-period="true"] {
  table-layout: fixed;
  width: 100%;
  min-width: 0;
}

.financial-table[data-single-period="true"] th, .financial-table[data-single-period="true"] td {
  min-width: 0;
}

.financial-table[data-single-period="true"] thead th:first-child, .financial-table[data-single-period="true"] tbody th {
  width: 58%;
  min-width: 0;
  max-width: none;
  position: static;
}

.financial-section .financial-table[data-single-period="true"] thead th {
  position: static;
  top: auto;
}

.financial-table[data-single-period="true"] thead th:not(:first-child), .financial-table[data-single-period="true"] tbody td {
  width: 42%;
}

.statement-table-scroll[data-single-period="true"] .financial-skeleton-row {
  grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
  min-width: 0;
}

.financial-table-floating-header {
  z-index: 13;
  background: var(--financial-table-header);
  pointer-events: none;
  position: sticky;
  overflow: hidden;
}

.financial-table-floating-header .financial-table {
  min-width: 0;
  margin: 0;
}

.financial-table:not([data-single-period="true"]) {
  table-layout: fixed;
}

.financial-table:not([data-single-period="true"]) .financial-period-heading > div {
  min-width: 0;
  overflow: hidden;
}

.financial-table:not([data-single-period="true"]) .financial-period-heading strong, .financial-table:not([data-single-period="true"]) .financial-period-heading span {
  text-overflow: ellipsis;
  overflow: hidden;
}

.financial-skeleton-table {
  min-height: 312px;
  overflow: hidden;
}

.financial-skeleton-row {
  border-top: 1px solid var(--border);
  background: var(--surface);
  grid-template-columns: minmax(250px, 1.7fr) repeat(3, minmax(148px, 1fr));
  align-items: center;
  gap: 26px;
  min-width: 760px;
  min-height: 46px;
  padding: 13px 14px;
  display: grid;
}

.financial-skeleton-row:first-child {
  background: var(--financial-table-header);
  border-top: 0;
}

.financial-skeleton-row .skeleton-line:not(:first-child) {
  justify-self: end;
}

.financial-table {
  border-collapse: separate;
  border-spacing: 0;
  background: var(--financial-table-row);
  width: 100%;
  min-width: 760px;
  color: var(--muted);
  font-family: var(--font-ui);
  font-size: var(--text-small);
  font-style: normal;
  font-weight: 400;
  line-height: 1.45;
}

.financial-table th, .financial-table td {
  border-bottom: 1px solid var(--border);
  vertical-align: middle;
  text-align: right;
  min-width: 148px;
  padding: 13px 14px;
  transition: background-color .12s;
}

.financial-table .financial-column-spacer {
  pointer-events: none;
  background: none;
  border-bottom-color: #0000;
  min-width: 0;
  padding: 0;
}

.financial-table tr:last-child th, .financial-table tr:last-child td {
  border-bottom: 0;
}

.financial-table thead th {
  background: var(--financial-table-header);
  color: var(--financial-table-header-ink);
  font-size: var(--text-micro);
  letter-spacing: .015em;
  white-space: nowrap;
  font-weight: 800;
}

.financial-section .financial-table thead th {
  z-index: 2;
  position: sticky;
  top: 0;
}

.financial-table thead th:first-child, .financial-table tbody th {
  z-index: 1;
  text-align: left;
  min-width: 250px;
  max-width: 300px;
  position: sticky;
  left: 0;
}

.financial-table tbody th:first-child {
  padding-left: 8px;
}

.financial-section .financial-table thead th:first-child {
  z-index: 3;
}

.financial-table tbody th {
  color: var(--ink);
  font-size: inherit;
  font-style: inherit;
  font-weight: 800;
  line-height: inherit;
}

.financial-table tbody th, .financial-table tbody td {
  background: var(--financial-table-row);
  padding-bottom: 20px;
}

.financial-table thead .financial-period-column-striped {
  background: color-mix(in srgb, var(--financial-table-header) 76%, var(--surface-subtle));
}

.financial-table tbody .financial-period-column-striped {
  background: var(--surface-subtle);
}

.financial-table tbody th:hover, .financial-table tbody th:focus-within {
  z-index: 3;
}

.financial-table th strong, .financial-table th span, .financial-table th em, .financial-table td strong, .financial-table td span {
  display: block;
}

.financial-row-heading {
  grid-template-columns: 22px minmax(0, 1fr);
  align-items: center;
  column-gap: 6px;
  min-width: 0;
  display: grid;
}

.financial-row-heading > :not(.financial-row-expander) {
  grid-column: 2;
}

.financial-row-expander {
  color: #151715;
  cursor: pointer;
  background: none;
  border: 1px solid #0000;
  border-radius: 6px;
  flex: none;
  place-items: center;
  width: 22px;
  height: 22px;
  margin: -2px 0;
  padding: 0;
  display: inline-grid;
}

.financial-row-expander .chevron-icon {
  width: 10px;
  height: 10px;
  color: inherit;
  margin: 0;
  transition: transform .14s;
  display: block;
}

.financial-row-expander[aria-expanded="true"] .chevron-icon {
  transform: rotate(90deg);
}

.financial-row-expander:hover {
  background: none;
  border-color: #0000;
}

.financial-row-expander:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 1px;
}

.financial-segment-row[hidden] {
  display: none;
}

.financial-table tbody .financial-segment-row th, .financial-table tbody .financial-segment-row td {
  background: var(--financial-table-row);
}

.financial-table tbody th .financial-segment-label {
  color: var(--muted);
  font-size: var(--text-small);
  font-weight: inherit;
  margin: 0;
  line-height: 1.35;
}

.financial-table .financial-section-summary th strong, .financial-table .financial-section-summary td strong {
  font-weight: inherit;
}

.financial-table tbody :is(.financial-section-detail-row, .balance-sheet-detail-row, .financial-segment-row) th:first-child {
  padding-left: 35px;
}

.financial-table tbody .financial-nested-segment-row th:first-child {
  padding-left: 62px;
}

.financial-table .financial-subtotal-row th strong, .financial-table .financial-subtotal-row td strong {
  font-weight: inherit;
}

.financial-table tbody .balance-sheet-major-heading th {
  max-width: none;
  position: relative;
  left: auto;
}

.financial-table .balance-sheet-major-heading th strong {
  white-space: nowrap;
  font-size: var(--text-body);
  font-weight: inherit;
  display: inline-block;
  position: sticky;
  left: 8px;
}

.financial-table .balance-sheet-section-heading th strong, .financial-table :is(.balance-sheet-total-row, .balance-sheet-grand-total-row) :is(th, td) strong {
  font-weight: inherit;
}

.financial-table thead th strong {
  color: inherit;
  font-size: inherit;
  font-weight: inherit;
}

.financial-table thead th span {
  color: inherit;
  font-size: var(--text-micro);
  opacity: .76;
  white-space: nowrap;
  margin-top: 3px;
}

.financial-period-heading {
  white-space: nowrap;
  justify-content: flex-end;
  align-items: center;
  gap: 6px;
  display: flex;
}

.financial-table thead th .financial-source-icon {
  width: 28px;
  height: 28px;
  color: inherit;
  cursor: pointer;
  background: none;
  border: 0;
  flex: none;
  justify-content: center;
  align-items: center;
  margin: 0;
  padding: 0;
  display: inline-flex;
}

.financial-table thead th .financial-source-icon svg {
  width: 16px;
  height: 16px;
}

.financial-table thead th .financial-source-icon:hover {
  opacity: .68;
}

.financial-table thead th .financial-source-icon:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 1px;
}

.financial-table tbody th strong {
  color: var(--ink);
  font-size: inherit;
  font-weight: inherit;
  overflow-wrap: anywhere;
  line-height: 1.35;
}

.financial-table tbody th span {
  color: var(--faint);
  font-size: var(--text-micro);
  overflow-wrap: anywhere;
  margin-top: 4px;
  line-height: 1.4;
}

.financial-table tbody th .financial-term-translation {
  min-width: 0;
  color: inherit;
  font-size: inherit;
  line-height: inherit;
  cursor: help;
  align-items: center;
  gap: 5px;
  margin: 0;
  display: inline-flex;
  position: relative;
  overflow: visible;
}

.financial-table tbody th .financial-term-translation:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 3px;
  border-radius: 3px;
}

.financial-table tbody th .financial-term-info-icon {
  width: 14px;
  height: 14px;
  color: inherit;
  flex: none;
  margin: 0;
  display: block;
}

.financial-table tbody th .financial-term-tooltip {
  z-index: 20;
  border: 1px solid var(--border);
  color: #f7f8f4;
  width: min(300px, 100vw - 48px);
  font-size: var(--text-caption);
  white-space: normal;
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  background: #202620;
  border-radius: 8px;
  margin: 0;
  padding: 10px 11px;
  font-weight: 500;
  line-height: 1.5;
  transition: opacity .12s, transform .12s, visibility .12s;
  position: absolute;
  top: calc(100% + 8px);
  left: 0;
  transform: translateY(-2px);
  box-shadow: 0 8px 24px #1418142e;
}

.financial-table tbody th .financial-term-tooltip span {
  color: inherit;
  font-size: inherit;
  line-height: inherit;
  white-space: normal;
  margin: 0;
  display: block;
}

.financial-table td .financial-value-yoy {
  color: inherit;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  margin: 0;
  display: block;
  position: relative;
}

.financial-table td .financial-value-yoy-percent {
  color: var(--faint);
  font-size: var(--text-micro);
  font-weight: inherit;
  line-height: inherit;
  white-space: nowrap;
  margin: 0;
  display: none;
  position: absolute;
  top: calc(100% + 3px);
  right: 0;
}

.financial-table td:hover .financial-value-yoy.has-yoy .financial-value-yoy-percent, .financial-table td:focus-within .financial-value-yoy.has-yoy .financial-value-yoy-percent {
  display: block;
}

.financial-table td .financial-value-yoy-percent.positive {
  color: #008a40;
}

.financial-table td .financial-value-yoy-percent.nonpositive {
  color: #b60036;
}

.financial-table tbody th .financial-term-translation:hover .financial-term-tooltip, .financial-table tbody th .financial-term-translation:focus .financial-term-tooltip {
  visibility: visible;
  opacity: 1;
  transform: translateY(0);
}

.financial-table tbody th em {
  color: var(--faint);
  font-size: var(--text-micro);
  margin-top: 5px;
  font-style: normal;
  line-height: 1.4;
}

.financial-table td strong {
  color: var(--ink);
  font-size: inherit;
  font-weight: inherit;
  white-space: nowrap;
}

.financial-table td span {
  color: var(--faint);
  font-size: var(--text-micro);
  white-space: nowrap;
  margin-top: 3px;
}

.sankey-view {
  width: 100%;
}

.statement-period-actions {
  flex: 0 auto;
  justify-content: flex-end;
  align-items: center;
  min-width: 0;
  margin-left: auto;
  display: flex;
}

.graph-copy-link-icon {
  fill: currentColor;
  width: 16px;
  height: 16px;
}

.graph-copy-link:disabled {
  opacity: .48;
  cursor: not-allowed;
}

.graph-copy-status {
  min-height: 14px;
  color: var(--faint);
  font-size: var(--text-caption);
  text-align: right;
  margin: -8px 0 2px;
}

.graph-copy-status.copied {
  color: #008a40;
}

.graph-copy-status.error {
  color: #b60036;
}

.financial-sankey, .balance-sheet-chart {
  margin: 0;
}

.balance-sheet-donuts {
  border: 1px solid var(--border);
  background: linear-gradient(180deg, var(--surface), var(--surface-subtle));
  border-radius: 12px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
  padding: 20px;
  display: grid;
  box-shadow: inset 0 1px #fff;
}

.balance-donut-panel {
  min-width: 0;
}

.balance-donut-panel + .balance-donut-panel {
  border-left: 1px solid var(--border);
  padding-left: 24px;
}

.balance-donut-panel h4 {
  color: var(--ink);
  font-size: var(--text-body);
  text-align: center;
  margin: 0 0 8px;
}

.balance-signed-funding {
  border-left: 1px solid var(--border);
  min-width: 0;
  padding-left: 24px;
  position: relative;
}

.balance-signed-funding h4 {
  color: var(--ink);
  font-size: var(--text-body);
  text-align: center;
  margin: 0 0 28px;
}

.balance-signed-row {
  color: var(--muted);
  font-size: var(--text-small);
  grid-template-columns: minmax(110px, 1fr) minmax(140px, 2fr) auto;
  align-items: center;
  gap: 10px;
  margin: 18px 0;
  display: grid;
}

.balance-signed-row strong {
  color: var(--ink);
  font-variant-numeric: tabular-nums;
}

.balance-signed-funding .balance-signed-breakdown {
  margin: -10px 0 14px 16px;
}

.balance-signed-breakdown-row {
  min-height: 30px;
  color: inherit;
  font-size: var(--text-caption);
  grid-template-columns: 8px minmax(0, 1fr) auto 42px;
  align-items: center;
  gap: 7px;
  padding: 0 4px;
  display: grid;
}

.balance-signed-breakdown-row strong {
  color: var(--ink);
  font-size: var(--text-caption);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.balance-signed-track {
  background: color-mix(in srgb, var(--border) 45%, transparent);
  border-radius: 5px;
  height: 22px;
  position: relative;
}

.balance-signed-track:after {
  background: var(--faint);
  content: "";
  width: 1px;
  position: absolute;
  top: -4px;
  bottom: -4px;
  left: 50%;
}

.balance-signed-track i {
  border-radius: 4px;
  height: 16px;
  position: absolute;
  top: 3px;
}

.balance-signed-track i.is-positive {
  background: #2d9461;
}

.balance-signed-track i.is-negative {
  background: #d1003f;
}

.balance-signed-funding > p {
  color: var(--faint);
  font-size: var(--text-caption);
  text-align: center;
  margin: 24px 0 0;
}

.balance-donut-graphic {
  width: min(100%, 250px);
  margin: 0 auto;
}

.balance-donut-graphic svg {
  width: 100%;
  height: auto;
  font-family: inherit;
  display: block;
  overflow: visible;
}

.balance-donut-track {
  fill: none;
  stroke: #e8e9e5;
  stroke-width: 36px;
}

.balance-donut-slice {
  stroke-width: 36px;
  cursor: pointer;
  transition: filter .15s, opacity .15s, stroke-width .15s;
}

.balance-donut-slice.is-active {
  opacity: 1;
  stroke-width: 42px;
  filter: brightness(.94) drop-shadow(0 3px 3px #1418142e);
}

.balance-donut-slice.is-dimmed {
  opacity: .22;
  filter: saturate(.65);
}

.balance-donut-slice:focus-visible {
  outline: 2px solid var(--ink);
  outline-offset: 3px;
}

.balance-donut-breakdown-slice {
  stroke-width: 10px;
  cursor: pointer;
  transition: filter .15s, opacity .15s, stroke-width .15s;
}

.balance-donut-breakdown-slice.is-active {
  stroke-width: 14px;
  filter: brightness(.92) drop-shadow(0 2px 2px #1418142e);
}

.balance-donut-breakdown-slice.is-dimmed {
  opacity: .28;
  filter: saturate(.7);
}

.balance-donut-breakdown-slice:focus-visible {
  outline: 2px solid var(--ink);
  outline-offset: 2px;
}

.balance-donut-slice-assets-1 {
  stroke: #2459e0;
  background: #2459e0;
}

.balance-donut-slice-assets-2 {
  stroke: #557be2;
  background: #557be2;
}

.balance-donut-slice-assets-3 {
  stroke: #3299a5;
  background: #3299a5;
}

.balance-donut-slice-assets-4 {
  stroke: #6aa764;
  background: #6aa764;
}

.balance-donut-slice-assets-5 {
  stroke: #b58332;
  background: #b58332;
}

.balance-donut-slice-assets-6 {
  stroke: #8669a8;
  background: #8669a8;
}

.balance-donut-slice-assets-7 {
  stroke: #bd627d;
  background: #bd627d;
}

.balance-donut-slice-assets-8 {
  stroke: #737e86;
  background: #737e86;
}

.balance-donut-slice-assets-9 {
  stroke: #4d668f;
  background: #4d668f;
}

.balance-donut-slice-assets-10 {
  stroke: #94a14a;
  background: #94a14a;
}

.balance-donut-slice-assets-11 {
  stroke: #cc7651;
  background: #cc7651;
}

.balance-donut-slice-assets-12 {
  stroke: #7d73b7;
  background: #7d73b7;
}

.balance-donut-slice-assets-13 {
  stroke: #68757c;
  background: #68757c;
}

.balance-donut-slice-funding-1 {
  stroke: #d46d57;
  background: #d46d57;
}

.balance-donut-slice-funding-2 {
  stroke: #ba5265;
  background: #ba5265;
}

.balance-donut-slice-funding-3 {
  stroke: #963f57;
  background: #963f57;
}

.balance-donut-slice-funding-4, .balance-donut-slice-funding-5 {
  stroke: #765667;
  background: #765667;
}

.balance-donut-slice-equity {
  stroke: #2d9461;
  background: #2d9461;
}

.balance-donut-breakdown-1 {
  stroke: #264bd2;
  background: #264bd2;
}

.balance-donut-breakdown-2 {
  stroke: #00858f;
  background: #00858f;
}

.balance-donut-breakdown-3 {
  stroke: #2e8b57;
  background: #2e8b57;
}

.balance-donut-breakdown-4 {
  stroke: #b47717;
  background: #b47717;
}

.balance-donut-breakdown-5 {
  stroke: #a64a6a;
  background: #a64a6a;
}

.balance-donut-breakdown-6 {
  stroke: #714bb1;
  background: #714bb1;
}

.balance-donut-breakdown-7 {
  stroke: #c35b34;
  background: #c35b34;
}

.balance-donut-breakdown-8 {
  stroke: #55656e;
  background: #55656e;
}

.balance-donut-breakdown-9 {
  stroke: #829226;
  background: #829226;
}

.balance-donut-breakdown-10 {
  stroke: #2f72a7;
  background: #2f72a7;
}

.balance-donut-center-label, .balance-donut-center-value, .balance-donut-center-percentage {
  pointer-events: none;
}

.balance-donut-center-label {
  fill: var(--faint);
  font-size: var(--text-caption);
  font-weight: 650;
}

.balance-donut-center-label.is-active {
  font-size: var(--text-micro);
}

.balance-donut-center-value {
  fill: var(--ink);
  font-size: 16px;
  font-weight: 750;
}

.balance-donut-center-percentage {
  fill: var(--faint);
  font-size: var(--text-micro);
  font-weight: 650;
}

.balance-donut-legend {
  margin: 8px 0 0;
  padding: 0;
  list-style: none;
}

.balance-donut-legend > li {
  border-top: 1px solid var(--border);
}

.balance-donut-legend-button {
  width: 100%;
  min-height: 32px;
  color: inherit;
  font: inherit;
  font-size: var(--text-caption);
  text-align: left;
  cursor: pointer;
  touch-action: manipulation;
  background: none;
  border: 0;
  border-radius: 5px;
  grid-template-columns: 9px minmax(0, 1fr) auto 42px;
  align-items: center;
  gap: 7px;
  padding: 0 4px;
  transition: background .15s, opacity .15s;
  display: grid;
}

.balance-donut-legend-button.is-expandable {
  grid-template-columns: 10px 9px minmax(0, 1fr) auto 42px;
}

.balance-donut-legend-button .chevron-icon {
  width: 10px;
  height: 10px;
  color: var(--faint);
  transition: transform .14s;
  display: block;
}

.balance-donut-legend-button[aria-expanded="true"] .chevron-icon {
  transform: rotate(90deg);
}

.balance-donut-legend-button:hover, .balance-donut-legend-button.is-active {
  background: #2459e012;
}

.balance-donut-legend-button.is-dimmed {
  opacity: .32;
}

.balance-donut-legend-button:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: -1px;
}

.balance-donut-swatch {
  border-radius: 3px;
  width: 9px;
  height: 9px;
}

.balance-donut-legend-label {
  min-width: 0;
  color: var(--muted);
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

.balance-donut-legend strong {
  color: var(--ink);
  font-size: var(--text-caption);
  white-space: nowrap;
}

.balance-donut-percentage {
  color: var(--faint);
  text-align: right;
  white-space: nowrap;
}

.balance-donut-breakdown-legend {
  border-left: 2px solid var(--border);
  margin: 0 4px 8px 16px;
  padding: 7px 0 5px 10px;
}

.balance-donut-breakdown-legend > p {
  color: var(--faint);
  font-size: var(--text-micro);
  margin: 0 0 4px;
  font-weight: 650;
}

.balance-donut-breakdown-legend ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.balance-donut-breakdown-legend-button {
  width: 100%;
  min-height: 30px;
  color: inherit;
  font: inherit;
  font-size: var(--text-caption);
  text-align: left;
  cursor: pointer;
  touch-action: manipulation;
  background: none;
  border: 0;
  border-radius: 5px;
  grid-template-columns: 8px minmax(0, 1fr) auto 42px;
  align-items: center;
  gap: 7px;
  padding: 0 4px;
  transition: background .15s, opacity .15s;
  display: grid;
}

.balance-donut-breakdown-legend-button:hover, .balance-donut-breakdown-legend-button.is-active {
  background: #2459e012;
}

.balance-donut-breakdown-legend-button.is-dimmed {
  opacity: .38;
}

.balance-donut-breakdown-legend-button:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: -1px;
}

.balance-donut-breakdown-legend-button strong {
  color: var(--ink);
  font-size: var(--text-caption);
  white-space: nowrap;
}

.balance-donut-breakdown-swatch {
  border-radius: 999px;
  width: 8px;
  height: 8px;
}

.financial-sankey-scroll {
  border: 1px solid var(--border);
  background: linear-gradient(180deg, var(--surface), var(--surface-subtle));
  border-radius: 12px;
  width: 100%;
  overflow-x: auto;
  box-shadow: inset 0 1px #fff;
}

.financial-sankey-scroll:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 2px;
}

.financial-sankey svg {
  width: 100%;
  min-width: 880px;
  height: auto;
  font-family: inherit;
  display: block;
}

.sankey-links path {
  opacity: .42;
  transition: opacity .15s;
}

.sankey-links path:hover {
  opacity: .7;
}

.sankey-nodes rect, .sankey-nodes path {
  filter: drop-shadow(0 1px 1px #14181417);
}

.sankey-labels text {
  fill: var(--ink);
  stroke: #ffffffe0;
  stroke-width: 5px;
  paint-order: stroke fill;
  stroke-linejoin: round;
  pointer-events: none;
}

.sankey-label-name {
  font-size: var(--text-small);
  font-weight: 750;
}

.sankey-label-value {
  font-size: var(--text-caption);
  font-weight: 560;
}

.statement-empty {
  border: 1px dashed var(--border);
  text-align: center;
  border-radius: 10px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  min-height: 150px;
  padding: 28px;
  display: flex;
}

.statement-empty strong {
  font-size: var(--text-body);
}

.statement-empty p {
  max-width: 380px;
  color: var(--faint);
  font-size: var(--text-small);
  margin: 6px 0 0;
  line-height: 1.5;
}

.financial-graph-adjustments {
  color: var(--faint);
  font-size: var(--text-caption);
  text-align: center;
  margin-top: 8px;
}

.financial-graph-adjustments p {
  margin: 3px 0;
}

html[data-type-scale="legacy"] body {
  font-size: 16px;
}

html[data-type-scale="legacy"] .section-intro h1 {
  font-size: clamp(48px, 8vw, 86px);
}

html[data-type-scale="legacy"] .section-intro p {
  max-width: 520px;
  margin-top: 24px;
  font-size: 18px;
}

html[data-type-scale="legacy"] .workspace-state strong {
  font-size: 18px;
}

html[data-type-scale="legacy"] .stock-detail h2 {
  font-size: clamp(16px, 1.5vw, 18px);
}

html[data-type-scale="legacy"] .company-section-list a {
  font-size: 11px;
}

html[data-type-scale="legacy"] .company-history-title-list a {
  min-height: 28px;
  font-size: 10px;
}

html[data-type-scale="legacy"] .stock-price-block strong {
  letter-spacing: -.045em;
  font-size: 24px;
}

html[data-type-scale="legacy"] .stock-price-block span {
  font-size: 10px;
}

html[data-type-scale="legacy"] .stock-overview-heading h2 {
  letter-spacing: -.02em;
  font-size: 18px;
}

html[data-type-scale="legacy"] .stock-overview-metric dt {
  font-size: 10px;
}

html[data-type-scale="legacy"] .stock-overview-metric dd {
  letter-spacing: -.02em;
  font-size: 12px;
  font-weight: 400;
}

html[data-type-scale="legacy"] .segmented-control[data-size="compact"] .segmented-control-button {
  font-size: 11px;
}

html[data-type-scale="legacy"] .empty-data strong {
  font-size: 13px;
}

html[data-type-scale="legacy"] .empty-data p {
  max-width: 260px;
  font-size: 11px;
}

html[data-type-scale="legacy"] .history-volume-label, html[data-type-scale="legacy"] .history-chart-tooltip span {
  font-size: 9px;
}

html[data-type-scale="legacy"] .company-history-heading-row h3, html[data-type-scale="legacy"] .corporate-events-heading-row h3, html[data-type-scale="legacy"] .insider-heading-row h3, html[data-type-scale="legacy"] .section-heading-row h3 {
  letter-spacing: -.035em;
  font-size: 24px;
}

html[data-type-scale="legacy"] .company-history-stale {
  font-size: 9px;
}

html[data-type-scale="legacy"] .company-history-body p {
  max-width: none;
  font-size: 12px;
  line-height: 1.72;
}

html[data-type-scale="legacy"] .company-history-subheading-level-3 {
  font-size: 16px;
}

html[data-type-scale="legacy"] .company-history-subheading-level-4 {
  font-size: 14px;
}

html[data-type-scale="legacy"] .company-history-subheading-level-5, html[data-type-scale="legacy"] .company-history-subheading-level-6 {
  font-size: 12px;
}

html[data-type-scale="legacy"] .company-history-attribution {
  margin-top: 14px;
  font-size: 9px;
}

html[data-type-scale="legacy"] .corporate-events-heading-row .eyebrow {
  font-size: 9px;
}

html[data-type-scale="legacy"] .financing-table {
  font-size: 10px;
}

html[data-type-scale="legacy"] .financing-table thead th {
  font-size: 9px;
}

html[data-type-scale="legacy"] .financing-source-link {
  min-height: 25px;
}

html[data-type-scale="legacy"] .corporate-events-pagination button {
  min-width: 30px;
  min-height: 30px;
  font-size: 10px;
}

html[data-type-scale="legacy"] .corporate-event-source-header p, html[data-type-scale="legacy"] .corporate-event-source-search :is(input, .corporate-event-source-search-status) {
  font-size: 9px;
}

html[data-type-scale="legacy"] .corporate-event-source-state {
  font-size: 11px;
}

html[data-type-scale="legacy"] .corporate-event-source-error button {
  min-height: 32px;
  font-size: 10px;
}

html[data-type-scale="legacy"] .corporate-event-source-warning {
  font-size: 10px;
  line-height: 1.4;
}

html[data-type-scale="legacy"] .corporate-event-empty strong, html[data-type-scale="legacy"] .insider-empty strong, html[data-type-scale="legacy"] .statement-empty strong {
  font-size: 12px;
}

html[data-type-scale="legacy"] .corporate-event-empty p, html[data-type-scale="legacy"] .insider-empty p, html[data-type-scale="legacy"] .statement-empty p {
  font-size: 10px;
}

html[data-type-scale="legacy"] .section-heading-row p, html[data-type-scale="legacy"] .segmented-control[data-size="regular"] .segmented-control-button {
  font-size: 11px;
}

html[data-type-scale="legacy"] :is(.close-explorer, .statement-toolbar button) {
  min-height: 32px;
  font-size: 10px;
}

html[data-type-scale="legacy"] .statement-currency-note {
  font-size: 10px;
}

html[data-type-scale="legacy"] .financial-table, html[data-type-scale="legacy"] .financial-table thead th strong {
  font-size: 11px;
}

html[data-type-scale="legacy"] .financial-table thead th span, html[data-type-scale="legacy"] .financial-table tbody th span, html[data-type-scale="legacy"] .financial-table tbody th em {
  font-size: 9px;
}

html[data-type-scale="legacy"] .financial-table tbody th span, html[data-type-scale="legacy"] .financial-table tbody th em {
  line-height: 1.35;
}

html[data-type-scale="legacy"] .financial-table tbody th .financial-term-tooltip {
  width: min(280px, 100vw - 48px);
  font-size: 10px;
  line-height: 1.45;
}

html[data-type-scale="legacy"] .financial-table td strong {
  font-size: 12px;
}

html[data-type-scale="legacy"] .financial-table td span {
  font-size: 8px;
}

html[data-type-scale="legacy"] .native-select-control, html[data-type-scale="legacy"] .graph-copy-status {
  font-size: 9px;
}

html[data-type-scale="legacy"] .balance-donut-panel h4 {
  font-size: 13px;
}

html[data-type-scale="legacy"] .balance-donut-center-label {
  font-size: 10px;
}

html[data-type-scale="legacy"] .balance-donut-center-label.is-active, html[data-type-scale="legacy"] .balance-donut-center-percentage, html[data-type-scale="legacy"] .balance-donut-legend-button, html[data-type-scale="legacy"] .balance-donut-legend strong, html[data-type-scale="legacy"] .balance-donut-breakdown-legend-button, html[data-type-scale="legacy"] .balance-donut-breakdown-legend-button strong {
  font-size: 9px;
}

html[data-type-scale="legacy"] .balance-donut-breakdown-legend > p {
  font-size: 8px;
}

html[data-type-scale="legacy"] :is(.balance-donut-legend-button, .balance-donut-breakdown-legend-button) {
  min-height: 30px;
}

html[data-type-scale="legacy"] .sankey-label-name {
  font-size: 11px;
}

html[data-type-scale="legacy"] .sankey-label-value {
  font-size: 10px;
}

html[data-type-scale="legacy"] .statement-empty p {
  max-width: 360px;
}

@media (max-width: 800px) {
  .financial-section .statement-toolbar-stack:before {
    content: "";
    inset: -8px calc(0px - var(--page-gutter, 24px)) 0;
    z-index: -1;
    background: var(--surface);
    pointer-events: none;
    position: absolute;
  }

  .statement-secondary-toolbar {
    flex-wrap: nowrap;
  }

  .statement-secondary-toolbar:has(.statement-view-carousel-controls) .statement-view-actions {
    flex: none;
    margin-left: auto;
  }

  .statement-secondary-toolbar .statement-period-actions {
    flex: 0 auto;
    order: -1;
    align-items: center;
    width: auto;
    margin-left: 0;
  }

  .header-inner {
    grid-template-columns: minmax(100px, 1fr) minmax(0, 420px) auto;
    grid-template-areas: "brand center .";
    gap: 12px;
    padding-inline: 12px;
  }

  .header-center {
    min-width: 0;
  }

  .header-search {
    width: 100%;
  }

  .header-search input {
    height: 36px;
  }

  .primary-nav, .nav-indicator {
    display: none;
  }

  .company-page {
    padding-top: 40px;
  }

  .company-page:has(.stock-detail) {
    padding-top: 0;
  }

  .stock-detail-identity {
    padding: 0;
  }

  .stock-detail-identity:not(:has(.company-data-notice)) {
    display: none;
  }

  .stock-detail-identity:has(.company-data-notice) {
    padding: 4px 0 6px;
  }

  .stock-title-row > .company-logo {
    display: none;
  }

  .stock-title-heading h1 {
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    position: absolute;
    overflow: hidden;
  }

  .stock-title-heading .watchlist-toggle {
    margin-left: 0;
  }

  .company-website-link {
    display: none;
  }

  .stock-detail-layout {
    display: block;
  }

  .acquisition-table {
    table-layout: auto;
  }

  .stock-detail-rail {
    z-index: auto;
    max-height: none;
    display: block;
    position: static;
  }

  .company-workspace .stock-detail-rail {
    z-index: 12;
    top: var(--company-identity-bottom);
    position: sticky;
  }

  .company-currency {
    display: none;
  }

  .company-workspace .stock-detail-content {
    grid-column: auto;
  }

  .company-section-nav {
    z-index: 12;
    top: var(--company-identity-bottom);
    width: auto;
    max-height: none;
    margin: 0 calc(-1 * var(--page-gutter)) 8px;
    border-top: 0;
    border-inline: 0;
    border-radius: 0;
    padding: 4px;
    position: sticky;
    left: auto;
    overflow: hidden;
  }

  .company-workspace .company-section-nav {
    max-height: none;
    position: relative;
    top: auto;
  }

  .company-section-list {
    overscroll-behavior-inline: contain;
    scrollbar-width: none;
    gap: 3px;
    display: flex;
    overflow-x: auto;
  }

  .company-section-list::-webkit-scrollbar {
    display: none;
  }

  .company-section-list li {
    flex: none;
  }

  .company-section-list li + li {
    margin-top: 0;
  }

  .company-section-list a {
    white-space: nowrap;
    min-height: 38px;
    padding: 7px 12px;
  }

  .company-history-title-list, .company-graph-title-list {
    display: none;
  }

  .stock-detail {
    --company-section-top: calc(var(--company-identity-bottom) + var(--company-rail-height) + 8px);
  }

  .company-history-subheading {
    scroll-margin-top: var(--company-section-top);
  }

  .stock-title-row .stock-price-block {
    display: none;
  }

  .stock-overview-price {
    display: block;
  }

  .stock-overview-price .stock-price-block {
    text-align: left;
    min-width: 0;
  }

  .stock-overview-price .skeleton-price-value, .stock-overview-price .skeleton-price-caption {
    margin-left: 0;
  }

  .stock-overview-section {
    grid-template-columns: 1fr;
    grid-template-areas: "price"
                         "chart"
                         "actions"
                         "metrics"
                         "summary";
    gap: 16px 0;
  }

  .stock-overview-heading, .company-news-heading-row {
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
    grid-area: auto;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    position: absolute;
    overflow: hidden;
  }

  .stock-overview-chart {
    width: 100%;
    margin-inline: 0;
  }

  .stock-overview-chart .history-volume-label {
    text-anchor: start;
    transform: translateX(4px);
  }

  .stock-overview-chart .history-chart-interactive, .stock-overview-chart .history-chart-skeleton {
    border-radius: 0;
    margin: 0;
  }

  .stock-overview-chart .market-data-caption {
    margin-inline: var(--page-gutter, 24px);
  }

  .financial-graphs-section > :is(.financial-performance-chart, .financial-margin-chart, .financial-pe-chart, .financial-fundamental-chart, .financial-performance-loading) {
    width: calc(100% + 2 * var(--page-gutter, 24px));
    margin-inline: calc(0px - var(--page-gutter, 24px));
    border: 0;
    border-radius: 0;
    padding-inline: 8px;
  }

  .financial-graphs-section > :is(.financial-performance-chart, .financial-margin-chart, .financial-pe-chart, .financial-fundamental-chart, .financial-performance-loading) :is(figcaption, .financial-performance-legend, .financial-margin-legend, .financial-fundamental-legend) {
    padding-inline: calc(var(--page-gutter, 24px) - 8px);
  }

  .financial-graphs-section .financial-graphs-heading-row {
    width: calc(100% + 2 * var(--page-gutter, 24px));
    margin-inline: calc(0px - var(--page-gutter, 24px));
    padding-inline: var(--page-gutter, 24px);
  }

  .financial-graphs-section .financial-graph-loading-plot {
    border-radius: 0;
  }

  .company-page, .stock-detail, .stock-detail-layout, .stock-detail-content {
    max-width: 100%;
  }

  .stock-detail-content {
    overflow-x: clip;
  }

  .stock-detail-content:has(.statement-table-scroll[data-single-period="true"]) {
    overflow-x: visible;
  }

  .statement-table-scroll[data-single-period="true"] {
    width: calc(100% + 2 * var(--page-gutter, 24px));
    margin-inline: calc(0px - var(--page-gutter, 24px));
  }

  .financial-graphs-section {
    height: max(0px, calc(100dvh - var(--company-section-top) - 80px - env(safe-area-inset-bottom)));
    flex-direction: column;
    max-width: 100%;
    min-height: 0;
    display: flex;
    overflow-x: hidden;
  }

  .company-page:has(.financial-graphs-mobile-controls) {
    padding-bottom: 0;
  }

  .company-workspace:has(.financial-graphs-mobile-controls) {
    min-height: 0;
  }

  .financial-graphs-mobile-heading {
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    position: absolute;
    overflow: hidden;
  }

  .financial-graphs-carousel {
    flex-direction: column;
    flex: 1;
    width: 100%;
    max-width: 100%;
    min-height: 0;
    margin-top: 4px;
    display: flex;
    overflow: hidden;
  }

  .financial-graphs-title-select {
    max-width: 100%;
    color: var(--ink);
    font-size: var(--text-body);
    letter-spacing: -.015em;
    flex-shrink: 0;
    align-self: flex-start;
    min-height: 34px;
    margin: 0;
    font-weight: 700;
    display: inline-flex;
  }

  .financial-graphs-title-select > span {
    text-overflow: ellipsis;
    overflow: hidden;
  }

  .financial-graphs-title-row {
    flex-shrink: 0;
    justify-content: space-between;
    align-items: center;
    gap: 8px;
    margin-bottom: 0;
    display: flex;
  }

  .financial-graphs-title-row .financial-graphs-title-select {
    min-width: 0;
    margin-bottom: 0;
  }

  .financial-graphs-title-actions {
    flex-shrink: 0;
    margin-left: auto;
  }

  .financial-graphs-carousel-track {
    overscroll-behavior-inline: contain;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
    flex: 1;
    grid-template-rows: minmax(0, 1fr);
    grid-auto-columns: 100%;
    grid-auto-flow: column;
    width: 100%;
    max-width: 100%;
    min-height: 0;
    display: grid;
    overflow-x: auto;
  }

  .financial-graphs-carousel-track::-webkit-scrollbar {
    display: none;
  }

  .financial-graphs-carousel .financial-performance-axis {
    font-size: calc(10px * var(--metrics-label-scale, 1));
  }

  html[data-company-typography="refined"] .financial-graphs-carousel .financial-performance-axis {
    font-size: calc(11px * var(--metrics-label-scale, 1));
  }

  .financial-graphs-carousel-slide {
    box-sizing: border-box;
    scroll-snap-align: start;
    scroll-snap-stop: always;
    min-width: 0;
    position: relative;
    overflow: hidden;
  }

  .financial-graphs-carousel-slide:empty {
    display: none;
  }

  .financial-graphs-carousel-slide :is(.financial-performance-chart, .financial-margin-chart, .financial-pe-chart, .financial-fundamental-chart, .financial-performance-loading) {
    box-sizing: border-box;
    margin: 0;
    padding-inline: 0;
    flex-direction: column;
    width: 100%;
    max-width: 100%;
    height: 100%;
    min-height: 0;
    margin-inline: 0;
    padding-top: 0;
    padding-bottom: 0;
    display: flex;
  }

  .financial-graphs-carousel-slide :is(.financial-performance-chart, .financial-margin-chart, .financial-pe-chart, .financial-fundamental-chart, .financial-performance-loading) svg {
    width: 100%;
    max-width: 100%;
    height: 100%;
    min-height: 0;
  }

  .financial-graphs-carousel-slide :is(.financial-performance-chart, .financial-margin-chart, .financial-pe-chart, .financial-fundamental-chart, .financial-performance-loading) :is(figcaption, .financial-performance-legend, .financial-margin-legend, .financial-fundamental-legend) {
    flex-shrink: 0;
    padding-inline: 0;
  }

  .financial-graphs-carousel figcaption {
    margin-bottom: 0;
  }

  .financial-graphs-section :is(.financial-performance-legend, .financial-margin-legend, .financial-fundamental-legend) {
    margin-top: 0;
    margin-bottom: 10px;
  }

  .financial-graphs-carousel .financial-fundamental-chart figcaption > span {
    display: none;
  }

  .financial-graphs-carousel-slide :is(.financial-performance-chart, .financial-margin-chart, .financial-pe-chart, .financial-fundamental-chart) h5, .financial-graphs-carousel .financial-graph-loading h5 {
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    position: absolute;
    overflow: hidden;
  }

  .financial-graphs-carousel :is(.financial-performance-chart-interactive, .financial-margin-chart-interactive, .financial-pe-chart-interactive, .financial-fundamental-interactive) {
    touch-action: pan-x pan-y;
    flex: 1;
    min-height: 0;
  }

  .financial-graphs-carousel > .financial-performance-loading {
    flex-direction: column;
    flex: 1;
    min-height: 0;
    margin: 0;
    padding-top: 0;
    display: flex;
  }

  .financial-graphs-carousel .financial-graph-loading-plot {
    flex: 1;
    height: auto;
    min-height: 0;
  }

  .financial-graphs-mobile-controls {
    flex-shrink: 0;
    justify-content: space-between;
    align-items: center;
    gap: 8px;
    max-width: 100%;
    margin-top: 0;
    padding: 4px 0;
    display: flex;
  }

  .financial-graphs-mobile-controls .financial-graphs-choice-group {
    justify-content: space-between;
  }

  .stock-overview-actions {
    justify-content: center;
  }

  .stock-overview-actions .financial-graphs-choice-group {
    justify-content: space-between;
    width: 100%;
  }

  .stock-overview-list {
    grid-template-rows: none;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    min-height: 0;
  }

  .stock-overview-metric {
    text-align: center;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 5px;
    min-height: 70px;
  }

  .stock-overview-metric dd {
    text-align: center;
  }

  .balance-sheet-donuts {
    grid-template-columns: 1fr;
  }

  .balance-donut-panel + .balance-donut-panel, .balance-signed-funding {
    border-top: 1px solid var(--border);
    border-left: 0;
    padding: 24px 0 0;
  }
}

@media (max-width: 640px) {
  .financial-section {
    --financial-sticky-heading-height: 54px;
    --financial-sticky-table-header-height: 50px;
    --financial-sticky-toolbar-height: 88px;
  }

  .page-shell {
    --page-gutter: 16px;
    width: calc(100% - 2 * var(--page-gutter));
  }

  .stock-title-row {
    gap: 8px;
  }

  .stock-overview-actions {
    gap: 10px;
  }

  .segmented-control[data-size="compact"] .segmented-control-button {
    min-width: 58px;
    padding: 0 10px;
  }

  .balance-donut-legend-button, .balance-donut-breakdown-legend-button {
    min-height: 40px;
  }

  .section-heading-row {
    display: block;
  }

  .section-heading-row p {
    margin-top: 8px;
  }

  .financial-graphs-heading-row {
    align-items: center;
    gap: 12px;
    display: flex;
  }

  .financial-graphs-heading-controls {
    gap: 8px;
  }

  .financial-performance-chart figcaption, .financial-pe-chart figcaption {
    flex-direction: column;
    align-items: flex-start;
  }

  .segmented-control[data-size="regular"] .segmented-control-button {
    min-height: 46px;
    font-size: var(--text-caption);
    padding: 6px;
    line-height: 1.25;
  }

  html[data-type-scale="legacy"] .segmented-control[data-size="regular"] .segmented-control-button {
    font-size: 10px;
  }

  .statement-toolbar {
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
  }

  .statement-primary-toolbar {
    flex-wrap: nowrap;
  }

  .statement-primary-toolbar .statement-reporting-note {
    width: auto;
  }

  .statement-display-controls {
    align-items: center;
    width: 100%;
  }

  .statement-reporting-note {
    width: 100%;
  }

  .graph-copy-status {
    text-align: left;
  }

  .financial-table thead th:first-child, .financial-table tbody th {
    min-width: 200px;
    max-width: 230px;
  }

  .corporate-events-heading-row, .company-history-heading-row, .company-history-attribution {
    flex-direction: column;
    align-items: start;
  }

  .corporate-events-pagination {
    flex-wrap: wrap;
    gap: 8px;
  }

  .corporate-event-source-overlay {
    padding: 12px;
  }

  .corporate-event-source-dialog {
    height: calc(100% - 24px);
  }

  .corporate-event-source-header {
    padding: 14px;
  }

  .corporate-event-source-frame {
    padding: 0;
  }
}

@media (max-width: 480px) {
  .header-inner {
    grid-template-columns: 42px minmax(0, 1fr) auto;
  }

  .site-header .wordmark > span {
    display: none;
  }

  .stock-overview-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .insider-heading-row {
    flex-direction: column;
    align-items: stretch;
  }
}

html[data-company-typography="refined"] .stock-detail {
  --font-ui: "Raleway Variable", ui-sans-serif, system-ui, -apple-system, sans-serif;
  --font-editorial: "Raleway Variable", ui-sans-serif, system-ui, -apple-system, sans-serif;
  --font-reading: "Merriweather Variable", Georgia, "Times New Roman", serif;
  --company-content-text-size: 14px;
  --text-micro: 11px;
  --text-reading: var(--company-content-text-size);
  --text-section: 22px;
  --faint: #707570;
  font-family: var(--font-ui);
}

html[data-company-typography="refined"] .stock-detail :is(button, input, select, textarea) {
  font-family: inherit;
}

html[data-company-typography="refined"] .stock-detail h2 {
  font-size: 19px;
  font-weight: 600;
  line-height: 1.05;
}

html[data-company-typography="refined"] .stock-detail :is(.company-history-heading-row h3, .corporate-events-heading-row h3, .insider-heading-row h3, .section-heading-row h3) {
  font-size: var(--text-section);
  font-weight: 600;
  line-height: 1.08;
}

html[data-company-typography="refined"] .stock-detail .company-summary h3 {
  font-weight: 600;
}

html[data-company-typography="refined"] .stock-detail .company-history-subheading {
  font-weight: 600;
  line-height: 1.25;
}

html[data-company-typography="refined"] .stock-detail .company-history-body p {
  width: 100%;
  max-width: none;
  font-family: var(--font-reading);
  font-size: var(--text-reading);
  line-height: 1.65;
}

html[data-company-typography="refined"] .stock-detail .financing-table {
  font-size: var(--company-content-text-size);
}

html[data-company-typography="refined"] .stock-detail :is(.company-section-list a[aria-current="location"], .segmented-control-button, .history-volume-label, .corporate-events-pagination button, .corporate-event-source-error button, .close-explorer, .native-select-control-title, .native-select-control-value, .native-select-control, .balance-donut-center-label, .balance-donut-center-percentage, .balance-donut-breakdown-legend > p) {
  font-weight: 600;
}

html[data-company-typography="refined"] .stock-detail :is(.company-logo, .corporate-events-heading-row .eyebrow, .balance-donut-center-value, .sankey-label-name) {
  font-weight: 700;
}

html[data-company-typography="refined"] .stock-detail :is(.financial-table .financial-section-summary td strong, .financial-table .financial-subtotal-row td strong, .financial-table .balance-sheet-total-row td strong, .financial-table .balance-sheet-grand-total-row td strong) {
  font-weight: 400;
}

html[data-company-typography="refined"] .stock-detail :is(.financing-table thead th, .financial-table thead th, .quarterly-earnings-list thead th, .history-axis-label, .history-volume-label) {
  font-size: 11px;
}

html[data-company-typography="refined"] .stock-detail :is(.financing-table thead th, .financial-table thead th, .financial-table tbody th, .quarterly-earnings-list thead th) {
  font-weight: 600;
}

html .stock-detail :is(.financing-events-table, .insider-table), html .stock-detail :is(.financing-events-table, .insider-table) thead th {
  font-size: 12px;
}

html .stock-detail :is(.financing-events-table, .insider-table) tbody {
  color: var(--ink);
}

html .stock-detail :is(.financing-events-table, .insider-table) tbody :is(th, td, time, .financing-type, .financing-source-link) {
  color: inherit;
}

html[data-company-typography="refined"] .stock-detail .statement-toolbar {
  --statement-tool-title-size: 10px;
  --statement-tool-font-size: 12px;
}

html[data-company-typography="refined"] .stock-detail .native-select-control {
  grid-template-rows: 11px 15px;
}

html[data-company-typography="refined"] .stock-detail .native-select-control-title {
  line-height: 11px;
}

html[data-company-typography="refined"] .stock-detail .native-select-control-value {
  line-height: 15px;
}

html[data-company-typography="refined"] .stock-detail .sankey-label-value {
  font-weight: 500;
}

.macro-page {
  min-width: 0;
  padding: 48px 0 64px;
}

.macro-page *, .macro-detail-content, .macro-history-panel {
  min-width: 0;
}

.macro-page h1, .macro-page h2, .macro-page h3, .macro-retry h1 {
  margin: 0;
}

.macro-detail-layout {
  grid-template-columns: minmax(196px, 228px) minmax(0, 1fr);
  align-items: start;
  gap: 24px;
  display: grid;
}

.macro-detail-rail {
  z-index: 12;
  flex-direction: column;
  gap: 10px;
  max-height: calc(100vh - 116px);
  display: flex;
  position: sticky;
  top: 92px;
}

.macro-section-nav {
  border: 1px solid var(--border);
  background: var(--surface);
  border-radius: 14px;
  flex: auto;
  padding: 8px;
  overflow-y: auto;
}

.macro-section-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.macro-section-list li + li {
  margin-top: 2px;
}

.macro-section-list a {
  min-height: 32px;
  color: var(--muted);
  font-size: var(--text-small);
  border-radius: 9px;
  align-items: center;
  padding: 5px 10px 5px 12px;
  line-height: 1.3;
  transition: color .16s, background-color .16s;
  display: flex;
  position: relative;
}

.macro-section-list a:hover {
  background: color-mix(in srgb, var(--accent) 5%, transparent);
  color: var(--ink);
}

.macro-section-list a[aria-current="location"] {
  background: color-mix(in srgb, var(--accent) 8%, transparent);
  color: var(--accent);
  font-weight: 680;
}

.macro-history-panel {
  border: 1px solid var(--border);
  background: var(--surface);
  border-radius: 14px;
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-areas: "heading actions"
                       "summary summary"
                       "chart chart";
  scroll-margin-top: 96px;
  display: grid;
  overflow: hidden;
}

.macro-history-controls {
  grid-area: heading;
  align-items: center;
  min-height: 58px;
  padding: 8px 0 0 16px;
  display: flex;
}

.macro-history-actions {
  grid-area: actions;
  justify-content: end;
  align-items: center;
  min-height: 58px;
  padding: 8px 12px 0 16px;
  display: flex;
}

.macro-series-heading {
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  display: flex;
}

.graph-period-select {
  min-height: 30px;
  color: var(--muted);
  font: 650 var(--statement-tool-font-size)/1 var(--font-ui);
  cursor: pointer;
  background: none;
  border: 0;
  border-radius: 7px;
  padding: 0 9px;
}

.graph-period-select:hover {
  background: var(--surface-subtle);
  color: var(--ink);
}

.graph-period-select:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 1px;
}

.macro-series-title {
  font-size: var(--text-body);
  text-overflow: ellipsis;
  white-space: nowrap;
  display: block;
  overflow: hidden;
}

.text-select-control.macro-series-picker {
  display: none;
}

.macro-series-summary {
  color: var(--muted);
  font-size: var(--text-small);
  grid-area: summary;
  margin: 0;
  padding: 6px 16px 12px;
  line-height: 1.5;
}

.macro-history-chart {
  grid-area: chart;
  min-width: 0;
}

.macro-series-formula {
  color: var(--ink);
  font-variant-numeric: tabular-nums;
  letter-spacing: .02em;
  margin-top: 6px;
  display: block;
}

.macro-chart-interactive {
  background: linear-gradient(180deg, var(--surface), var(--surface-subtle));
  touch-action: pan-y;
  width: 100%;
  height: 364px;
  margin: 0;
  position: relative;
  overflow: hidden;
}

.macro-chart-interactive:focus-visible {
  box-shadow: inset 0 0 0 2px var(--accent);
  outline: none;
}

.macro-chart {
  width: 100%;
  height: 364px;
  display: block;
}

.macro-gridline {
  stroke: var(--border);
  stroke-width: 1px;
  stroke-dasharray: 2 4;
  vector-effect: non-scaling-stroke;
}

.macro-zero-line {
  stroke: color-mix(in srgb, var(--ink) 34%, transparent);
  stroke-width: 1px;
  vector-effect: non-scaling-stroke;
}

.macro-axis-label {
  fill: var(--faint);
  font-family: var(--font-ui);
  font-variant-numeric: tabular-nums;
  font-size: 10px;
}

.macro-value-axis-label {
  stroke: #ffffffdb;
  stroke-width: 4px;
  paint-order: stroke fill;
  stroke-linejoin: round;
}

.macro-chart-line {
  fill: none;
  stroke: var(--accent);
  stroke-width: 2px;
  stroke-linecap: round;
  stroke-linejoin: round;
  vector-effect: non-scaling-stroke;
}

.macro-chart-step {
  stroke-linecap: square;
  stroke-linejoin: miter;
}

.macro-crosshair {
  stroke: #15171570;
  stroke-width: 1px;
  stroke-dasharray: 3 4;
  vector-effect: non-scaling-stroke;
}

.macro-active-point {
  fill: #fff;
  stroke: var(--accent);
  stroke-width: 2px;
  vector-effect: non-scaling-stroke;
}

.macro-chart-tooltip {
  z-index: 2;
  border: 1px solid var(--border);
  background: var(--ink);
  color: #fff;
  pointer-events: none;
  border-radius: 9px;
  min-width: 132px;
  padding: 9px 11px;
  position: absolute;
  transform: translate(-50%, calc(-100% - 12px));
  box-shadow: 0 8px 24px #14181424;
}

.macro-chart-tooltip.align-left {
  transform: translate(8px, calc(-100% - 12px));
}

.macro-chart-tooltip.align-right {
  transform: translate(calc(-100% - 8px), calc(-100% - 12px));
}

.macro-chart-tooltip strong, .macro-chart-tooltip span {
  display: block;
}

.macro-chart-tooltip strong {
  font-size: var(--text-ui);
}

.macro-chart-tooltip span {
  color: #ffffffad;
  font-size: var(--text-caption);
  white-space: nowrap;
  margin-top: 3px;
}

.macro-chart-empty {
  min-height: 380px;
  color: var(--muted);
  font-size: var(--text-small);
  text-align: center;
  place-items: center;
  padding: 28px;
  display: grid;
}

.macro-stacked-chart {
  gap: 0;
  display: grid;
}

.macro-stack-band {
  opacity: .88;
  transition: opacity .12s;
}

.macro-stack-band.active {
  opacity: 1;
}

.macro-stack-legend {
  border-top: 1px solid var(--border);
  color: var(--muted);
  font-size: var(--text-caption);
  flex-wrap: wrap;
  gap: 6px 14px;
  margin: 0;
  padding: 10px 16px 4px;
  list-style: none;
  display: flex;
}

.macro-stack-legend li {
  align-items: center;
  gap: 6px;
  display: inline-flex;
}

.macro-stack-legend i {
  border-radius: 2px;
  flex: none;
  width: 9px;
  height: 9px;
}

.macro-loading {
  min-height: 650px;
}

.macro-skeleton-rail, .macro-skeleton-panel {
  background: linear-gradient(100deg, #0000000a 25%, #ffffffb3 42%, #0000000a 58%) 0 0 / 300% 100%;
  border-radius: 14px;
  animation: 1.5s infinite macro-shimmer;
}

.macro-skeleton-rail {
  height: 480px;
}

.macro-skeleton-panel {
  height: 468px;
}

.macro-retry {
  place-content: center start;
  max-width: 680px;
  min-height: 520px;
  padding: 50px 0;
  display: grid;
}

.macro-retry h1 {
  font-family: var(--font-editorial);
  font-size: clamp(26px, 4vw, 42px);
  line-height: 1;
}

.macro-retry p {
  max-width: 560px;
  color: var(--muted);
  margin: 12px 0 0;
  line-height: 1.5;
}

@keyframes macro-shimmer {
  to {
    background-position: -150% 0;
  }
}

@media (max-width: 800px) {
  .macro-page {
    padding-top: 16px;
  }

  .macro-detail-layout {
    display: block;
  }

  .macro-detail-rail, .macro-skeleton-rail, .macro-series-title {
    display: none;
  }

  .text-select-control.macro-series-picker {
    max-width: 100%;
    color: var(--ink);
    font-size: 24px;
    font-weight: 700;
    display: inline-flex;
  }

  .macro-series-picker > span {
    text-overflow: ellipsis;
    overflow: hidden;
  }

  .macro-history-panel, .macro-skeleton-panel {
    border: 0;
    border-radius: 0;
    width: calc(100% + 48px);
    margin-inline: -24px;
  }

  .macro-history-panel {
    grid-template-columns: 1fr;
    grid-template-areas: "heading"
                         "summary"
                         "chart"
                         "actions";
    scroll-margin-top: 72px;
  }

  .macro-history-controls {
    padding-top: 0;
    min-height: 0;
    margin-bottom: 16px;
    padding-inline: 24px;
  }

  .macro-history-actions {
    justify-content: center;
    padding: 12px 24px 16px;
  }

  .macro-history-actions .financial-graphs-choice-group {
    justify-content: space-between;
    width: 100%;
  }

  .macro-series-summary, .macro-stack-legend {
    padding-inline: 24px;
  }

  .macro-stack-legend {
    border-top: 0;
  }
}

@media (max-width: 640px) {
  .macro-history-panel, .macro-skeleton-panel {
    width: calc(100% + 32px);
    margin-inline: -16px;
  }

  .macro-history-controls, .macro-history-actions, .macro-series-summary, .macro-stack-legend {
    padding-inline: 16px;
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  * {
    transition-duration: .01ms !important;
  }

  .nav-indicator {
    transition: none;
  }

  .loading-ring, .history-loading-ring {
    animation: none;
  }

  .skeleton-block:after, .financial-graph-loading-bars i:after, .financial-graph-loading-areas i:after, .financial-graph-loading-lines i:after, .market-map-loading-sector:after, .market-map-loading-tile:after {
    animation: none;
    display: none;
  }

  .macro-skeleton-rail, .macro-skeleton-panel {
    animation: none;
  }
}

.income-flow-chart {
  --income-revenue-segment-label: #000;
  --income-profit-fill: #00c97061;
  --income-expense-fill: #f21f5880;
  --income-label-border: #0000000d;
  max-width: 1160px;
  margin: 0 auto;
  padding-bottom: 28px;
}

.income-sankey-figure {
  margin: 0;
}

.income-sankey-scroll {
  outline: 0;
  width: 100%;
  overflow-x: auto;
}

.income-sankey-scroll:focus-visible {
  box-shadow: inset 0 0 0 2px var(--accent);
}

.income-sankey-canvas {
  aspect-ratio: 1.55;
  width: 100%;
  min-width: 760px;
  min-height: 660px;
  max-height: 720px;
  display: block;
}

.income-profit-loss-bridge-figure {
  background: var(--surface);
  margin: 0;
}

.income-profit-loss-bridge-scroll {
  outline: 0;
  width: 100%;
  overflow-x: auto;
}

.income-profit-loss-bridge-scroll:focus-visible {
  box-shadow: inset 0 0 0 2px var(--accent);
}

.income-profit-loss-bridge-canvas {
  aspect-ratio: 1.55;
  width: 100%;
  min-width: 980px;
  min-height: 620px;
  max-height: 700px;
  display: block;
}

.statement-graph-frame {
  min-width: 0;
  position: relative;
}

.statement-graph-expand {
  display: none;
}

.statement-graph-preview {
  min-width: 0;
}

.statement-graph-overlay {
  z-index: 80;
  background: var(--surface);
  position: fixed;
  inset: 0;
}

.statement-graph-overlay-dialog {
  flex-direction: column;
  width: 100%;
  height: 100%;
  display: flex;
}

.statement-graph-overlay-header {
  padding: 8px 12px;
  padding-top: calc(8px + env(safe-area-inset-top));
  border-bottom: 1px solid var(--border);
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  display: flex;
}

.statement-graph-overlay-header h2 {
  font-size: var(--text-body);
  margin: 0;
  font-weight: 650;
}

.statement-graph-overlay-close {
  width: 36px;
  height: 36px;
  color: var(--ink);
  cursor: pointer;
  background: none;
  border: 0;
  border-radius: 8px;
  flex: none;
  place-items: center;
  padding: 0;
  font-size: 24px;
  line-height: 1;
  display: grid;
}

.statement-graph-overlay-close:hover {
  background: var(--surface-subtle);
}

.statement-graph-zoom-surface {
  touch-action: none;
  cursor: grab;
  overscroll-behavior: none;
  flex: 1;
  min-height: 0;
  position: relative;
  overflow: hidden;
}

.statement-graph-zoom-content {
  transform-origin: 0 0;
  pointer-events: none;
  width: max-content;
  min-width: 100%;
}

.statement-graph-zoom-content :is(.income-sankey-scroll, .income-profit-loss-bridge-scroll, .financial-sankey-scroll) {
  overflow: hidden;
}

@media (max-width: 800px) {
  .statement-graph-frame {
    --statement-graph-padding: max(12px, env(safe-area-inset-left), env(safe-area-inset-right));
    width: calc(100% + 2 * var(--page-gutter, 24px) - 2 * var(--statement-graph-padding));
    margin-inline: calc(var(--statement-graph-padding) - var(--page-gutter, 24px));
  }

  .statement-graph-expand {
    z-index: 1;
    cursor: zoom-in;
    touch-action: manipulation;
    background: none;
    border: 0;
    border-radius: 12px;
    margin: 0;
    padding: 0;
    display: block;
    position: absolute;
    inset: 0;
  }

  .statement-graph-expand:focus-visible {
    outline: 2px solid var(--accent);
    outline-offset: 2px;
  }

  .statement-graph-expand-icon {
    background: color-mix(in srgb, var(--surface) 86%, transparent);
    width: 32px;
    height: 32px;
    color: var(--ink);
    pointer-events: none;
    border-radius: 8px;
    place-items: center;
    display: grid;
    position: absolute;
    top: 8px;
    right: 8px;
    box-shadow: 0 1px 4px #1418141f;
  }

  .statement-graph-expand-icon svg {
    width: 16px;
    height: 16px;
    display: block;
  }

  .statement-graph-preview {
    border-radius: 12px;
    overflow: hidden;
    container-type: inline-size;
  }

  .statement-graph-preview :is(.income-sankey-scroll, .income-profit-loss-bridge-scroll, .financial-sankey-scroll) {
    overflow: hidden;
  }

  .statement-graph-preview .income-sankey-canvas {
    transform-origin: 0 0;
    width: 760px;
    transform: scale(calc(100cqi / 760px));
  }

  .statement-graph-preview:has(.income-sankey-canvas) {
    aspect-ratio: 760 / 660;
  }

  .statement-graph-preview .income-profit-loss-bridge-canvas {
    transform-origin: 0 0;
    width: 980px;
    transform: scale(calc(100cqi / 980px));
  }

  .statement-graph-preview:has(.income-profit-loss-bridge-canvas) {
    aspect-ratio: 980 / 632;
  }

  .statement-graph-preview .financial-sankey svg {
    transform-origin: 0 0;
    width: 880px;
    transform: scale(calc(100cqi / 880px));
  }

  .statement-graph-preview:has(.financial-sankey svg) {
    aspect-ratio: 1000 / 540;
  }
}

.market-data-caption {
  color: var(--faint);
  flex-wrap: wrap;
  gap: 6px 16px;
  margin: 12px 0;
  display: flex;
}

.market-data-stale {
  color: #9a692b;
}

.history-extended-line {
  stroke: var(--muted);
}

.history-after-hours-region {
  fill: var(--muted);
  opacity: .045;
}

.history-session-divider {
  stroke: var(--border);
  stroke-width: 1px;
  vector-effect: non-scaling-stroke;
}

.history-last-point {
  fill: var(--history-color);
}

.history-last-point.extended {
  fill: var(--muted);
}

.history-previous-close line {
  stroke: var(--muted);
  stroke-width: 1px;
  stroke-dasharray: 2 5;
  vector-effect: non-scaling-stroke;
}

.history-previous-close circle {
  fill: var(--muted);
}

.history-previous-close text {
  fill: var(--muted);
  stroke: var(--surface);
  stroke-width: 4px;
  paint-order: stroke fill;
  stroke-linejoin: round;
  font-size: 11px;
  font-weight: 600;
}

.text-select-control {
  min-height: 32px;
  color: var(--muted);
  font-size: var(--text-small);
  cursor: pointer;
  background: none;
  border: 0;
  align-items: center;
  gap: 8px;
  padding: 0;
  font-weight: 650;
  display: inline-flex;
  position: relative;
}

@media (max-width: 800px) {
  .text-select-control.macro-series-picker, .text-select-control.macro-series-picker > span {
    color: var(--ink);
    font-size: 24px;
    font-weight: 700;
    line-height: 1.15;
  }
}

.text-select-control:hover {
  color: var(--ink);
}

.text-select-control:after {
  content: "";
  pointer-events: none;
  border-bottom: 1.5px solid;
  border-right: 1.5px solid;
  width: 6px;
  height: 6px;
  margin-top: -3px;
  transform: rotate(45deg);
}

.text-select-control > span {
  pointer-events: none;
  white-space: nowrap;
}

.text-select-control select {
  opacity: 0;
  cursor: pointer;
  background: none;
  border: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  position: absolute;
  inset: 0;
}

.text-select-control select:focus {
  outline: none;
}

.text-select-control:has(select:focus-visible) > span {
  text-underline-offset: 4px;
  text-decoration: underline;
}

.text-select-control:has(select:disabled) {
  opacity: .5;
  cursor: default;
}

.text-select-control select:disabled {
  cursor: default;
}

.financial-fact-link {
  color: inherit;
  font: inherit;
  cursor: pointer;
  background: none;
  border: 0;
  padding: 0;
  font-weight: 700;
}

.financial-fact-link:hover {
  text-underline-offset: 3px;
  text-decoration: underline;
}

.financial-fact-link:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 3px;
}

.filing-fact-navigation {
  border-bottom: 1px solid var(--border);
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  padding: 10px 16px;
  display: flex;
}

.filing-fact-navigation label {
  flex: 240px;
  align-items: center;
  gap: 8px;
  min-width: 0;
  display: flex;
}

.filing-fact-navigation select {
  flex: 1;
  min-width: 0;
  max-width: 100%;
}

.filing-fact-navigation button, .filing-fact-navigation select {
  font: inherit;
  color: var(--ink);
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: 6px;
  padding: 6px;
}

.filing-fact-navigation [role="status"] {
  font-size: var(--text-small);
}

.market-map-page {
  min-width: 0;
  padding: 24px 0 30px;
}

.market-map-header {
  justify-content: space-between;
  align-items: end;
  margin-bottom: 12px;
  display: flex;
}

.market-map-title {
  margin: 0;
  font-size: clamp(26px, 3vw, 34px);
  line-height: 1.2;
}

.market-map-controls {
  justify-content: flex-end;
  align-items: end;
  gap: 8px;
  display: flex;
}

.market-map-controls label {
  gap: 4px;
  display: grid;
}

.market-map-controls label > span {
  color: var(--faint);
  font-size: var(--text-micro);
  letter-spacing: .045em;
  text-transform: uppercase;
  font-weight: 720;
}

.market-map-controls :is(select, input) {
  border: 1px solid var(--border);
  background: var(--surface);
  width: 164px;
  min-width: 148px;
  height: 36px;
  color: var(--ink);
  font: 600 var(--text-small)/1 var(--font-ui);
  border-radius: 8px;
  outline: 0;
  padding: 0 10px;
}

.market-map-controls :is(select, input):focus-visible {
  border-color: color-mix(in srgb, var(--accent) 45%, var(--border));
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--accent) 12%, transparent);
}

.market-map-controls input::placeholder {
  color: var(--faint);
}

.market-map-legend {
  min-height: 28px;
  color: var(--faint);
  font-size: var(--text-micro);
  justify-content: flex-end;
  align-items: center;
  gap: 8px;
  display: flex;
}

.market-map-gradient {
  background: linear-gradient(90deg, var(--income-expense), #4a535c 50%, var(--income-profit));
  border-radius: 999px;
  width: 148px;
  height: 8px;
}

.market-map-canvas-wrap {
  background: #121820;
  border: 1px solid #00000073;
  border-radius: 8px;
  width: 100%;
  position: relative;
  overflow: hidden;
  box-shadow: 0 12px 32px #090d121a;
}

.market-map-canvas {
  touch-action: none;
  width: 100%;
  height: clamp(520px, 100vh - 222px, 760px);
  display: block;
}

@media (max-width: 800px), (pointer: coarse) {
  .market-map-canvas {
    touch-action: pan-y;
  }
}

.market-map-tooltip {
  z-index: 3;
  color: #fff;
  pointer-events: none;
  background: #0a0e13f5;
  border: 1px solid #ffffff1f;
  border-radius: 9px;
  width: min(276px, 100% - 28px);
  padding: 11px 12px;
  position: absolute;
  box-shadow: 0 14px 34px #00000057;
}

.market-map-tooltip strong {
  font-size: var(--text-ui);
  text-overflow: ellipsis;
  white-space: nowrap;
  display: block;
  overflow: hidden;
}

.market-map-tooltip dl {
  gap: 5px;
  margin: 9px 0 0;
  display: grid;
}

.market-map-tooltip dl div {
  justify-content: space-between;
  gap: 14px;
  display: flex;
}

.market-map-tooltip dt {
  color: #ffffff94;
  font-size: var(--text-caption);
}

.market-map-tooltip dd {
  font-size: var(--text-caption);
  font-variant-numeric: tabular-nums;
  text-align: right;
  margin: 0;
  font-weight: 680;
}

.market-map-state {
  align-content: center;
  justify-items: center;
  min-height: 560px;
  display: grid;
  position: relative;
}

.market-map-state .market-map-title {
  position: absolute;
  top: 24px;
  left: 0;
}

.market-map-retry {
  color: var(--muted);
  font: 600 var(--text-small)/1.45 var(--font-ui);
  cursor: pointer;
  text-align: left;
  background: none;
  border: 0;
  align-items: center;
  gap: 10px;
  margin: 0;
  padding: 0;
  display: inline-flex;
}

.market-map-retry:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--accent) 45%, var(--border));
  outline-offset: 4px;
  border-radius: 6px;
}

.market-map-retry .refresh-icon {
  width: 18px;
  height: 18px;
  color: var(--ink);
}

.market-map-retry-action {
  color: var(--ink);
  text-underline-offset: 3px;
  text-decoration: underline;
}

.market-map-retry:hover .market-map-retry-action {
  color: var(--accent);
}

.market-map-loading-control {
  border-radius: 8px;
  width: 164px;
  min-width: 148px;
  height: 36px;
}

.market-map-loading-treemap {
  box-sizing: border-box;
  grid-template-rows: repeat(8, minmax(0, 1fr));
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 2px;
  padding: 3px;
  display: grid;
}

.market-map-loading-sector, .market-map-loading-tile {
  min-width: 0;
  min-height: 0;
  position: relative;
  overflow: hidden;
}

.market-map-loading-sector {
  background: #090d12eb;
}

.market-map-loading-tile {
  background: #35404a;
}

.market-map-loading-tile:nth-child(5n+1) {
  background: #31443a;
}

.market-map-loading-tile:nth-child(5n+2) {
  background: #3a4048;
}

.market-map-loading-tile:nth-child(5n+3) {
  background: #43383c;
}

.market-map-loading-tile:nth-child(5n+4) {
  background: #2f3d48;
}

.market-map-loading-sector:after, .market-map-loading-tile:after {
  content: "";
  background: linear-gradient(100deg, #0000 18%, #ffffff14 48%, #0000 78%);
  animation: 1.45s ease-in-out infinite skeleton-shimmer;
  position: absolute;
  inset: 0;
  transform: translateX(-115%);
}

.market-map-loading-tile:nth-child(3n+1):after {
  animation-delay: .18s;
}

.market-map-loading-tile:nth-child(3n+2):after {
  animation-delay: .36s;
}

.quarterly-earnings-header-clip {
  background: var(--financial-table-header);
  margin-top: 8px;
  overflow: hidden;
}

.quarterly-earnings-scroll {
  overscroll-behavior-inline: contain;
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
}

.quarterly-earnings-list {
  border-collapse: separate;
  border-spacing: 0;
  table-layout: fixed;
  width: 100%;
  font-family: var(--font-ui);
  margin: 0;
}

.quarterly-earnings-list thead th {
  background: var(--financial-table-header);
  color: var(--financial-table-header-ink);
  font-size: var(--text-micro);
  letter-spacing: .015em;
  text-align: left;
  white-space: nowrap;
  padding: 13px 14px;
  font-weight: 800;
}

.quarterly-earnings-scroll .quarterly-earnings-data-head {
  display: none;
}

.quarterly-earnings-list col {
  width: 20%;
}

.quarterly-earnings-list col.earnings-period-column {
  width: 40%;
}

.quarterly-earnings-list thead th:not(:first-child) {
  text-align: right;
}

.quarterly-earnings-list button {
  color: inherit;
  font: inherit;
  text-underline-offset: 3px;
  cursor: pointer;
  background: none;
  border: 0;
  padding: 0;
  font-weight: 600;
  text-decoration: underline;
}

.quarterly-earnings-list button:disabled {
  opacity: .5;
  cursor: default;
}

.quarterly-earnings-list .quarter-summary-toggle {
  color: var(--muted);
  align-items: center;
  gap: 6px;
  text-decoration: none;
  display: inline-flex;
}

.quarter-summary-toggle .chevron-icon {
  width: 12px;
  height: 12px;
  transform: rotate(90deg);
}

.quarter-summary-toggle[aria-expanded="true"] .chevron-icon {
  transform: rotate(-90deg);
}

.quarterly-earnings-filed {
  opacity: .7;
  font-size: .875rem;
}

.quarterly-earnings-row th, .quarterly-earnings-row td {
  color: var(--ink);
  font-size: var(--text-ui);
  font-variant-numeric: tabular-nums;
  text-align: left;
  vertical-align: baseline;
  padding: 14px 14px 8px;
  font-weight: 680;
}

.quarterly-earnings-row th {
  font-weight: inherit;
}

.quarterly-earnings-row td {
  text-align: right;
  white-space: nowrap;
}

.quarterly-earnings-links > div + div {
  margin-top: 8px;
}

.quarterly-earnings-summary td {
  border-bottom: 1px solid var(--border);
  text-align: left;
  vertical-align: top;
  padding: 0 14px 14px;
}

.quarterly-earnings-list tbody tr:last-child td {
  border-bottom: 0;
}

.quarter-operational-bullets {
  margin: 8px 0 4px;
  padding-left: 22px;
}

.quarter-operational-bullets li {
  margin: 9px 0;
  line-height: 1.6;
}

.quarter-summary-skeleton {
  margin: 8px 0;
  padding-left: 22px;
}

.quarter-summary-skeleton li {
  margin: 12px 0;
}

.quarter-summary-skeleton .skeleton-block {
  width: 95%;
  height: 12px;
  margin: 7px 0;
  display: block;
}

.quarter-summary-skeleton .skeleton-block + .skeleton-block {
  width: 70%;
}

.quarter-summary-error {
  color: var(--muted);
  font-size: var(--text-small);
}

.quarterly-earnings-carousel {
  margin-top: 8px;
}

.quarterly-earnings-carousel-track {
  overscroll-behavior-inline: contain;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
  gap: 12px;
  width: 100%;
  display: flex;
  overflow-x: auto;
}

.quarterly-earnings-carousel-track::-webkit-scrollbar {
  display: none;
}

.quarterly-earnings-card {
  box-sizing: border-box;
  scroll-snap-align: start;
  scroll-snap-stop: always;
  background: var(--surface);
  flex: 0 0 calc(100% - 18px);
  max-width: calc(100% - 18px);
  padding: 10px 8px 8px;
}

.quarterly-earnings-card-title {
  margin-bottom: 14px;
}

.quarterly-earnings-card-title .quarterly-earnings-links button {
  color: inherit;
  font: inherit;
  font-size: var(--text-ui);
  text-underline-offset: 3px;
  cursor: pointer;
  background: none;
  border: 0;
  padding: 0;
  font-weight: 700;
  text-decoration: underline;
}

.quarterly-earnings-card-title .quarterly-earnings-links button:disabled {
  opacity: .5;
  cursor: default;
}

.quarterly-earnings-card-metrics {
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
  gap: 10px;
  margin: 0 0 14px;
  padding: 12px 0;
  display: grid;
}

.quarterly-earnings-card-metric {
  justify-content: space-between;
  align-items: baseline;
  gap: 16px;
  margin: 0;
  display: flex;
}

.quarterly-earnings-card-metric dt {
  color: var(--muted);
  font-size: var(--text-small);
  margin: 0;
  font-weight: 600;
}

.quarterly-earnings-card-metric dd {
  color: var(--ink);
  font-size: var(--text-ui);
  font-variant-numeric: tabular-nums;
  text-align: right;
  white-space: nowrap;
  margin: 0;
  font-weight: 680;
}

.quarterly-earnings-card-summary .quarter-operational-bullets, .quarterly-earnings-card-summary .quarter-summary-skeleton {
  margin-top: 0;
  padding-left: 18px;
}

.quarterly-earnings-carousel-controls {
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-top: 14px;
  display: flex;
}

.quarterly-earnings-carousel-nav {
  min-height: 34px;
  color: var(--muted);
  font: 600 var(--text-small)/1.3 var(--font-ui);
  cursor: pointer;
  background: none;
  border: 0;
  border-radius: 0;
  align-items: center;
  gap: 6px;
  padding: 0 4px;
  display: inline-flex;
}

.quarterly-earnings-carousel-nav:hover {
  color: var(--ink);
}

.quarterly-earnings-carousel-nav .chevron-icon {
  width: 12px;
  height: 12px;
  transform: rotate(180deg);
}

.quarterly-earnings-carousel-nav-next {
  margin-left: auto;
}

.quarterly-earnings-carousel-nav-next .chevron-icon {
  transform: none;
}

@media (max-width: 800px) {
  .quarterly-earnings-carousel-track {
    align-items: flex-start;
    overflow-y: hidden;
  }

  .quarterly-earnings-carousel-controls {
    margin-top: 4px;
  }

  .page-shell:has(.market-map-page) {
    width: calc(100% - 24px);
  }

  .market-map-page {
    padding: 12px 0 15px;
  }

  .market-map-title {
    display: none;
  }

  .market-map-header {
    width: 100%;
    margin-top: 12px;
  }

  .market-map-controls {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: 100%;
    display: grid;
  }

  .market-map-controls label, .market-map-controls :is(select, input) {
    width: 100%;
    min-width: 0;
  }

  .market-map-search {
    grid-column: auto;
  }

  .market-map-loading-control {
    width: 100%;
    min-width: 0;
  }

  .financial-section .financial-statement-switcher .financial-statement-title-select {
    font-size: var(--text-body);
    letter-spacing: -.015em;
  }

  .financial-section .statement-primary-toolbar .statement-reporting-note {
    flex: auto;
    min-width: 0;
  }
}

@media (max-width: 640px) {
  .page-shell:has(.market-map-page) {
    width: calc(100% - 16px);
  }

  .market-map-page {
    padding-top: 9px;
  }

  .market-map-legend {
    flex-wrap: wrap;
    justify-content: flex-start;
    margin: 5px 0;
  }

  .market-map-canvas {
    height: 620px;
  }

  .market-map-tooltip {
    display: none;
  }
}

.insider-activity {
  flex-shrink: 1;
  width: 300px;
  max-width: 100%;
  margin: 0 0 0 auto;
  padding: 14px 0 0;
}

.insider-activity-title {
  display: none;
}

.insider-activity small {
  opacity: .75;
  font-size: 13px;
}

.insider-activity-track {
  background: #8993a422;
  border-radius: 6px;
  width: 100%;
  height: 12px;
  display: flex;
  overflow: hidden;
}

.insider-activity small {
  margin-top: 8px;
  display: block;
}

.company-currency {
  margin-bottom: 0;
  font-size: 12px;
}

.company-currency-switch {
  border: 1px solid var(--border);
  border-radius: 8px;
  gap: 3px;
  padding: 3px;
  display: flex;
}

.company-currency-switch button {
  color: inherit;
  cursor: pointer;
  font: inherit;
  background: none;
  border: 0;
  border-radius: 5px;
  flex: 1;
  padding: 7px 9px;
}

.company-currency-switch button[aria-pressed="true"] {
  background: var(--financial-table-header);
  color: var(--financial-table-header-ink);
}

.company-currency-switch button:focus-visible {
  outline: 2px solid var(--financial-table-header);
  outline-offset: 3px;
}

.company-currency p {
  color: var(--faint);
  line-height: 1.5;
}

.company-currency p.company-currency-caption {
  color: var(--muted);
  margin: 0;
  padding: 8px 4px;
  font-weight: 620;
}

.currency-unavailable {
  color: var(--faint);
  font-size: .8em;
}

.insider-spectrum {
  background: linear-gradient(to right, var(--income-expense), var(--income-profit));
  border-radius: 6px;
  height: 12px;
  margin: 0 6px;
  position: relative;
}

.insider-spectrum-arrow {
  border-top: 8px solid;
  border-left: 6px solid #0000;
  border-right: 6px solid #0000;
  width: 0;
  height: 0;
  position: absolute;
  top: -13px;
  transform: translateX(-50%);
}

.insider-spectrum-labels {
  justify-content: space-between;
  margin-top: 8px;
  font-size: 13px;
  display: flex;
}

.insider-activity-skeleton .insider-spectrum-labels .skeleton-line {
  width: 28px;
  height: 13px;
}

@media (max-width: 800px) {
  .insider-activity {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 4px 12px;
  }

  .insider-activity-title {
    color: var(--ink);
    font-family: var(--font-editorial);
    font-size: var(--text-body);
    letter-spacing: -.02em;
    margin: 0 0 24px;
    font-weight: 600;
    display: block;
  }

  .insider-spectrum {
    margin: 0;
  }
}

.company-data-notice {
  flex: none;
  display: inline-flex;
  position: relative;
}

.company-data-icon {
  cursor: help;
  background: none;
  border: 0;
  justify-content: center;
  align-items: center;
  margin: 0;
  padding: 0;
  line-height: 0;
  display: inline-flex;
}

.company-data-icon:focus-visible {
  outline-offset: 3px;
  outline: 2px solid #ffbf00;
}

.company-data-icon-glyph {
  width: 20px;
  height: 20px;
  display: block;
}

.company-data-tooltip {
  z-index: 50;
  color: #782929;
  text-align: left;
  white-space: normal;
  background: #ffbf00;
  border: 1px solid #ffbf00;
  border-radius: 9px;
  width: min(340px, 100vw - 48px);
  padding: 14px;
  font-size: 13px;
  line-height: 1.5;
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  box-shadow: 0 6px 24px #0002;
}

.company-data-notice:hover .company-data-tooltip:not([hidden]), .company-data-notice:focus-within .company-data-tooltip:not([hidden]) {
  gap: 10px;
  display: grid;
}

.company-data-error, .company-data-error > span {
  display: block;
}

@media (max-width: 600px) {
  .company-data-tooltip {
    width: min(340px, 100vw - 140px);
  }

  .stock-title-heading .company-data-tooltip {
    left: 0;
    right: auto;
  }
}

@media (min-width: 801px) {
  .stock-detail-layout {
    --company-heading-height: 38px;
  }

  .financial-graphs-section {
    padding-bottom: var(--graph-scroll-space, 0px);
  }

  .stock-detail-rail {
    top: var(--company-identity-bottom);
  }

  .stock-detail-content :is(.insider-section, .financial-section, .financial-graphs-section) {
    --insider-sticky-top: var(--company-section-top);
    --financial-sticky-top: var(--company-section-top);
    --financial-graphs-sticky-top: var(--company-section-top);
  }

  .stock-detail-layout .company-currency-switch {
    box-sizing: border-box;
    min-height: var(--company-heading-height);
  }

  .stock-detail-content :is(.stock-overview-heading, .stock-overview-actions, .company-history-heading-row, .corporate-events-heading-row, .financial-graphs-heading-row) {
    box-sizing: border-box;
    min-height: var(--company-heading-height);
    align-items: center;
    padding-block: 0;
  }

  .stock-detail-content .burn-rate-heading-row h3, .stock-detail-content .insider-heading-row h3 {
    min-height: var(--company-heading-height);
    align-items: center;
    display: flex;
  }

  .stock-detail-content .insider-heading-row {
    align-items: flex-start;
    padding-top: 0;
  }

  .stock-detail-content .financial-section {
    --financial-sticky-toolbar-height: var(--company-heading-height);
  }

  .stock-detail-content .financial-section .statement-toolbar {
    padding-block: 0;
  }
}

.company-currency-option {
  flex: 1;
  min-width: 0;
  display: flex;
  position: relative;
}

.company-currency-tooltip {
  z-index: 20;
  border: 1px solid var(--border);
  background: var(--ink);
  width: max-content;
  max-width: min(260px, 100vw - 48px);
  color: var(--surface);
  visibility: hidden;
  pointer-events: none;
  border-radius: 8px;
  padding: 7px 10px;
  font-size: 12px;
  line-height: 1.4;
  position: absolute;
  top: calc(100% + 8px);
  left: 0;
  box-shadow: 0 4px 16px #00000029;
}

.company-currency-option:hover .company-currency-tooltip, .company-currency-option:focus-within .company-currency-tooltip {
  visibility: visible;
}

.stock-detail-rail:has(.company-currency-option:hover, .company-currency-option:focus-within) {
  z-index: 21;
}

.home-page {
  box-sizing: border-box;
  align-content: center;
  place-items: center;
  height: 100dvh;
  padding: 24px;
  display: grid;
}

.home-content {
  flex-direction: column;
  align-items: center;
  gap: 28px;
  width: 100%;
  max-width: 560px;
  margin-inline: auto;
  display: flex;
}

.home-wordmark {
  justify-content: center;
  align-items: center;
  gap: 10px;
  margin: 0;
  font-size: 44px;
  display: flex;
}

.home-wordmark .brand-logo {
  width: 188px;
  max-width: 100%;
  height: auto;
}

.home-content .header-search {
  z-index: 2;
  width: 100%;
}

.home-content .header-search input {
  height: 52px;
  font-size: 16px;
}

.home-navigation {
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px;
  width: 100%;
  display: flex;
}

.home-navigation a {
  color: var(--ink);
  border-radius: 8px;
  align-items: center;
  gap: 8px;
  padding: 10px 14px;
  font-size: 14px;
  text-decoration: none;
  display: inline-flex;
}

.home-navigation a svg {
  width: 20px;
  height: 20px;
}

.home-navigation a:hover {
  background: var(--surface-subtle);
}

.home-navigation a:focus-visible {
  outline: 2px solid var(--ink);
  outline-offset: 3px;
}

.home-page:has(.world-indices) {
  flex-direction: column;
  justify-content: flex-start;
  gap: 56px;
  height: auto;
  min-height: 100dvh;
  padding: 92px 24px 72px;
  display: flex;
}

.home-page:has(.world-indices) .home-content {
  flex: none;
}

.world-indices {
  width: min(840px, 100%);
  margin-inline: auto;
}

.world-indices-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 30px 20px;
  display: grid;
}

.world-index-card {
  min-width: 0;
  padding: 8px 4px;
}

.world-index-card-header {
  justify-content: space-between;
  align-items: baseline;
  gap: 8px;
  display: flex;
}

.world-index-card h3 {
  margin: 0;
  font-size: 13px;
  font-weight: 650;
  line-height: 1.3;
}

.world-index-change {
  font-variant-numeric: tabular-nums;
  flex: none;
  font-size: 12px;
}

.world-index-up {
  color: #159447;
}

.world-index-down {
  color: #d2484a;
}

.world-index-flat {
  color: var(--muted);
}

.world-index-chart {
  width: 100%;
  height: 56px;
  margin-top: 12px;
  display: block;
  overflow: visible;
}

.world-index-chart-empty {
  height: 56px;
  color: var(--muted);
  align-items: center;
  margin-top: 12px;
  font-size: 11px;
  display: flex;
}

.world-index-stale {
  color: #b36a1d;
  margin-top: 9px;
  font-size: 11px;
  display: block;
}

.world-index-unavailable {
  color: var(--muted);
  margin: 0;
  font-size: 13px;
}

.world-index-skeleton-header {
  align-items: center;
  min-height: 17px;
}

.world-index-skeleton-name {
  width: 58%;
  height: 12px;
}

.world-index-skeleton-change {
  width: 28%;
  height: 11px;
}

.world-index-skeleton-chart {
  border-radius: 6px;
  width: 100%;
  height: 56px;
  margin-top: 12px;
}

@media (max-width: 900px) {
  .world-indices-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 650px) {
  .home-page:has(.world-indices) {
    padding: 84px 16px calc(112px + env(safe-area-inset-bottom));
    gap: 42px;
  }

  .world-indices-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px 16px;
  }

  .world-index-card {
    padding: 6px 2px;
  }
}

@media (max-width: 380px) {
  .world-indices-grid {
    grid-template-columns: 1fr;
  }
}

.mobile-bottom-nav {
  display: none;
}

.watchlist-count {
  color: #fff;
  width: 19px;
  height: 19px;
  font: 700 10px/1 var(--font-ui);
  font-variant-numeric: tabular-nums;
  background: #000;
  border-radius: 50%;
  flex: none;
  place-items: center;
  display: inline-grid;
}

.home-navigation a:has(.watchlist-count) {
  gap: 7px;
}

.primary-nav a:has(.watchlist-count) {
  gap: 6px;
  display: inline-flex;
}

.watchlist-items a:focus-visible, .watchlist-remove:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 2px;
}

.watchlist-page {
  width: min(820px, 100%);
  margin: 36px auto;
}

.watchlist-page h1 {
  margin: 0 0 20px;
  font-size: clamp(26px, 3vw, 34px);
}

.watchlist-empty {
  border: 1px dashed var(--border);
  color: var(--muted);
  border-radius: 10px;
  margin: 10px 0;
  padding: 22px;
}

.watchlist-items {
  gap: 6px;
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
}

.watchlist-items li {
  border-radius: 10px;
  align-items: center;
  display: flex;
}

.watchlist-items li:hover {
  background: var(--surface-subtle);
}

.watchlist-items a {
  min-width: 0;
  color: var(--ink);
  flex: 1;
  align-items: center;
  gap: 12px;
  padding: 12px;
  text-decoration: none;
  display: flex;
}

.watchlist-identity {
  flex: 1;
  min-width: 0;
}

.watchlist-items strong, .watchlist-items small {
  text-overflow: ellipsis;
  white-space: nowrap;
  display: block;
  overflow: hidden;
}

.watchlist-items small {
  color: var(--muted);
  font-size: var(--text-caption);
  margin-top: 3px;
}

.watchlist-quote {
  text-align: right;
  flex: none;
}

.watchlist-quote strong {
  font-size: var(--text-ui);
}

.watchlist-quote-value {
  justify-content: flex-end;
  align-items: baseline;
  gap: 8px;
  display: flex;
}

.watchlist-quote-value strong, .watchlist-quote-value small {
  margin: 0;
  display: inline;
  overflow: visible;
}

.watchlist-quote-value .stock-price-change {
  margin-left: 0;
}

.watchlist-quote-value .stock-price-change-up {
  color: var(--income-profit);
}

.watchlist-quote-value .stock-price-change-down {
  color: var(--income-expense);
}

.watchlist-remove {
  width: 36px;
  height: 36px;
  color: var(--muted);
  cursor: pointer;
  background: none;
  border: 0;
  border-radius: 7px;
  flex: none;
  margin-right: 5px;
  font-size: 22px;
}

.watchlist-remove:hover {
  background: var(--surface);
  color: var(--ink);
}

@media (hover: hover) {
  .watchlist-remove {
    opacity: 0;
    pointer-events: none;
  }

  .watchlist-items li:hover .watchlist-remove, .watchlist-items li:focus-within .watchlist-remove {
    opacity: 1;
    pointer-events: auto;
  }
}

@media (max-width: 800px) {
  html {
    scroll-padding-bottom: calc(80px + env(safe-area-inset-bottom));
  }

  .page-shell {
    padding-bottom: calc(80px + env(safe-area-inset-bottom));
  }

  .home-page {
    padding-bottom: calc(104px + env(safe-area-inset-bottom));
  }

  .home-navigation {
    display: none;
  }

  .mobile-bottom-nav {
    z-index: 25;
    padding: 6px max(12px, env(safe-area-inset-right)) calc(6px + env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left));
    border-top: 1px solid var(--border);
    background: var(--surface);
    grid-template-columns: repeat(4, minmax(0, 1fr));
    display: grid;
    position: fixed;
    inset: auto 0 0;
  }

  .mobile-bottom-nav a {
    min-height: 52px;
    color: var(--muted);
    border-radius: 10px;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 4px;
    font-size: 12px;
    font-weight: 550;
    display: flex;
  }

  .mobile-bottom-nav svg {
    width: 22px;
    height: 22px;
  }

  .mobile-bottom-nav a.active {
    color: var(--ink);
    background: var(--surface-subtle);
    font-weight: 700;
  }

  .mobile-bottom-nav a:hover {
    color: var(--ink);
    background: var(--surface-subtle);
  }

  .mobile-bottom-nav a:focus-visible {
    outline: 2px solid var(--ink);
    outline-offset: -2px;
  }

  .watchlist-page {
    margin-top: 24px;
  }
}

.search-field {
  width: 100%;
  position: relative;
}

.mobile-page-title {
  display: none;
}

@media (max-width: 800px) {
  .site-header {
    border-bottom: 0;
  }

  .header-center .header-search, .home-content .header-search, .site-header .wordmark {
    display: none;
  }

  .header-inner {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas: "title";
  }

  .header-inner.has-mobile-watchlist {
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-areas: "title watchlist";
  }

  .mobile-page-title {
    grid-area: title;
    justify-self: start;
    align-items: center;
    gap: 10px;
    min-width: 0;
    max-width: 100%;
    margin: 0;
    font-size: 20px;
    font-weight: 650;
    display: flex;
  }

  .mobile-page-title-name {
    text-overflow: ellipsis;
    white-space: nowrap;
    min-width: 0;
    overflow: hidden;
  }

  .header-watchlist-toggle {
    grid-area: watchlist;
    justify-self: end;
    margin-left: 0;
    display: inline-flex;
  }

  .stock-title-heading .watchlist-toggle, .header-center {
    display: none;
  }

  .home-page.mobile-search-open {
    height: auto;
    min-height: 100dvh;
    padding-top: calc(12px + env(safe-area-inset-top));
    align-content: start;
  }

  .mobile-search-open .home-content {
    gap: 20px;
  }

  .mobile-search-open .header-search {
    display: block;
  }

  .mobile-search-open .search-shortcut {
    display: none;
  }

  .mobile-search-open .search-field {
    align-items: center;
    gap: 10px;
    display: flex;
  }

  .mobile-search-open .search-field input {
    flex: 1;
    width: 0;
    min-width: 0;
    padding-right: 16px;
  }

  .mobile-search-open .search-clear {
    border: 1px solid var(--border);
    background: var(--surface-subtle);
    width: 44px;
    height: 44px;
    color: var(--ink);
    border-radius: 50%;
    flex: 0 0 44px;
    position: static;
    transform: none;
  }

  .mobile-search-open .search-clear:hover {
    background: color-mix(in srgb, var(--ink) 10%, var(--surface));
  }

  .mobile-search-open .search-clear svg {
    width: 18px;
    height: 18px;
  }

  .mobile-search-open .search-results-inline {
    box-shadow: none;
    background: none;
    border: 0;
    border-radius: 0;
    margin-top: 16px;
    padding: 0;
    position: static;
  }

  .search-results-inline a {
    border-bottom: 1px solid var(--border);
    border-radius: 0;
    min-height: 68px;
  }
}

.financial-missing-marker {
  fill: var(--muted);
  font-size: 10px;
}

.financial-row-heading:has( > .financial-metric-preview-trigger) {
  grid-template-columns: 22px minmax(0, 1fr) 24px;
}

.financial-row-heading > .financial-metric-preview-trigger {
  grid-area: 1 / 3;
}

.financial-metric-preview-trigger {
  width: 24px;
  height: 24px;
  color: inherit;
  opacity: .55;
  cursor: pointer;
  background: none;
  border: 0;
  border-radius: 4px;
  justify-content: center;
  align-items: center;
  padding: 3px;
  display: inline-flex;
}

.financial-metric-preview-trigger:hover, .financial-metric-preview-trigger:focus-visible {
  opacity: 1;
  background: #80808026;
}

.financial-metric-preview-trigger:focus-visible {
  outline-offset: 2px;
  outline: 2px solid;
}

.financial-metric-preview {
  z-index: 1000;
  box-sizing: border-box;
  color: #263342;
  background: #fff;
  border: 1px solid #d9dee5;
  border-radius: 10px;
  width: 404px;
  max-width: calc(100vw - 24px);
  max-height: calc(100vh - 24px);
  padding: 14px;
  font-size: 12px;
  position: fixed;
  overflow: auto;
  box-shadow: 0 8px 32px #0000002e;
}

.metric-preview-title {
  font-weight: 700;
  line-height: 1.4;
}

.metric-preview-subtitle {
  opacity: .7;
  margin-top: 4px;
  font-size: 11px;
}

.financial-metric-preview svg {
  width: 100%;
  margin-top: 8px;
  display: block;
  overflow: visible;
}

.financial-metric-preview svg text {
  fill: currentColor;
  font-size: 9px;
}

.metric-preview-baseline {
  stroke: currentColor;
  opacity: .25;
}

.metric-preview-bar {
  fill: var(--metric-preview-accent, var(--financial-table-header));
}

.metric-preview-bar:hover {
  opacity: .75;
}

.metric-preview-header {
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  display: flex;
}

.metric-preview-ranges {
  background: #8080801f;
  border-radius: 6px;
  flex-shrink: 0;
  gap: 2px;
  padding: 2px;
  display: flex;
}

.metric-preview-ranges button {
  color: inherit;
  font: inherit;
  cursor: pointer;
  background: none;
  border: 0;
  border-radius: 4px;
  padding: 4px 7px;
  font-size: 11px;
}

.metric-preview-ranges button[aria-pressed="true"] {
  background: #80808040;
  font-weight: 700;
}

.metric-preview-ranges button:focus-visible {
  outline-offset: 1px;
  outline: 2px solid;
}

.financial-metric-preview svg .metric-preview-bar-value {
  pointer-events: none;
  paint-order: stroke;
  stroke: #fff;
  stroke-width: 4px;
  stroke-linejoin: round;
  font-size: 11px;
  font-weight: 600;
}

@media (max-width: 800px) {
  .financial-metric-preview-trigger, .financial-metric-preview {
    display: none;
  }

  .financial-row-heading:has( > .financial-metric-preview-trigger) {
    grid-template-columns: 22px minmax(0, 1fr);
  }
}

.financial-segment-heading {
  align-items: center;
  gap: 6px;
  display: flex;
}

.financial-segment-heading > .financial-segment-label {
  flex: 1;
  min-width: 0;
}

.financial-segment-heading > .financial-metric-preview-trigger {
  flex-shrink: 0;
  margin-left: auto;
}

.share-split-markers {
  z-index: 1;
  pointer-events: none;
  color: var(--muted);
  position: absolute;
  inset: 0;
}

.financial-fundamental-chart .share-split-markers > svg {
  width: 100%;
  height: 100%;
  min-height: 0;
  display: block;
}

.share-split-label {
  pointer-events: auto;
  background: var(--surface, #fff);
  min-height: 28px;
  color: inherit;
  font: inherit;
  cursor: help;
  border: 1px dashed;
  border-radius: 4px;
  justify-content: center;
  align-items: center;
  padding: 4px;
  font-size: 11px;
  display: inline-flex;
  position: absolute;
  top: 0;
}

.share-split-label:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 2px;
}

.share-split-details {
  z-index: 5;
  background: var(--surface, #fff);
  overflow-wrap: anywhere;
  border: 1px solid;
  border-radius: 4px;
  padding: 8px;
  font-size: 12px;
  display: none;
  position: absolute;
  top: 32px;
  left: 0;
  right: 0;
}

.share-split-group:hover .share-split-details, .share-split-group:focus-within .share-split-details {
  display: block;
}

.financial-fundamental-chart .share-count-hover-overlay {
  z-index: 2;
  pointer-events: none;
  width: 100%;
  height: 100%;
  min-height: 0;
  position: absolute;
  inset: 0;
}

@media (min-width: 801px) {
  .financial-graphs-section :is(.financial-performance-chart-interactive, .financial-margin-chart-interactive, .financial-pe-chart-interactive) > svg:first-child, .financial-graphs-section .financial-fundamental-interactive > svg:first-child {
    min-height: 0;
  }
}

.financial-margin-legend i.no-revenue {
  background: repeating-linear-gradient(135deg, transparent 0 4px, color-mix(in srgb, var(--muted) 25%, transparent) 4px 6px);
  height: 12px;
}

@media (max-width: 800px) {
  .financial-chart-hover-labels, .financial-chart-period-badge {
    display: none;
  }

  .financial-graphs-carousel :is(.financial-performance-chart-interactive, .financial-margin-chart-interactive, .financial-pe-chart-interactive, .financial-fundamental-interactive) {
    touch-action: pan-y;
    -webkit-user-select: none;
    user-select: none;
    -webkit-touch-callout: none;
  }

  .financial-chart-mobile-hover {
    z-index: 5;
    color: #fff;
    pointer-events: none;
    font-family: var(--font-ui);
    font-variant-numeric: tabular-nums;
    overflow-wrap: anywhere;
    background: #181b1ff5;
    border-radius: 8px;
    padding: 10px 12px;
    font-size: 14px;
    line-height: 1.4;
    position: absolute;
    inset: 8px 8px auto;
    box-shadow: 0 3px 12px #00000029;
  }

  .financial-chart-mobile-hover-period {
    color: #ffffffbf;
    margin-bottom: 6px;
  }

  .financial-chart-mobile-hover-values {
    gap: 5px;
    display: grid;
  }

  .financial-chart-mobile-hover-row {
    grid-template-columns: 8px minmax(0, 1fr);
    align-items: baseline;
    gap: 8px;
    display: grid;
  }

  .financial-chart-mobile-hover-row i {
    border-radius: 50%;
    width: 8px;
    height: 8px;
  }

  .financial-chart-mobile-hover-row strong {
    font-size: inherit;
    font-weight: 600;
  }
}

.metrics-share-action {
  align-items: center;
  gap: 8px;
  margin-left: auto;
  display: inline-flex;
}

.metrics-share-action [role="status"] {
  font-size: 12px;
}

.graph-copy-link {
  flex-shrink: 0;
}

.graph-copy-link:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 3px;
}

.financial-graphs-section figcaption {
  align-items: center;
  gap: 12px;
  display: flex;
}

.metrics-share-action .graph-copy-link {
  justify-content: center;
  width: 28px;
  height: 28px;
}

.metrics-share-action .graph-copy-link-icon {
  flex: none;
  width: 17px;
  height: 17px;
  min-height: 0;
}

/*# sourceMappingURL=client_0a09ajx._.css.map*/