/* source: vendor/normalize.css */
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
   ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */

html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
   ========================================================================== */

/**
 * Remove the margin in all browsers.
 */

body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */

main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */

a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */

small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */

img {
  border-style: none;
}

/* Forms
   ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */

button,
input { /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */

button,
select { /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */

legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */

textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */

[type="checkbox"],
[type="radio"] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */

[type="search"] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */

details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
  display: list-item;
}

/* Misc
   ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */

template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */

[hidden] {
  display: none;
}


/* source: global.css */
:root {
	/* Paul Tol Bright */
	--blue: #4477aa;
	--blue-dark: #3a6590;
	--red: #ee6677;
	--red-dark: #b24c59;
	--green: #228833;
	--green-dark: #1d742b;
	--yellow: #ccbb44;
	--yellow-dark: #706725;
	--cyan: #66ccee;
	--cyan-dark: #387083;
	--purple: #aa3377;
	--purple-dark: #902b65;
	--gray: #bbbbbb;
	--rule: #dddddd;
	--rule-strong: #bbbbbb;
	--surface-subtle: #f7f7f7;

	/* Surfaces and compatibility aliases */
	--color-blue: var(--blue);
	--color-red: var(--red);
	--color-green: var(--green);
	--color-yellow: var(--yellow);
	--color-cyan: var(--cyan);
	--color-purple: var(--purple);
	--color-gray: var(--gray);
	--color-background: #ffffff;
	--color-surface: #ffffff;
	--color-surface-soft: var(--surface-subtle);
	--color-border: var(--rule);
	--color-border-strong: var(--rule-strong);

	/* Accessible darker variants */
	--color-blue-dark: var(--blue-dark);
	--color-red-dark: var(--red-dark);
	--color-green-dark: var(--green-dark);
	--color-yellow-dark: var(--yellow-dark);
	--color-cyan-dark: var(--cyan-dark);
	--color-purple-dark: var(--purple-dark);
	--color-gray-dark: #676767;

	/* Light backgrounds */
	--color-blue-bg: #ecf1f6;
	--color-red-bg: #fdf0f1;
	--color-green-bg: #e9f3eb;
	--color-yellow-bg: #faf8ec;
	--color-cyan-bg: #f0fafd;
	--color-purple-bg: #f6ebf1;
	--color-gray-bg: #f8f8f8;

	/* Semantic aliases */
	--color-primary: var(--color-blue);
	--color-primary-hover: var(--color-blue-dark);
	--color-link: var(--color-blue-dark);
	--color-focus: var(--color-purple);
	--color-success: var(--color-green-dark);
	--color-success-bg: var(--color-green-bg);
	--color-warning: var(--color-yellow-dark);
	--color-warning-bg: var(--color-yellow-bg);
	--color-danger: var(--color-purple-dark);
	--color-danger-bg: var(--color-purple-bg);
	--color-info: var(--color-blue-dark);
	--color-info-bg: var(--color-blue-bg);

	/* Legacy aliases used by existing components */
	--color-positive: var(--color-green);
	--color-negative: var(--color-purple);
	--color-positive-bg: var(--color-green-bg);
	--color-negative-bg: var(--color-purple-bg);
	--color-surface-base: var(--color-surface);
	--color-surface-muted: var(--color-surface-soft);
	--color-surface-accent: var(--color-blue-bg);
	--color-surface-border: var(--color-border);
	--color-surface-shadow: none;

	/* Spacing */
	--space-0: 0;
	--space-1: 0.25rem;
	--space-2: 0.5rem;
	--space-3: 0.75rem;
	--space-4: 1rem;
	--space-5: 1.5rem;

	/* Radius */
	--radius-control: 0.375rem;
	--radius-sm: var(--radius-control);
	--radius-md: var(--radius-control);
	--radius-lg: 0;
	--radius-xl: 0;
	--radius-pill: var(--radius-control);

	/* Layout */
	--site-shell-width: 480px;
	--header-sticky-offset: 0rem;
	--page-header-sticky-offset: var(--header-sticky-offset);
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	font-size: 100%;
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
}

body {
	margin: 0;
	background: var(--color-background);
	font-size: 1em;
	line-height: 1.55;
	min-inline-size: 0;
}

button,
input,
select,
textarea {
	font: inherit;
}

img,
svg {
	max-inline-size: 100%;
}

a {
	text-decoration: underline;
	text-underline-offset: 0.16em;
	text-decoration-thickness: 0.08em;
}

a:hover {
	text-decoration-thickness: 0.12em;
}

a[href],
button,
summary,
input,
select,
textarea {
	-webkit-tap-highlight-color: transparent;
}

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

h1,
h2,
h3,
h4,
h5,
h6 {
	margin: 0;
	font-size: 1em;
	line-height: 1.4;
	text-wrap: balance;
}

h1 {
	font-size: 1.25em;
	line-height: 1.3;
	font-weight: 800;
}

h2 {
	padding-block-end: var(--space-1);
	border-block-end: 2px solid currentColor;
	font-weight: 800;
}

h3 {
	font-weight: 700;
}

h4 {
	font-weight: 700;
}

h5,
h6 {
	font-weight: 600;
}

p,
ul,
ol,
dl,
figure {
	margin: 0;
}

main,
section,
article,
header,
nav,
aside,
figure,
table {
	min-inline-size: 0;
}

table {
	inline-size: 100%;
	border-collapse: collapse;
	background: var(--color-surface);
}

th,
td {
	padding: 0.45rem 0.35rem;
	border-block-end: 1px solid var(--color-border);
	vertical-align: top;
	text-align: start;
	line-height: 1.45;
}

th {
	background: var(--color-surface-soft);
	font-weight: 700;
}

small {
	font-size: 0.9em;
}

summary {
	min-block-size: 2.75rem;
}

.site-shell {
	inline-size: 100%;
	max-inline-size: var(--site-shell-width);
	min-inline-size: 0;
	min-block-size: 100dvh;
	margin-inline: auto;
	overflow-x: clip;
	background: var(--color-background);
}

.site-shell.has-compact-header {
	--page-header-sticky-offset: 0rem;
}

.site-main {
	inline-size: 100%;
	max-inline-size: 100%;
	min-inline-size: 0;
}

.page {
	inline-size: 100%;
	max-inline-size: 100%;
	min-inline-size: 0;
	padding-inline: var(--space-4);
	padding-block: var(--space-3) var(--space-5);
}

.container {
	inline-size: 100%;
	min-inline-size: 0;
}

.row {
	display: flex;
	flex-direction: column;
	gap: var(--space-3);
}

.column {
	inline-size: 100%;
}

.visually-hidden {
	position: absolute;
	inline-size: 1px;
	block-size: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.eyebrow,
.text-small {
	font-size: 0.9em;
	line-height: 1.5;
}

.eyebrow {
	font-weight: 700;
}

.text-positive {
	color: var(--color-positive);
}

.text-negative {
	color: var(--color-negative);
}

.prose {
	max-inline-size: 100%;
	line-height: 1.7;
	overflow-wrap: anywhere;
}

.prose p {
	margin-block: 0 0.95em;
}

.prose p:last-child {
	margin-block-end: 0;
}

.button,
button,
input[type="submit"] {
	display: inline-flex;
	min-block-size: 2.75rem;
	align-items: center;
	justify-content: center;
	padding-inline: var(--space-4);
	border: 1px solid var(--color-primary);
	border-radius: var(--radius-md);
	background: var(--color-primary);
	color: var(--color-background);
	font-weight: 700;
	text-decoration: none;
	cursor: pointer;
}

.button:hover,
button:hover,
input[type="submit"]:hover,
.button:focus-visible,
button:focus-visible,
input[type="submit"]:focus-visible {
	background: var(--color-primary-hover);
	border-color: var(--color-primary-hover);
	color: var(--color-background);
}

.button.button-outline {
	background: var(--color-surface);
	border-color: var(--color-border-strong);
}

.button.button-outline:hover,
.button.button-outline:focus-visible {
	background: var(--color-blue-bg);
	border-color: var(--color-link);
}

.table-hint,
.note-text {
	font-size: 0.9em;
	line-height: 1.6;
}

.table-wrap {
	overflow-x: auto;
	overscroll-behavior-inline: contain;
	contain: inline-size paint;
	max-inline-size: 100%;
	min-inline-size: 0;
	background: var(--color-surface);
	scrollbar-width: thin;
}

.table-wrap table {
	min-inline-size: 42rem;
}

.table-wrap:focus-visible {
	outline: 3px solid var(--color-focus);
	outline-offset: 3px;
}


/* source: page-primitives.css */
.page-intro,
.entity-hero,
.page-section,
.page-panel,
.page-scroll-region,
.scrollable-region {
	max-inline-size: 100%;
	min-inline-size: 0;
}

.page-intro {
	display: grid;
	gap: var(--space-3);
	margin: 0;
}

.page-intro-copy,
.page-intro-main,
.page-section-heading,
.page-section-heading-main,
.page-section-preface,
.page-section-content,
.page-panel-header,
.page-panel-heading,
.page-panel-body {
	display: grid;
	gap: var(--space-3);
	inline-size: 100%;
	min-inline-size: 0;
}

.page-intro-description,
.page-intro-meta,
.page-section-description,
.page-panel-description,
.entity-hero-meta,
.company-title-subhead {
	margin: 0;
}

.page-intro-eyebrow,
.page-intro-description,
.page-intro-meta,
.page-section-description,
.page-panel-description,
.entity-hero-meta,
.company-title-subhead,
.stock-date,
.page-section-heading-aside {
	font-size: 0.9em;
}

.page-intro-eyebrow {
	margin: 0;
	font-weight: 700;
}

.page-panel,
.section-card {
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
}

.page-intro.is-hero,
.entity-hero {
	padding-block: var(--space-2);
	border: 0;
	border-radius: 0;
	background: transparent;
}

.page-intro-title,
.page-section-title,
.page-panel-title {
	margin: 0;
	overflow-wrap: anywhere;
}

.page-intro-actions {
	display: flex;
	flex-wrap: wrap;
	gap: var(--space-2);
}

.page-intro-actions > :where(a, button) {
	display: inline-flex;
	min-block-size: 2.75rem;
	align-items: center;
	justify-content: center;
	padding-inline: var(--space-4);
	border: 1px solid var(--color-border-strong);
	border-radius: var(--radius-control);
	background: var(--color-surface);
	font-weight: 700;
	text-decoration: underline;
}

.page-intro-actions > :where(a, button).is-primary {
	background: var(--color-primary);
	border-color: var(--color-primary);
	color: var(--color-background);
}

.page-intro-actions > :where(a, button).is-primary:hover,
.page-intro-actions > :where(a, button).is-primary:focus-visible {
	background: var(--color-primary-hover);
	border-color: var(--color-primary-hover);
	color: var(--color-background);
}

.entity-hero {
	display: grid;
	gap: var(--space-3);
}

.entity-hero.is-sticky {
	position: sticky;
	inset-block-start: var(--page-header-sticky-offset);
	z-index: 10;
	background: var(--color-background);
}

.entity-hero.is-sticky.is-compact {
	inset-block-start: var(--page-header-sticky-offset);
}

.entity-hero-head,
.entity-hero-copy {
	display: grid;
	gap: var(--space-2);
}

.company-title {
	display: grid;
	gap: var(--space-2);
}

.company-title-name {
	display: block;
}

.stock-quote,
.entity-hero-meta-list,
.meta-list {
	display: grid;
	gap: var(--space-2);
}

.stock-price {
	margin: 0;
	font-weight: 800;
	line-height: 1.2;
}

.stock-date {
	margin: 0;
}

.entity-hero.is-compact {
	gap: var(--space-2);
	padding-block: var(--space-1);
}

.entity-hero.is-compact .entity-hero-head {
	align-items: start;
	row-gap: var(--space-2);
}

.entity-hero.is-compact .entity-hero-copy,
.entity-hero.is-compact .company-title {
	gap: var(--space-1);
}

.entity-hero.is-compact .company-title {
	line-height: 1.15;
}

.entity-hero.is-compact .stock-quote {
	gap: var(--space-1);
	align-self: start;
}

.entity-hero.is-compact .stock-price {
	line-height: 1.05;
	white-space: nowrap;
}

.entity-hero.is-compact .stock-date {
	line-height: 1.4;
}

.page-section {
	display: grid;
	gap: var(--space-3);
	inline-size: 100%;
	margin-block-start: var(--space-5);
}

.page-section-heading,
.page-panel-header {
	display: grid;
	gap: var(--space-2);
}

.page-section-heading-main,
.page-panel-heading {
	display: grid;
	gap: var(--space-1);
}

.page-section-title,
.page-panel-title,
.page-intro-title,
.company-title {
	scroll-margin-block-start: calc(
		var(--page-header-sticky-offset) +
		var(--space-2)
	);
}

.page-section-description,
.page-panel-description {
	line-height: 1.7;
}

.page-panel {
	display: grid;
	gap: var(--space-3);
	inline-size: 100%;
}

.page-panel.is-muted {
	background: transparent;
}

.page-panel.is-accent {
	background: transparent;
}

.page-panel.is-padding-compact {
	padding: var(--space-3);
}

.page-panel.is-padding-flush {
	padding: 0;
}

.page-panel.is-section-panel {
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
}

.page-scroll-region,
.scrollable-region {
	overflow-x: auto;
	overscroll-behavior-inline: contain;
	contain: inline-size paint;
	max-inline-size: 100%;
	min-inline-size: 0;
	background: var(--color-surface);
}

.page-scroll-region > *,
.scrollable-region > * {
	min-inline-size: 0;
}

.page-section-content > *,
.page-panel-body > * {
	min-inline-size: 0;
}

.page-scroll-region > :where(table),
.scrollable-region > :where(table) {
	min-inline-size: 42rem;
}

.table-card-main-cell {
	line-height: 1.5;
	overflow-wrap: anywhere;
}

.table-card-hidden-cell {
	display: table-cell;
}

.table-card-meta-cell {
	min-inline-size: 0;
	overflow-wrap: anywhere;
}

.table-card-meta-cell::before {
	content: none;
}

.page-row-link {
	display: inline-flex;
	flex-direction: column;
	gap: var(--space-1);
	text-decoration: underline;
}

.local-nav {
	display: flex;
	gap: var(--space-2);
	flex-wrap: wrap;
	padding-block: 0 var(--space-1);
}

.local-nav a {
	display: inline;
	min-block-size: 2.75rem;
	align-items: center;
	font-weight: 700;
}

.metric-grid {
	display: table;
	inline-size: 100%;
	border-collapse: collapse;
}

.metric-grid-pair {
	display: table;
}

.metric-card {
	display: table-row;
}

.metric-card dt,
.metric-card dd {
	display: table-cell;
	padding: 0.45rem 0.35rem;
	border-block-end: 1px solid var(--color-border);
	vertical-align: top;
}

.metric-card dt {
	inline-size: 42%;
	font-weight: 700;
	line-height: 1.5;
}

.metric-card dd {
	margin: 0;
	font-weight: 800;
	line-height: 1.35;
	text-align: end;
	overflow-wrap: anywhere;
}

.metric-card dd.is-positive {
	color: var(--color-positive);
}

.metric-card dd.is-negative {
	color: var(--color-negative);
}

.metric-note {
	display: block;
	margin: var(--space-1) 0 0;
	font-size: 0.9em;
	line-height: 1.6;
	font-weight: 400;
	text-align: start;
}

.tag-list {
	display: flex;
	flex-wrap: wrap;
	gap: var(--space-2);
	margin: 0;
	padding: 0;
	list-style: none;
}

.tag {
	display: inline-flex;
	min-block-size: 2rem;
	align-items: center;
	padding-inline: var(--space-2);
	border: 1px solid var(--color-border);
	border-radius: var(--radius-control);
	font-weight: 700;
	line-height: 1.3;
}

.tag-info {
	border-color: var(--color-info);
	background: var(--color-info-bg);
	color: var(--color-info);
}

.tag-success {
	border-color: var(--color-success);
	background: var(--color-success-bg);
	color: var(--color-success);
}

.tag-warning {
	border-color: var(--color-warning);
	background: var(--color-warning-bg);
	color: var(--color-warning);
}

.tag-danger {
	border-color: var(--color-danger);
	background: var(--color-danger-bg);
	color: var(--color-danger);
}

.status {
	display: inline-flex;
	min-block-size: 1.75rem;
	align-items: center;
	margin-block-start: var(--space-2);
	padding-inline: var(--space-2);
	border-radius: var(--radius-control);
	font-weight: 700;
}

.status-success {
	background: var(--color-success-bg);
	color: var(--color-success);
}

.status-danger {
	background: var(--color-danger-bg);
	color: var(--color-danger);
}

.status-info {
	background: var(--color-info-bg);
	color: var(--color-info);
}

.section-label {
	display: inline;
	inline-size: fit-content;
	font-weight: 700;
}

.meta-list {
	grid-template-columns: 1fr;
}

.meta-list > div {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: var(--space-1);
}

.meta-list dt {
	font-size: 0.9em;
	font-weight: 700;
}

.meta-list dd {
	margin: 0;
}

.ranking-list {
	display: grid;
	gap: var(--space-2);
	margin: 0;
	padding-inline-start: 1.3rem;
}

.ranking-list li {
	padding-inline-end: var(--space-1);
}

.figure-card {
	display: grid;
	gap: var(--space-2);
	padding-block: var(--space-2);
	border-block: 1px solid var(--color-border);
	background: var(--color-surface);
}

.figure-card figcaption {
	font-size: 0.9em;
}

.note-card {
	padding: var(--space-3);
	border-block: 1px solid var(--color-border);
	background: transparent;
}

.data-list {
	display: grid;
	gap: var(--space-2);
	margin: 0;
	padding: 0;
	list-style: none;
}

.data-list li {
	padding-block: var(--space-3);
	border-block-end: 1px solid var(--color-border);
}

.data-label {
	display: block;
	font-size: 0.9em;
	font-weight: 700;
}

.data-value {
	display: block;
	margin-block-start: var(--space-1);
	line-height: 1.35;
}

.card-scroller {
	display: grid;
	gap: var(--space-3);
	padding-block: var(--space-1);
}

.card-scroller > * {
	min-inline-size: 0;
}

.field {
	display: grid;
	gap: var(--space-1);
}

.field-label {
	font-weight: 700;
}

.input {
	min-block-size: 2.75rem;
	padding-inline: var(--space-3);
	border: 1px solid var(--color-border-strong);
	border-radius: var(--radius-control);
	background: var(--color-surface);
}

.assumption-form {
	display: grid;
	gap: var(--space-3);
}

.assumption-form .button {
	inline-size: fit-content;
}


/* source: site-shell.css */
/* Shared document-shell styles used by stock, J-REIT, and ETF. */
.site-footer {
	display: grid;
	gap: var(--space-2);
	padding: var(--space-5) var(--space-4);
	border-block-start: 1px solid var(--color-border);
}

.site-header {
	display: grid;
	gap: var(--space-2);
	padding: var(--space-3) var(--space-4);
	border-block-end: 1px solid var(--color-border);
	background: var(--color-surface);
}

.site-brand {
	inline-size: fit-content;
	font-weight: 800;
}

.site-search-tagline {
	margin: 0;
}

.site-nav {
	display: flex;
	gap: var(--space-2);
	flex-wrap: wrap;
}

.site-nav-link {
	font-weight: 700;
}

.site-nav-link.is-current {
	text-decoration-thickness: 0.16em;
}

.site-header.is-compact {
	gap: var(--space-2);
	padding: var(--space-3) var(--space-4);
}

.site-search {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: var(--space-2);
	align-items: stretch;
	inline-size: 100%;
	max-inline-size: 100%;
	min-inline-size: 0;
	margin: 0;
}

.site-search.is-not-found {
	inline-size: min(100%, 36rem);
	margin-block: var(--space-4) var(--space-2);
}

.site-search input {
	min-inline-size: 0;
	min-block-size: 2.75rem;
	padding-inline: var(--space-3);
	border: 1px solid var(--color-border-strong);
	border-radius: var(--radius-control);
	background: var(--color-surface);
}

.site-search button {
	min-inline-size: 0;
	min-block-size: 2.75rem;
	padding-inline: var(--space-3);
}


/* source: company-page-sections.css */
.company-page .quick-summary-card,
.company-page .daily-chart-container,
.company-page .company-overview-card,
.company-page .notes-details {
	border-color: var(--color-border);
}

.company-page .company-page-status-card {
	padding-block: var(--space-2);
	border-block: 1px solid var(--color-border-strong);
	background: var(--color-surface);
	font-size: 0.9em;
}

.company-page .company-page-status-card.is-warning {
	border-color: var(--color-warning);
	color: var(--color-warning);
}

.company-page .company-page-status-title {
	margin: 0 0 0.35rem;
	line-height: 1.45;
	font-weight: 700;
}

.company-page .company-page-status-card.is-warning .company-page-status-title {
	color: var(--color-warning);
}

.company-page .company-page-status-body > :first-child {
	margin-top: 0;
}

.company-page .company-page-status-body > :last-child {
	margin-bottom: 0;
}

.company-page .company-page-inline-status {
	padding-block: var(--space-2);
	border-block: 1px solid var(--color-border-strong);
	background: transparent;
	font-size: 0.9em;
	line-height: 1.7;
}

.company-detail-disclosure {
	inline-size: 100%;
	max-inline-size: 100%;
	margin: 0;
	border-block: 1px solid var(--color-border);
	background: var(--color-surface);
}

.company-detail-disclosure-body {
	display: grid;
	gap: var(--space-3);
	min-inline-size: 0;
	padding-block: var(--space-3);
}

.company-detail-disclosure-body > * {
	min-inline-size: 0;
}


/* source: top-page.css */
.market-digest-page {
	display: grid;
	gap: var(--space-5);
}

.stock-ranking-meta-label,
.volume-surge-rank-badge,
.gap-down-recovery-rank-badge {
	display: none;
}

.follow-through-day-headline {
	display: flex;
	flex-direction: column;
	gap: var(--space-2);
	margin-block-end: var(--space-3);
}

.follow-through-status {
	display: inline-flex;
	align-self: flex-start;
	padding: var(--space-1) var(--space-3);
	border: 1px solid var(--color-border);
	border-radius: var(--radius-control);
	font-weight: 700;
}

.follow-through-status-arrived {
	background: var(--color-positive-bg);
	color: var(--color-positive);
}

.follow-through-status-not-arrived {
	background: var(--color-info-bg);
	color: var(--color-info);
}

.follow-through-status-insufficient {
	background: var(--color-warning-bg);
	color: var(--color-warning);
}

.follow-through-day-metrics {
	display: grid;
	gap: var(--space-2);
}

.follow-through-day-metrics div {
	padding-block: var(--space-2);
	border-block-end: 1px solid var(--color-border);
}

.follow-through-day-metrics dt {
	margin-block-end: var(--space-1);
}

.follow-through-day-metrics dd {
	margin: 0;
	font-weight: 700;
}

.investor-trading-groups,
.investor-trading-card-list,
.investor-trading-detail-list {
	display: grid;
	gap: var(--space-3);
	margin: 0;
	padding: 0;
	list-style: none;
}

.investor-trading-groups {
	gap: var(--space-4);
}

.investor-trading-group {
	display: grid;
	gap: var(--space-3);
	padding-block: var(--space-3);
	border-block-end: 1px solid var(--color-border);
}

.investor-trading-group-header {
	display: grid;
	gap: var(--space-1);
}

.investor-trading-group-header h3,
.investor-trading-card-title {
	margin: 0;
}

.investor-trading-card-list {
	grid-template-columns: 1fr;
}

.investor-trading-card-body {
	display: grid;
	block-size: 100%;
	gap: var(--space-2);
	padding-block: var(--space-2);
	border-block-end: 1px solid var(--color-border);
	background: transparent;
}

.investor-trading-card-metrics,
.investor-trading-futures-metrics {
	display: grid;
	gap: var(--space-2);
	margin: 0;
}

.investor-trading-card-metrics div,
.investor-trading-futures-metrics div {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: var(--space-2);
	padding-block-start: var(--space-2);
	border-block-start: 1px solid var(--color-border);
}

.investor-trading-card-metrics dt,
.investor-trading-futures-metrics dt {
	font-weight: 700;
}

.investor-trading-card-metrics dd,
.investor-trading-futures-metrics dd {
	margin: 0;
	text-align: end;
}

.investor-trading-futures-main {
	align-items: baseline;
}

.ma-convergence-grid {
	display: grid;
	gap: var(--space-4);
	align-items: start;
}

.ma-convergence-column h3,
.golden-cross-card h3,
#top-regulations h3 {
	margin-block-end: var(--space-2);
}

.golden-cross-carousel {
	display: grid;
	gap: var(--space-3);
	margin: 0;
	padding: var(--space-1) 0 var(--space-2);
	list-style: none;
}

.golden-cross-carousel-item {
	list-style: none;
}

.golden-cross-card {
	border-block: 1px solid var(--color-border);
	padding-block: var(--space-3);
	background: var(--color-surface);
}

.market-activity-summary-grid {
	display: grid;
	gap: var(--space-3);
	margin: 0;
}

.market-activity-summary-card {
	padding-block: var(--space-2);
	border-block-end: 1px solid var(--color-border);
	background: transparent;
}

.market-activity-summary-label {
	margin-block-end: var(--space-1);
	font-weight: 700;
}

.market-activity-summary-value {
	margin-block-end: var(--space-1);
	line-height: 1.25;
}

.market-activity-badge {
	display: inline-flex;
	min-block-size: 1.75rem;
	align-items: center;
	padding-inline: var(--space-2);
	border: 1px solid var(--color-border);
	border-radius: var(--radius-control);
	font-weight: 700;
}

.market-activity-badge-active {
	background: var(--color-success-bg);
	color: var(--color-success);
}

.market-activity-badge-neutral {
	background: var(--color-surface-soft);
}

.market-activity-badge-calm {
	background: var(--color-info-bg);
	color: var(--color-info);
}

.stock-ranking-summary-table tbody {
	display: block;
}

.stock-ranking-summary-table tr.stock-ranking-summary-row {
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--space-2);
	padding: var(--space-3) 0;
	border-block-end: 1px solid var(--color-border);
}

.stock-ranking-summary-table tr.stock-ranking-summary-row:first-child {
	border-block-start: 1px solid var(--color-border);
}

.stock-ranking-summary-table tr.stock-ranking-summary-row td {
	padding: 0;
	border-block-end: 0;
	min-width: 0;
}

.stock-ranking-summary-table .stock-ranking-meta-cell {
	display: grid;
	gap: var(--space-2);
	text-align: left;
}

.stock-ranking-summary-table .stock-ranking-meta-price,
.stock-ranking-summary-table .stock-ranking-meta-change,
.gap-down-recovery-table .gap-down-recovery-meta-cell {
	display: flex;
	flex-direction: column;
	gap: var(--space-1);
}

.stock-ranking-summary-table .stock-ranking-meta-label,
.gap-down-recovery-table .gap-down-recovery-meta-cell::before {
	display: block;
}

.volume-surge-table .volume-surge-rank-cell,
.gap-down-recovery-table .gap-down-recovery-rank-cell {
	display: none;
}

.volume-surge-table .volume-surge-summary-cell {
	line-height: 1.6;
}

.released-code-list {
	display: flex;
	flex-wrap: wrap;
	gap: var(--space-2);
}


/* source: stock-component-styles.css */
/* migrated component stylesheet */
.company-page .bs-block-diagram {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	grid-template-rows: minmax(0, auto) minmax(0, 1fr);
	margin: 0;
}

.company-page .bs-block {
	min-inline-size: 0;
	padding: var(--space-3);
	border: 3px solid currentColor;
	overflow-wrap: anywhere;
}

.company-page .bs-block-assets {
	grid-row: 1 / 3;
}

.company-page .bs-block-liabilities,
.company-page .bs-block-equity {
	margin-inline-start: -3px;
}

.company-page .bs-block-equity {
	margin-block-start: -3px;
}

.company-page .bs-statement-primary {
	display: block;
	line-height: 1.45;
}

.company-page .bs-statement-details {
	margin: var(--space-2) 0 0;
	padding-inline-start: 1.25rem;
	display: grid;
	gap: var(--space-1);
	font-weight: 400;
}

.company-page .bs-statement-details li {
	line-height: 1.45;
}

.company-page .no-data-message {
	padding-block: var(--space-2);
	border-block: 1px solid var(--color-border);
}

.company-page .placeholder-text {
	margin: 0 0 0.5rem;
	font-weight: 600;
}

.company-page .placeholder-hint {
	margin: 0;
}

/* migrated component stylesheet */
.company-page .chart {
	inline-size: 100%;
	aspect-ratio: 3 / 2;
}

.company-page .cash-flow-history-chart-image {
	display: block;
	inline-size: 100%;
	block-size: 100%;
	object-fit: contain;
}

/* migrated component stylesheet */
.company-page .page-scroll-region > .company-equity-holdings-table {
	min-inline-size: 100%;
}

.company-page .company-equity-holdings-table {
	inline-size: 100%;
	table-layout: fixed;
}

.company-page .company-equity-holdings-table .holding-name-column {
	inline-size: 24%;
}

.company-page .company-equity-holdings-table .holding-basis-column,
.company-page .company-equity-holdings-table .holding-valuation-column {
	inline-size: 23%;
}

.company-page .company-equity-holdings-table .holding-purpose-column {
	inline-size: 30%;
}

.company-page .company-equity-holdings-table th,
.company-page .company-equity-holdings-table td {
	padding: var(--space-3);
	text-align: left;
	border-bottom: 1px solid var(--color-border);
	vertical-align: top;
}

.company-page .company-equity-holdings-table th {
	background-color: var(--color-surface-soft);
	font-weight: 700;
	overflow-wrap: anywhere;
}

.company-page .company-equity-holdings-table .cell-content {
	white-space: pre-line;
	overflow-wrap: anywhere;
}

/* migrated component stylesheet */
.company-page .page-scroll-region > .company-info-table {
	min-inline-size: 100%;
}

.company-page .company-info-table {
	inline-size: 100%;
	table-layout: fixed;
}

.company-page .company-info-table th,
.company-page .company-info-table td {
	padding: var(--space-3);
	text-align: left;
	border-bottom: 1px solid var(--color-border);
	vertical-align: top;
}

.company-page .company-info-table th {
	background-color: var(--color-surface-soft);
	font-weight: 700;
	overflow-wrap: anywhere;
}

.company-page .company-info-table td {
}

.company-page .company-info-table .center {
	text-align: center;
}

.company-page .company-info-table .right {
	text-align: right;
}

.company-page .company-info-table .rank {
	width: 3rem;
}

.company-page .company-info-table .cell-content {
	white-space: pre-line;
	overflow-wrap: anywhere;
}

.company-page .company-info-table .shareholding-ratio {
	width: 5.5em;
}

.company-page .company-info-table .shareholding-ratio .cell-content {
	white-space: nowrap;
}

/* migrated component stylesheet */
.company-page .page-scroll-region > .company-major-facilities-table {
	min-inline-size: 100%;
}

.company-page .company-major-facilities-table {
	inline-size: 100%;
	table-layout: fixed;
}

.company-page .company-major-facilities-table .facility-name-column {
	inline-size: 32%;
}

.company-page .company-major-facilities-table .facility-detail-column,
.company-page .company-major-facilities-table .facility-book-value-column {
	inline-size: 34%;
}

.company-page .company-major-facilities-table th,
.company-page .company-major-facilities-table td {
	padding: var(--space-3);
	text-align: left;
	border-bottom: 1px solid var(--color-border);
	vertical-align: top;
}

.company-page .company-major-facilities-table th {
	background-color: var(--color-surface-soft);
	font-weight: 700;
	overflow-wrap: anywhere;
}

.company-page .company-major-facilities-table .cell-content {
	white-space: pre-line;
	overflow-wrap: anywhere;
}

/* migrated component stylesheet */
.company-page .land-valuation,
.company-page .land-valuation * {
	min-inline-size: 0;
}

.company-page .land-valuation {
	border-block-start: 1px solid var(--border-color, #d7d7d7);
	padding-block-start: 1rem;
}

.company-page .land-valuation p,
.company-page .land-valuation li,
.company-page .land-valuation dd,
.company-page .land-valuation a {
	overflow-wrap: anywhere;
}

.company-page .land-valuation__summary,
.company-page .land-valuation__notes {
	margin-block: 0.75rem;
}

.company-page .land-valuation__facilities > ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

.company-page .land-valuation__facility {
	border-block-start: 1px solid var(--border-color, #d7d7d7);
	padding-block: 0.8rem;
}

.company-page .land-valuation__facility-name {
	margin-block: 0 0.6rem;
}

.company-page .land-valuation dl {
	display: grid;
	grid-template-columns: minmax(6rem, max-content) minmax(0, 1fr);
	gap: 0.25rem 0.75rem;
	margin: 0;
}

.company-page .land-valuation dt {
	font-weight: 600;
}

.company-page .land-valuation dd {
	margin: 0;
}

.company-page .land-valuation__warnings {
	margin-block-end: 0;
}

@media (max-width: 30rem) {
	.company-page .land-valuation dl {
		grid-template-columns: 1fr;
	}

	.company-page .land-valuation dd + dt {
		margin-block-start: 0.35rem;
	}
}

/* migrated component stylesheet */
.company-page .news-list {
	display: grid;
	gap: 1rem;
}

.company-page .news-list .header {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
}

.company-page .news-list .title {
	margin: 0;
	font-weight: 500;
}

.company-page .news-list .news-timezone-note {
	margin: 0;
	font-size: 0.9em;
}

.company-page .news-list .news-item-list {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
}

.company-page .news-list .news-item {
	padding-bottom: 0.75rem;
	border-bottom: 1px solid var(--color-border);
}

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

.company-page .news-list .news-link {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 0.4rem 0.75rem;
	text-decoration: underline;
	text-underline-offset: 0.18em;
	text-decoration-thickness: 0.08em;
	transition: text-decoration-thickness 0.2s;
}

.company-page .news-list .news-link:hover {
	text-decoration-thickness: 0.12em;
}

.company-page .news-list .timestamp {
	white-space: nowrap;
	font-variant-numeric: tabular-nums;
}

.company-page .news-list .news-title {
	line-height: 1.5;
	flex: 1;
	min-inline-size: min(100%, 12.5rem);
}

.company-page .news-list .pdf-icon {
	display: inline-block;
	inline-size: 1em;
	block-size: 1em;
	margin-inline-start: 0.25em;
	vertical-align: -0.125em;
}

.company-page .news-list .source {
	font-weight: 600;
	padding: 0.125rem 0.5rem;
	border-radius: 0.25rem;
	white-space: nowrap;
}

.company-page .news-list .source-tdnet {
	background: var(--color-info-bg);
	border: 1px solid var(--color-border-strong);
}

.company-page .news-list .source-edinet {
	color: var(--color-warning);
	background: var(--color-warning-bg);
	border: 1px solid var(--color-warning);
}

.company-page .news-list .source-news {
	color: var(--color-success);
	background: var(--color-success-bg);
	border: 1px solid var(--color-success);
}

.company-page .news-list .news-group-list {
	display: grid;
	gap: 1rem;
}

.company-page .news-list .news-group {
	display: grid;
	gap: 0.6rem;
}

.company-page .news-list .news-group-title {
	margin: 0;
}

.company-page .news-list .empty {
	font-style: italic;
	margin: 0;
}

/* migrated component stylesheet */
.company-page {
	display: grid;
	gap: var(--space-5);
	min-inline-size: 0;
}

.company-page-hero {
	align-self: start;
	margin: calc(var(--space-3) * -1) calc(var(--space-4) * -1) 0;
	padding: var(--space-2) var(--space-4);
	background: transparent;
}

.company-page .company-page-hero .entity-hero-head {
	position: relative;
	z-index: 1;
	display: block;
}

.company-page-hero::before {
	position: absolute;
	z-index: 0;
	inset-block: 0;
	inset-inline-start: 0;
	inline-size: min(100vw, var(--site-shell-width));
	border-block-end: 1px solid var(--color-border);
	background: var(--color-background);
	content: "";
}

.company-page .company-page-hero .entity-hero-copy {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	column-gap: var(--space-3);
	row-gap: var(--space-1);
	align-items: start;
}

.company-page .company-page-hero .entity-hero-eyebrow {
	grid-column: 1;
	grid-row: 1;
	margin: 0;
	font-size: 0.95em;
	line-height: 1.2;
}

.company-page .company-page-hero .company-title {
	grid-column: 1;
	grid-row: 2;
	align-self: start;
	margin: 0;
	line-height: 1.3;
}

.company-page .company-page-hero .stock-quote {
	display: grid;
	grid-column: 2;
	grid-row: 1 / span 2;
	gap: var(--space-1);
	align-self: center;
	text-align: end;
}

.company-page .company-page-hero .stock-metric {
	margin: 0;
	font-size: 1em;
	font-weight: 700;
	line-height: 1.4;
	white-space: nowrap;
}

.company-page .company-page-hero .stock-price {
	margin: 0;
	font-size: 1em;
	font-weight: 700;
	line-height: 1.4;
	white-space: nowrap;
}

.company-page .company-page-hero .stock-date {
	font-size: 1em;
	line-height: 1.2;
}

.company-page .company-status-chip-list {
	margin-block-start: 0;
}

.company-page .company-page-hero .company-title {
	overflow-wrap: anywhere;
}

@media (max-width: 22rem) {
	.company-page .company-page-hero .entity-hero-copy {
		grid-template-columns: minmax(0, 1fr);
	}

	.company-page .company-page-hero .stock-quote {
		grid-column: 1;
		grid-row: auto;
		align-self: start;
		text-align: start;
	}
}

.company-page .company-overview-card {
	margin: 0;
}

.company-page .company-overview-primary {
	display: grid;
	gap: var(--space-3);
	min-inline-size: 0;
}

.company-page .company-overview-summary {
	margin: 0;
	line-height: 1.8;
}

.company-page .company-official-link {
	margin: 0;
	overflow-wrap: anywhere;
}

.company-page .reference-company-links,
.company-page .company-subsection:not(.company-stock-chart-section),
.company-page .company-relationships-section,
.company-page .company-narrative-brief,
.company-page .company-relationship-grid,
.company-page .notes-body {
	display: grid;
	gap: var(--space-3);
}

.company-page .reference-company-title,
.company-page
	.company-subsection:not(.company-stock-chart-section)
	.company-subsection-title {
	margin: 0;
}

.company-page .reference-company-chip-list {
	display: flex;
	flex-wrap: wrap;
	gap: var(--space-2);
	margin: 0;
	padding: 0;
	list-style: none;
}

.company-page .reference-company-chip-link {
	font-weight: 700;
}

.company-page .reference-company-chip-link:hover,
.company-page .reference-company-chip-link:focus-visible {
}

.company-page .company-overview {
	display: grid;
	gap: var(--space-3);
}

.company-page .company-overview h3,
.company-page .company-overview h4 {
	margin: 0;
}

.company-page .company-fact-list {
	display: grid;
	gap: var(--space-2);
	margin: 0;
}

.company-page .company-fact-list > div {
	display: grid;
	gap: var(--space-1);
	padding-block-end: var(--space-2);
	border-block-end: 1px solid var(--color-border);
}

.company-page .company-fact-list dt {
	font-weight: 700;
}

.company-page .company-fact-list dd {
	margin: 0;
	overflow-wrap: anywhere;
}

.company-page .company-brief-list,
.company-page .company-relationship-evidence-list,
.company-page .notes-list {
	display: grid;
	gap: var(--space-2);
	padding-inline-start: 1.25rem;
}

.company-page .company-brief-list > li {
	overflow-wrap: anywhere;
}

.company-page .assumed-exchange-rate-inline {
	display: grid;
	gap: var(--space-1);
	margin-block-start: var(--space-2);
	padding-block-start: var(--space-2);
	border-block-start: 1px solid var(--rule);
}

.company-page .assumed-exchange-rate-inline p {
	margin: 0;
}

.company-page .assumed-exchange-rate-value {
	font-weight: 700;
}

.company-page .assumed-exchange-rate-source {
	font-size: 0.9em;
}

.company-page .company-relationship-source-documents {
	display: grid;
	gap: var(--space-1);
}

.company-page .company-relationship-source-document-list {
	display: grid;
	gap: var(--space-1);
}

.company-page .company-relationship-source-document {
	margin: 0;
	font-size: 0.9em;
	text-align: end;
	overflow-wrap: anywhere;
}

.company-page .company-relationship-source-document cite {
	font-style: normal;
}

.company-page .llm-accordion {
	margin: 0;
}

.company-page .llm-accordion-body {
	padding-block-start: 0;
}

.company-page .llm-prose {
	line-height: 1.8;
}

.company-page .llm-prose p {
	margin-block: 0 0.95em;
}

.company-page .llm-prose p:last-child {
	margin-block-end: 0;
}

.company-page .llm-prose ul {
	margin: 0;
	padding-inline-start: 1.25rem;
	display: grid;
	gap: var(--space-2);
}

.company-page .notes-details {
	margin: 0;
}

.company-page .notes-body {
	padding-block-start: 0;
}

.company-page .notes-list {
	margin: 0;
}

/* migrated component stylesheet */
.company-page .quick-summary-table td {
	text-align: end;
}

.company-page .quick-summary-table .is-positive {
	color: var(--color-positive);
}

.company-page .quick-summary-table .is-negative {
	color: var(--color-negative);
}

.company-page .quick-summary-table .metric-note {
	display: block;
	margin-block-start: var(--space-1);
	font-size: 0.9em;
	font-weight: 400;
	line-height: 1.6;
	text-align: start;
	overflow-wrap: anywhere;
	white-space: normal;
}

/* migrated component stylesheet */
.company-page .current-forecast-comparison-panel {
	border-radius: 0.5rem;
}

.company-page .current-forecast-comparison-panel .forecast-comparison-table {
	width: 100%;
	border-collapse: collapse;
	table-layout: fixed;
}

.company-page
	.current-forecast-comparison-panel
	.forecast-comparison-table
	caption {
	margin-block: 0 0.6rem;
	text-align: left;
	font-weight: 700;
}

.company-page .current-forecast-comparison-panel .forecast-comparison-table th,
.company-page .current-forecast-comparison-panel .forecast-comparison-table td {
	padding: 0.55rem 0.35rem;
	border-block-end: 1px solid var(--color-border);
	text-align: left;
	vertical-align: top;
	overflow-wrap: anywhere;
}

.company-page
	.current-forecast-comparison-panel
	.forecast-comparison-table
	thead
	th {
	background: var(--color-surface-soft);
	font-weight: 700;
}

.company-page
	.current-forecast-comparison-panel
	.forecast-comparison-table
	th:first-child {
	width: 4.4em;
}

.company-page
	.current-forecast-comparison-panel
	.forecast-comparison-table
	th:nth-child(2),
.company-page
	.current-forecast-comparison-panel
	.forecast-comparison-table
	th:nth-child(3) {
	width: calc((100% - 4.4em) / 2);
}

.company-page
	.current-forecast-comparison-panel
	.forecast-comparison-table
	thead
	span,
.company-page .current-forecast-comparison-panel .period-label,
.company-page .current-forecast-comparison-panel .metric-value {
	display: block;
}

.company-page .current-forecast-comparison-panel .period-label,
.company-page .current-forecast-comparison-panel .forecast-comparison-meta {
	font-size: 0.9em;
	line-height: 1.55;
}

.company-page .current-forecast-comparison-panel .metric-value {
	font-weight: 700;
}

.company-page .current-forecast-comparison-panel .forecast-comparison-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem 1rem;
	margin: 0.7rem 0 0;
	padding: 0;
}

.company-page .current-forecast-comparison-panel .forecast-comparison-meta div {
	display: flex;
	gap: 0.35rem;
	min-width: fit-content;
}

.company-page .current-forecast-comparison-panel .forecast-comparison-meta dt {
	font-weight: 700;
}

.company-page .current-forecast-comparison-panel .forecast-comparison-meta dd {
	margin: 0;
}

/* migrated component stylesheet */
.company-page .chart {
	inline-size: 100%;
	aspect-ratio: 3 / 2;
}

.company-page .employee-productivity-chart-image {
	display: block;
	inline-size: 100%;
	block-size: 100%;
	object-fit: contain;
}

/* migrated component stylesheet */
.company-page .eps-history {
	display: grid;
	gap: var(--space-1);
}

.company-page .eps-history .chart {
	inline-size: 100%;
	aspect-ratio: 3 / 2;
}

.company-page .eps-history .eps-chart-image {
	display: block;
	inline-size: 100%;
	block-size: 100%;
	object-fit: contain;
}

.company-page .eps-history .eps-growth-note {
	margin: 0;
	font-size: 0.9em;
}

/* migrated component stylesheet */
.company-page .financial-quality-ledger .title {
	margin: 0 0 var(--space-3) 0;
	font-weight: 700;
}

.company-page .financial-quality-ledger .value {
	font-weight: 700;
}

.company-page .financial-quality-ledger .value {
	overflow-wrap: anywhere;
}

.company-page .financial-quality-ledger .value.is-positive {
	color: var(--color-positive);
}

.company-page .financial-quality-ledger .value.is-info {
	color: var(--color-info);
}

.company-page .financial-quality-ledger .value.is-muted,
.company-page .financial-quality-ledger .metric-note {
	display: block;
	margin-block-start: var(--space-1);
	font-size: 0.9em;
	font-weight: 400;
	line-height: 1.6;
	text-align: start;
}

.company-page .financial-quality-ledger .dupont-section {
	margin-top: var(--space-4);
	padding-top: var(--space-4);
	border-top: 1px solid var(--color-border);
}

.company-page .financial-quality-ledger .dupont-title {
	margin: 0 0 var(--space-1);
	font-weight: 700;
}

.company-page .financial-quality-ledger .dupont-formula {
	margin: 0 0 var(--space-2);
	font-size: 0.9em;
}

/* migrated component stylesheet */
.company-page .margin-reg-badge {
	display: flex;
	gap: 0.75rem;
	padding-block: var(--space-2);
	border-block: 1px solid var(--color-border-strong);
	margin-bottom: 1.5rem;
}

.company-page .margin-reg-badge .badge-icon {
	line-height: 1.5rem;
}

.company-page .margin-reg-badge .badge-content {
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
}

.company-page .margin-reg-badge .badge-title {
	font-weight: 700;
	color: var(--color-warning);
}

.company-page .margin-reg-badge .badge-detail {
	color: var(--color-warning);
}

.company-page .margin-reg-badge .badge-meta {
	color: var(--color-warning);
}

/* migrated component stylesheet */
.company-page .chart {
	inline-size: 100%;
	aspect-ratio: 3 / 2;
}

.company-page .net-assets-chart-image {
	display: block;
	inline-size: 100%;
	block-size: 100%;
	object-fit: contain;
}

/* migrated component stylesheet */
.not-found {
	display: grid;
	align-content: center;
	justify-items: center;
	gap: var(--space-3);
	min-height: 50vh;
	text-align: center;
	padding-block: var(--space-5);
}

.not-found h1 {
	font-weight: 700;
	margin: 0;
	line-height: 1;
}

.not-found .message {
	font-weight: 600;
	margin: 0;
}

.not-found .description {
	margin: 0;
}

.not-found .links {
	display: flex;
	gap: 1rem;
	flex-wrap: wrap;
	justify-content: center;
}

.not-found .links a {
	padding: 0.75rem 1.5rem;
	background: var(--color-accent);
	color: #fff;
	text-decoration: none;
	border-radius: 0.4rem;
	font-weight: 500;
}

.not-found .links a:hover {
	opacity: 0.9;
}

/* migrated component stylesheet */
:is(.quarterly-analysis-section, .company-page) .summary-list {
	margin: 0;
	display: grid;
	gap: 0.7rem;
}

:is(.quarterly-analysis-section, .company-page) .summary-row {
	display: grid;
	gap: 0.2rem;
}

:is(.quarterly-analysis-section, .company-page) .summary-row dt {
	font-weight: 700;
	color: var(--color-success);
}

:is(.quarterly-analysis-section, .company-page) .summary-row dd {
	margin: 0;
	line-height: 1.6;
	font-weight: 600;
}

.quarterly-analysis-section .section-stack,
.company-page .section-stack {
	display: grid;
	gap: 1rem;
}

:is(.quarterly-analysis-section, .company-page) .progress-period {
	margin: 0;
	font-weight: 700;
}

:is(.quarterly-analysis-section, .company-page) .progress-period a {
	color: inherit;
	text-decoration: underline;
	text-underline-offset: 0.18em;
}

:is(.quarterly-analysis-section, .company-page) .progress-table {
	inline-size: 100%;
	table-layout: fixed;
	border-collapse: collapse;
}

:is(.quarterly-analysis-section, .company-page) .progress-table th,
:is(.quarterly-analysis-section, .company-page) .progress-table td {
	padding: 0.55rem 0.35rem;
	vertical-align: top;
	border-block-start: 1px solid var(--color-border);
	overflow-wrap: anywhere;
}

:is(.quarterly-analysis-section, .company-page) .progress-table thead th {
	border-block-start: 0;
	font-weight: 700;
}

:is(.quarterly-analysis-section, .company-page) .progress-table th + th,
:is(.quarterly-analysis-section, .company-page) .progress-table td + td {
	border-inline-start: 1px solid var(--color-border);
}

:is(.quarterly-analysis-section, .company-page) .metric-state-label {
	font-weight: 700;
	color: var(--color-danger);
}

:is(.quarterly-analysis-section, .company-page) .progress-metric-list {
	display: grid;
	gap: 0.65rem;
	margin: 0;
}

:is(.quarterly-analysis-section, .company-page) .progress-metric-list div {
	display: grid;
	gap: 0.2rem;
}

:is(.quarterly-analysis-section, .company-page) .progress-metric-list dd {
	margin: 0;
}

/* migrated component stylesheet */
.release-assessment {
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
	line-height: 1.45;
	min-width: 170px;
}

.release-assessment .overall-label {
	font-weight: 700;
	padding: 3px 6px;
	border-radius: 3px;
	text-align: center;
}

.release-assessment .release-imminent {
	background: var(--color-success-bg);
	color: var(--color-success);
	border: 1px solid var(--color-border-strong);
}

.release-assessment .release-progressing {
	background: var(--color-warning-bg);
	color: var(--color-warning);
	border: 1px solid var(--color-warning-bg);
}

.release-assessment .conditions {
	display: flex;
	flex-direction: column;
	gap: 3px;
}

.release-assessment .condition {
	display: flex;
	align-items: center;
	gap: 4px;
	padding: 3px 4px;
	border-radius: 2px;
}

.release-assessment .condition-met {
	background: var(--color-success-bg);
	color: var(--color-success);
}

.release-assessment .condition-unmet {
	background: var(--color-danger-bg);
	color: var(--color-danger);
}

.release-assessment .condition-name {
	font-weight: 600;
	min-width: 2.2rem;
}

.release-assessment .condition-value {
	font-variant-numeric: tabular-nums;
}

.release-assessment .condition-threshold {
}

.release-assessment .condition-days {
	margin-left: auto;
	font-variant-numeric: tabular-nums;
	font-weight: 600;
}

.release-assessment .no-data {
}

/* migrated component stylesheet */
.company-page .history-table {
	width: max-content;
	min-width: 100%;
	border-collapse: collapse;
	table-layout: fixed;
}

.company-page .history-table th,
.company-page .history-table td {
	padding: 0.65rem 0.75rem;
	border-bottom: 1px solid var(--color-border);
	white-space: nowrap;
}

.company-page .history-table thead th {
	background: var(--color-surface-soft);
	font-weight: 700;
	text-align: left;
}

.company-page .history-table tbody th {
	font-weight: 600;
	text-align: left;
}

.company-page .history-table tbody td {
	font-variant-numeric: tabular-nums;
	text-align: right;
}

/* migrated component stylesheet */
.company-page [data-company-panel="segment-analytics"] .source-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
	margin-bottom: 0.9rem;
}

.company-page [data-company-panel="segment-analytics"] .breakdown-group-list {
	display: grid;
	gap: 1rem;
}

.company-page [data-company-panel="segment-analytics"] .breakdown-group {
	display: grid;
	gap: 0.55rem;
}

.company-page [data-company-panel="segment-analytics"] .breakdown-group-title {
	margin: 0;
	font-size: 1em;
	font-weight: 700;
}

.company-page [data-company-panel="segment-analytics"] .segment-name {
	display: grid;
	gap: 0.2rem;
}

.company-page [data-company-panel="segment-analytics"] .segment-name span {
	overflow-wrap: anywhere;
	word-break: normal;
}

.company-page [data-company-panel="segment-analytics"] .data-table {
	width: max-content;
	min-width: 100%;
	border-collapse: collapse;
}

.company-page [data-company-panel="segment-analytics"] .wide-table {
	min-inline-size: 88rem;
}

.company-page [data-company-panel="segment-analytics"] .data-table th,
.company-page [data-company-panel="segment-analytics"] .data-table td {
	padding: 0.85rem 0.75rem;
	border-top: 1px solid var(--color-border);
	text-align: left;
	vertical-align: top;
}

.company-page [data-company-panel="segment-analytics"] .data-table thead th {
	padding-top: 0;
	border-top: none;
	font-weight: 700;
}

.company-page
	[data-company-panel="segment-analytics"]
	.data-table
	tbody
	tr.is-total
	> td {
	border-top-color: var(--color-border-strong);
	background: var(--color-blue-bg);
	font-weight: 700;
}

/* migrated component stylesheet */
.company-page .shareholder-return-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1rem;
}

.company-page .shareholder-return-block {
	display: grid;
	gap: 0.5rem;
}

.company-page .shareholder-return-title {
	margin: 0;
	font-weight: 700;
}

.company-page .shareholder-return-table {
	inline-size: 100%;
	border-collapse: collapse;
}

.company-page .shareholder-return-table th,
.company-page .shareholder-return-table td {
	padding: 0.45rem 0.35rem;
	border-block-start: 1px solid var(--color-border);
	text-align: right;
	vertical-align: top;
	overflow-wrap: anywhere;
}

.company-page .shareholder-return-table thead th {
	border-block-start: 0;
	background: var(--color-surface-soft);
	font-weight: 700;
}

.company-page .shareholder-return-table th:first-child,
.company-page .shareholder-return-table td:first-child {
	text-align: left;
}

.company-page .shareholder-return-table tbody th {
	font-weight: 600;
}

.company-page .buyback-compact {
	gap: 0.4rem;
}

.company-page .buyback-compact-scroll {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.company-page .buyback-compact-table {
	inline-size: max-content;
	min-inline-size: 100%;
	border-collapse: collapse;
	font-size: 0.9em;
	font-variant-numeric: tabular-nums;
}

.company-page .buyback-compact-table th,
.company-page .buyback-compact-table td {
	padding: 0.45rem 0.35rem;
	border-block-end: 1px solid var(--color-border);
	vertical-align: top;
	white-space: nowrap;
}

.company-page .buyback-compact-table thead th {
	background: var(--color-surface-soft);
	font-weight: 700;
}

.company-page .buyback-planned,
.company-page .buyback-progress {
	text-align: right;
}

.company-page .buyback-source a {
	white-space: nowrap;
}

/* migrated component stylesheet */
.company-page .ss-badge {
	display: flex;
	gap: 0.75rem;
	padding-block: var(--space-2);
	border-block: 1px solid var(--color-border-strong);
	margin-bottom: 1.5rem;
}

.company-page .ss-badge.newly-restricted {
	border-color: var(--color-danger);
}

.company-page .ss-badge .badge-icon {
	line-height: 1.5rem;
}

.company-page .ss-badge .badge-content {
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
}

.company-page .ss-badge .badge-title {
	font-weight: 700;
	color: var(--color-danger);
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
}

.company-page .ss-badge .new-label {
	background: var(--color-danger);
	color: var(--color-background);
	padding: 0.125rem 0.375rem;
	border-radius: var(--radius-control);
	font-weight: 700;
}

.company-page .ss-badge .badge-detail {
	color: var(--color-danger);
}

.company-page .ss-badge .badge-meta {
	color: var(--color-danger);
}

/* migrated component stylesheet */
.company-page .stock-price-chart {
	inline-size: fit-content;
	margin: 0 auto;
}

.company-page .stock-price-external-links {
	margin-block-start: var(--space-3);
}

.company-page .stock-price-external-links ul {
	display: flex;
	flex-wrap: wrap;
	gap: var(--space-2);
	justify-content: center;
	list-style: none;
	margin: 0;
	padding: 0;
}

.company-page .stock-price-external-links a {
	font-weight: 700;
}

.company-page .stock-price-external-links a:hover,
.company-page .stock-price-external-links a:focus-visible {
}

/* migrated component stylesheet */
.company-page .ranking-badge {
	display: flex;
	gap: 1rem;
	padding-block: var(--space-2);
	border-block: 1px solid var(--color-border-strong);
	color: inherit;
	align-items: center;
	margin-bottom: 1rem;
}

.company-page .ranking-badge:hover {
	background: var(--color-info-bg);
	border-color: var(--color-link);
}

.company-page .ranking-badge .badge-icon {
}

.company-page .ranking-badge .badge-content {
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
}

.company-page .ranking-badge .badge-title {
	font-weight: 700;
}

.company-page .ranking-badge .rankings {
	display: flex;
	gap: 1rem;
	flex-wrap: wrap;
}

.company-page .ranking-badge .rank {
	font-weight: 600;
}

.company-page .ranking-badge .badge-meta {
}

/* migrated component stylesheet */
.valuation-card {
	background: var(--color-surface);
	padding-block: var(--space-2);
	border-block: 1px solid var(--color-border);
	height: 100%;
}

.valuation-card .title {
	margin: 0 0 1rem 0;
	font-weight: 500;
}

.valuation-card .metrics-container {
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.valuation-card .metric-item {
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
}

.valuation-card .label {
}

.valuation-card .value {
	font-weight: 700;
}

.valuation-card .sub-label {
}

.valuation-card .text-green-600 {
	color: #16a34a;
}
.valuation-card .text-blue-600 {
	color: #2563eb;
}

/* migrated component stylesheet */
.valuation-metrics-ledger .title {
	margin: 0 0 var(--space-3) 0;
	font-weight: 700;
}

.valuation-metrics-ledger .value {
	font-weight: 700;
}

.valuation-metrics-ledger .value {
	overflow-wrap: anywhere;
}

.valuation-metrics-ledger .value.is-positive {
	color: var(--color-positive);
}

.valuation-metrics-ledger .value.is-info {
	color: var(--color-info);
}

.valuation-metrics-ledger .value.is-muted,
.valuation-metrics-ledger .metric-note {
	display: block;
	margin-block-start: var(--space-1);
	font-size: 0.9em;
	font-weight: 400;
	line-height: 1.6;
	text-align: start;
}

/* migrated component stylesheet */
.company-page .bs-group-card {
	padding-block: var(--space-2);
	border-block-end: 1px solid var(--color-border);
	background: var(--color-surface);
}

.company-page .bs-group-header {
	display: grid;
	gap: 0.3rem;
	margin-bottom: 0.7rem;
}

.company-page .bs-group-title {
	margin: 0;
	font-weight: 700;
}

.company-page .bs-group-summary {
	display: flex;
	align-items: baseline;
	flex-wrap: wrap;
	gap: 0.45rem 0.9rem;
}

.company-page .bs-group-total,
.company-page .bs-group-share {
	margin: 0;
	word-break: break-word;
}

.company-page .bs-group-total {
	line-height: 1.35;
	font-weight: 700;
}

.company-page .bs-group-track {
	display: flex;
	height: 0.9rem;
	margin-bottom: 0.75rem;
	border-radius: var(--radius-control);
	background: var(--color-gray-bg);
	overflow: hidden;
}

.company-page .bs-group-fill {
	display: block;
	height: 100%;
	flex: 0 0 auto;
}

.company-page .bs-group-items {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 0.5rem;
}

.company-page .bs-group-item {
	display: block;
	padding-top: 0.5rem;
	border-top: 1px solid var(--color-border);
}

.company-page .bs-group-item.is-focused .bs-group-item-label {
	font-weight: 700;
}

.company-page .bs-group-item:first-child {
	padding-top: 0;
	border-top: none;
}

.company-page .bs-group-item-main {
	display: inline-flex;
	align-items: flex-start;
	gap: 0.55rem;
	min-width: 0;
}

.company-page .bs-group-item-dot {
	width: 0.8rem;
	height: 0.8rem;
	border: 1px solid var(--color-border);
	border-radius: var(--radius-control);
	flex-shrink: 0;
	margin-top: 0.4em;
}

.company-page .bs-group-item-text {
	display: grid;
	gap: 0.15rem;
	min-width: 0;
}

.company-page .bs-group-item-label,
.company-page .bs-group-item-value {
	line-height: 1.6;
}

.company-page .bs-group-item-label {
	font-weight: 600;
}

.company-page .bs-group-item-value {
	word-break: break-word;
}

/* migrated component stylesheet */
.company-page .company-section-jump-links {
	margin: 0 0 1rem;
	max-inline-size: 100%;
}

.company-page .company-section-jump-list {
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	gap: var(--space-2);
	min-inline-size: 0;
}

.company-page .company-section-jump-link {
	font-weight: 600;
	line-height: 1.4;
	text-decoration: underline;
	text-underline-offset: 0.18em;
}

.company-page .company-section-jump-link:hover,
.company-page .company-section-jump-link:focus-visible {
}

/* migrated component stylesheet */
.company-page .company-status-chips {
	margin: 0;
}

.company-page .company-status-chips .company-status-chip-list {
	margin: 0;
}

.company-page .company-status-chips .company-status-chip {
	display: inline-flex;
	min-block-size: 2.25rem;
	align-items: center;
	gap: 0.3rem;
	padding-inline: 0.7rem;
	line-height: 1.25;
	text-decoration: none;
}

.company-page .company-status-chips .company-status-chip[href]:hover,
.company-page .company-status-chips .company-status-chip[href]:focus-visible {
	border-color: var(--color-link);
	background: var(--color-blue-bg);
}

.company-page .company-status-chips .company-status-chip-label {
	font-weight: 700;
}

.company-page .company-status-chips .company-status-chip-value {
	font-weight: 600;
}

.company-page .company-status-chips .company-status-chip.tone-buyback,
.company-page .company-status-chips .company-status-chip.tone-flag-buyback {
	border-color: var(--color-info);
	background: var(--color-info-bg);
	color: var(--color-info);
}

.company-page .company-status-chips .company-status-chip.tone-index {
	border-color: var(--color-purple);
	background: var(--color-purple-bg);
	color: var(--color-purple-dark);
}

.company-page .company-status-chips .company-status-chip.tone-flag-cash {
	border-color: var(--color-success);
	background: var(--color-success-bg);
	color: var(--color-success);
}

.company-page .company-status-chips .company-status-chip.tone-flag-return {
	border-color: var(--color-info);
	background: var(--color-cyan-bg);
	color: var(--color-info);
}

.company-page .company-status-chips .company-status-chip.tone-flag-quality {
	border-color: var(--color-warning);
	background: var(--color-warning-bg);
	color: var(--color-warning);
}

.company-page .company-status-chips .company-status-chip.tone-flag-neutral {
	background: var(--color-surface);
}

/* migrated component stylesheet */
.company-page .metric-stack {
	display: grid;
	gap: 0.3rem;
}

.company-page .metric-stack .metric-value {
	font-weight: 700;
}

.company-page .metric-stack .metric-badges {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem;
}

.company-page .metric-stack .metric-badge {
	display: inline-flex;
	align-items: center;
	padding: 0.12rem 0.45rem;
	border: 1px solid var(--color-border);
	border-radius: var(--radius-control);
	font-weight: 600;
}

.company-page .metric-stack .metric-reason {
	line-height: 1.5;
	color: var(--color-warning);
}

.company-page .metric-stack .is-positive {
	color: var(--color-success);
}

.company-page .metric-stack .is-negative {
	color: var(--color-danger);
}

.company-page .metric-stack .is-muted {
}

/* migrated component stylesheet */
.company-page .forecast-revision-history {
	margin-block-start: 0.9rem;
}

.company-page .forecast-revision-history .revision-count {
	margin: 0;
	font-weight: 700;
	line-height: 1.6;
}

.company-page .forecast-revision-history .revision-table-scroll {
	overflow-x: auto;
	overscroll-behavior-inline: contain;
}

.company-page .forecast-revision-history .revision-table {
	min-inline-size: 42rem;
	inline-size: 100%;
	border-collapse: collapse;
	table-layout: auto;
}

.company-page .forecast-revision-history .revision-table caption {
	margin-block: 0 0.45rem;
	text-align: left;
	font-weight: 700;
}

.company-page .forecast-revision-history .revision-table th,
.company-page .forecast-revision-history .revision-table td {
	padding: 0.35rem 0.3rem;
	border-block-end: 1px solid var(--color-border);
	text-align: right;
	vertical-align: top;
	white-space: nowrap;
}

.company-page .forecast-revision-history .revision-table th:first-child,
.company-page .forecast-revision-history .revision-table td:first-child,
.company-page .forecast-revision-history .revision-table th:nth-child(2),
.company-page .forecast-revision-history .revision-table td:nth-child(2) {
	text-align: center;
}

.company-page .forecast-revision-history .revision-table thead th {
	background: var(--color-surface-soft);
	font-weight: 700;
}

.company-page .forecast-revision-history .revision-table th:first-child {
	inline-size: 5.4em;
}

.company-page .forecast-revision-history .revision-table th:nth-child(2) {
	inline-size: 3.2em;
}

.company-page .forecast-revision-history .revision-value,
.company-page .forecast-revision-history .revision-delta {
	display: block;
}

.company-page .forecast-revision-history .revision-value {
	font-weight: 700;
}

.company-page .forecast-revision-history .revision-direction {
	display: inline-grid;
	min-inline-size: 1.7em;
	min-block-size: 1.7em;
	place-items: center;
	border: 1px solid currentColor;
	border-radius: var(--radius-control);
	font-weight: 700;
	line-height: 1;
}

.company-page .forecast-revision-history .revision-delta {
	font-size: 0.9em;
	line-height: 1.45;
}

.company-page .forecast-revision-history .is-positive {
	color: var(--color-success);
}

.company-page .forecast-revision-history .is-negative {
	color: var(--color-danger);
}

.company-page .forecast-revision-history .is-neutral {
}

.company-page .forecast-revision-history .is-muted {
}

/* migrated component stylesheet */
.company-page .issue-quality-table-scroll {
	overflow-x: auto;
	overscroll-behavior-inline: contain;
	contain: inline-size paint;
	max-inline-size: 100%;
	min-inline-size: 0;
}

.company-page .issue-quality-table-scroll table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.9em;
}

.company-page .issue-quality-table-scroll th,
.company-page .issue-quality-table-scroll td {
	padding: 0.55rem 0.45rem;
	border-block-end: 1px solid var(--color-border);
	text-align: start;
	vertical-align: top;
}

.company-page .issue-quality-table-scroll td {
	font-variant-numeric: tabular-nums;
}

.company-page .issue-quality-table-scroll a {
	color: inherit;
	text-decoration: underline;
	text-underline-offset: 0.18em;
}

.company-page .issue-quality-row-label,
.company-page .issue-quality-value {
	display: block;
}

.company-page .issue-quality-value {
	font-weight: 700;
	white-space: nowrap;
}

/* migrated component stylesheet */
.buybacks-page .progress {
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
}

.buybacks-page .progress__value {
	font-weight: 600;
}

.buybacks-page .progress__amount {
}

.buybacks-page .progress__bar {
	height: 6px;
	background: var(--color-border);
	border-radius: var(--radius-control);
	overflow: hidden;
}

.buybacks-page .progress__fill {
	height: 100%;
	background: var(--color-accent);
}

/* migrated component stylesheet */
.gap-down-recovery-page .gap-down-recovery-full-table {
	width: 100%;
}

/* migrated component stylesheet */
.ma-deviation-reversion-page .ma-reversion-full-table {
	width: 100%;
}

/* migrated component stylesheet */
.land-valuation-methodology {
	max-inline-size: var(--content-max, 72rem);
	margin-inline: auto;
}

.land-valuation-methodology .page-section p,
.land-valuation-methodology .page-section li {
	overflow-wrap: anywhere;
}

/* migrated component stylesheet */
.short-selling-restrictions-page .restriction-summary-panel {
	text-align: center;
}

/* migrated component stylesheet */
/* バーチャート（ページ固有レイアウト） */
.trading-volume-page .bar-chart {
	display: flex;
	align-items: flex-end;
	gap: 4px;
	inline-size: 100%;
	max-inline-size: 100%;
	min-inline-size: 0;
	height: 140px;
	padding-bottom: 1.5rem;
	position: relative;
}

.trading-volume-page .bar-col {
	display: flex;
	flex-direction: column;
	align-items: center;
	flex: 1;
	min-inline-size: 0;
	height: 100%;
}

.trading-volume-page .bar-wrap {
	flex: 1;
	display: flex;
	align-items: flex-end;
	inline-size: 100%;
	min-inline-size: 0;
}

.trading-volume-page .bar {
	inline-size: 100%;
	min-height: 2px;
	border-radius: 2px 2px 0 0;
	background: var(--color-accent);
	transition: opacity 0.1s;
}

.trading-volume-page .bar.up {
	background: var(--color-positive);
}

.trading-volume-page .bar.down {
	background: var(--color-negative);
}

.trading-volume-page .bar.latest {
	opacity: 0.7;
}

.trading-volume-page .bar-label {
	display: block;
	inline-size: 100%;
	max-inline-size: 100%;
	min-inline-size: 0;
	margin-top: 2px;
	font-size: 0.9em;
	line-height: 1.15;
	text-align: center;
	overflow-wrap: anywhere;
}
