/* web/public/pages/smartmoney.tmpl */
#smartMoneyApp {
	--layout-period-dock-mobile-inset: 0.55rem;
	--layout-period-dock-mobile-bottom: 0.7rem;
	--layout-period-dock-mobile-max: calc(100vw - 1.1rem);
	--layout-period-grid-gap: 0.34rem;
	--tone-market-period-panel-bg: var(--app-surface-base);
	--tone-market-period-panel-border: var(--app-border-base);
	--tone-market-period-panel-shadow: 0 12px 28px rgba(15, 23, 42, 0.08);
	--smartmoney-text-strong: var(--tone-market-text);
	--smartmoney-text-body: var(--tone-market-body);
	--smartmoney-text-soft: var(--tone-market-soft);
	--smartmoney-text-faint: rgba(234, 226, 210, 0.72);
	--smartmoney-up-text: #d14343;
	--smartmoney-up-strong: #b73535;
	--smartmoney-up-border: rgba(255, 150, 126, 0.34);
	--smartmoney-up-bg: rgba(214, 85, 67, 0.18);
	--smartmoney-down-text: #2f67d4;
	--smartmoney-down-strong: #2452ad;
	--smartmoney-down-border: rgba(124, 185, 255, 0.34);
	--smartmoney-down-bg: rgba(70, 125, 228, 0.18);
	--smartmoney-card-border: var(--tone-market-card-border);
	--smartmoney-card-bg: var(--tone-market-card-bg);
	--smartmoney-panel-bg: var(--tone-market-panel-bg);
}

#smartMoneyApp .smartmoney-shell {
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0 0 1.5rem;
}

#smartMoneyApp .smartmoney-hero-shell {
	padding-left: 1rem;
	padding-right: 1rem;
}

@media (max-width: 767px) {
	#smartMoneyApp .smartmoney-shell {
		padding-left: 0;
		padding-right: 0;
		padding-bottom: 1rem;
	}

	#smartMoneyApp .smartmoney-hero-shell,
	#smartMoneyApp #smartRotation,
	#smartMoneyApp #smartEtfDetail,
	#smartMoneyApp #smartEtfList,
	#smartMoneyApp #smartAnalyst,
	#smartMoneyApp #smartInstitutional,
	#smartMoneyApp #smartInsider {
		padding-left: 0;
		padding-right: 0;
	}
}

#smartMoneyApp .smartmoney-hero {
}

#smartMoneyApp .smartmoney-hero::before {
	content: "";
	position: absolute;
	inset: 0;
	background:
		radial-gradient(
			circle at top right,
			rgba(255, 248, 236, 0.12),
			transparent 34%
		),
		linear-gradient(135deg, rgba(17, 40, 61, 0.24), transparent 58%);
	pointer-events: none;
}

#smartMoneyApp .smartmoney-hero::after {
	content: "";
	position: absolute;
	inset: 0;
	background:
		linear-gradient(90deg, rgba(26, 39, 29, 0.24), transparent 42%),
		linear-gradient(180deg, rgba(255, 248, 236, 0.02), rgba(0, 0, 0, 0.08));
	pointer-events: none;
}

#smartMoneyApp .smartmoney-hero-shell,
#smartMoneyApp .smartmoney-section-shell {
	position: relative;
	z-index: 1;
}

#smartMoneyApp .glass-chip {
	background: rgba(251, 246, 235, 0.94);
	border-color: rgba(255, 248, 236, 0.24);
	color: #4a5b47;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.32),
		0 6px 14px rgba(12, 22, 14, 0.08);
}

#smartMoneyApp .bg-white.text-text-2,
#smartMoneyApp .bg-white.text-text-3,
#smartMoneyApp .inline-flex.bg-white.text-text-2,
#smartMoneyApp .inline-flex.bg-white.text-text-3 {
	background: rgba(251, 246, 235, 0.96);
	border-color: rgba(92, 109, 85, 0.18);
	color: #596b56;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.3),
		0 4px 10px rgba(10, 20, 12, 0.06);
}

#smartMoneyApp .section-kicker {
	letter-spacing: 0.14em;
}

#smartMoneyApp .text-up {
	color: var(--smartmoney-up-text);
	text-shadow:
		0 1px 0 rgba(24, 10, 10, 0.22),
		0 0 14px rgba(255, 150, 126, 0.1);
}

#smartMoneyApp .border-up\/20 {
	border-color: var(--smartmoney-up-border);
}

#smartMoneyApp .bg-up\/8 {
	background: var(--smartmoney-up-bg);
}

#smartMoneyApp .text-down {
	color: var(--smartmoney-down-text);
	text-shadow:
		0 1px 0 rgba(8, 16, 26, 0.24),
		0 0 14px rgba(86, 155, 255, 0.1);
}

#smartMoneyApp .border-down\/20 {
	border-color: var(--smartmoney-down-border);
}

#smartMoneyApp .bg-down\/8 {
	background: var(--smartmoney-down-bg);
}

#smartMoneyApp .smartmoney-page-title {
	font-family: "Manrope", "Noto Sans KR", sans-serif;
	font-size: clamp(1.42rem, 1.46vw, 1.9rem);
	line-height: 1.04;
	font-weight: 800;
	letter-spacing: -0.04em;
	color: var(--smartmoney-text-strong);
	text-shadow: 0 2px 12px rgba(8, 15, 10, 0.14);
}

#smartMoneyApp .smartmoney-page-lead {
	max-width: 64rem;
	font-family: "Manrope", "Noto Sans KR", sans-serif;
	font-size: clamp(2.18rem, 3.15vw, 3.5rem);
	line-height: 1.08;
	letter-spacing: -0.04em;
	font-weight: 800;
	color: var(--smartmoney-text-strong);
}

#smartMoneyApp .smartmoney-page-note {
	font-size: 0.86rem;
	line-height: 1.8;
	color: var(--smartmoney-text-soft);
}

#smartMoneyApp .smartmoney-summary-chip {
	display: inline-flex;
	align-items: center;
	border-radius: 999px;
	padding: 0.52rem 0.9rem;
	font-size: 0.88rem;
	line-height: 1.12;
	letter-spacing: -0.03em;
	font-weight: 800;
}

#smartMoneyApp .smartmoney-summary-chip--rotation {
	padding: 0.62rem 1rem;
	font-size: 0.96rem;
	line-height: 1.08;
	font-weight: 900;
}

#smartMoneyApp .smartmoney-hero-layout {
	gap: 1.25rem;
	grid-template-columns: minmax(0, 1fr);
	align-items: start;
}

#smartMoneyApp .smartmoney-hero-main {
	min-width: 0;
}

#smartMoneyApp .smartmoney-hero-copy {
	max-width: 66rem;
}

#smartMoneyApp .smartmoney-hero-rail {
	gap: 1rem;
	align-content: start;
}

#smartMoneyApp .smartmoney-hero-link {
	--layout-split-gap: 0.8rem;
	width: 100%;
	--sh-radius: 18px;
	--sh-border-color: rgba(248, 242, 229, 0.12);
	padding: 0.88rem 0.95rem;
	text-align: left;
	transition:
		transform 0.18s ease,
		border-color 0.18s ease,
		background-color 0.18s ease;
}

#smartMoneyApp .smartmoney-hero-link:hover {
	transform: translateY(-1px);
	border-color: rgba(248, 242, 229, 0.2);
	background:
		linear-gradient(
			180deg,
			rgba(255, 248, 236, 0.13),
			rgba(255, 248, 236, 0.06)
		),
		rgba(26, 39, 26, 0.26);
}

#smartMoneyApp .smartmoney-hero-link-label {
	font-size: 0.88rem;
	font-weight: 700;
	color: var(--smartmoney-text-strong);
}

#smartMoneyApp .smartmoney-hero-link-meta {
	flex-shrink: 0;
	font-size: 0.76rem;
	font-weight: 700;
	color: var(--smartmoney-text-soft);
}

#smartMoneyApp .smartmoney-mobile-single-grid > article,
#smartMoneyApp .smartmoney-mobile-single-grid,
#smartMoneyApp #smartRotation .smartmoney-section-shell {
	overflow: visible;
}

#smartMoneyApp .smartmoney-compact-flow-head {
	display: flex;
	align-items: center;
	gap: 0.4rem;
	min-width: 0;
}

#smartMoneyApp .smartmoney-bucket-title-line {
	display: flex;
	align-items: center;
	gap: 0.4rem;
	min-width: 0;
}

#smartMoneyApp .smartmoney-taxonomy-strip {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.42rem;
	min-width: 0;
}

#smartMoneyApp .smartmoney-taxonomy-strip--wide {
	max-width: 42rem;
}

#smartMoneyApp .smartmoney-taxonomy-chip {
	display: inline-grid;
	grid-template-columns: auto minmax(0, 1fr);
	align-items: center;
	max-width: 100%;
	overflow: hidden;
	border: 1px solid rgba(33, 33, 33, 0.08);
	border-radius: 999px;
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(246, 247, 249, 0.98));
	box-shadow: 0 8px 18px rgba(15, 23, 42, 0.06);
	font-size: 0.68rem;
	line-height: 1.15;
}

#smartMoneyApp .smartmoney-taxonomy-key {
	border-right: 1px solid rgba(33, 33, 33, 0.08);
	padding: 0.34rem 0.48rem;
	color: var(--smartmoney-text-soft);
	font-weight: 800;
	letter-spacing: 0;
	white-space: nowrap;
}

#smartMoneyApp .smartmoney-taxonomy-value {
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	padding: 0.34rem 0.55rem;
	color: var(--smartmoney-text-strong);
	font-weight: 800;
	white-space: nowrap;
}

#smartMoneyApp .smartmoney-symbol-toggle {
	border-top: 1px solid var(--app-border-base);
	padding-top: 0.68rem;
}

#smartMoneyApp .smartmoney-symbol-toggle > summary {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 1.8rem;
	border-radius: 999px;
	border: 1px solid var(--app-border-base);
	background: var(--app-surface-muted);
	padding: 0.38rem 0.68rem;
	color: var(--app-text-base);
	font-size: 0.72rem;
	font-weight: 800;
	line-height: 1;
	list-style: none;
	cursor: pointer;
}

#smartMoneyApp .smartmoney-symbol-toggle > summary::-webkit-details-marker {
	display: none;
}

#smartMoneyApp .smartmoney-symbol-toggle[open] > summary {
	border-color: #212121;
	background: #212121;
	color: #ffffff;
	-webkit-text-fill-color: #ffffff;
}

#smartMoneyApp .smartmoney-symbol-panel {
	margin-top: 0.62rem;
	border-top: 1px solid var(--app-border-base);
	padding-top: 0.62rem;
}

#smartMoneyApp .smartmoney-symbol-headline {
	color: var(--app-text-base);
	font-size: 0.74rem;
	font-weight: 800;
	line-height: 1.35;
}

#smartMoneyApp .smartmoney-bucket-grid,
#smartMoneyApp .smartmoney-category-grid {
	display: grid;
	gap: 0.75rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

#smartMoneyApp .smartmoney-compact-flow-card,
#smartMoneyApp .smartmoney-category-card {
	min-width: 0;
}

#smartMoneyApp .smartmoney-freshness-item {
	padding-top: 0.1rem;
}

#smartMoneyApp .smartmoney-freshness-item + .smartmoney-freshness-item {
	border-top: 1px solid rgba(248, 242, 229, 0.1);
	padding-top: 0.85rem;
}

#smartMoneyApp .smartmoney-freshness-head {
	--layout-split-gap: 0.65rem;
	gap: 0.65rem;
}

#smartMoneyApp .smartmoney-freshness-time {
	text-align: left;
}

#smartMoneyApp .smartmoney-surface-card {
	background:
		linear-gradient(
			180deg,
			rgba(255, 248, 236, 0.12),
			rgba(255, 248, 236, 0.055)
		),
		rgba(28, 40, 28, 0.22);
}

#smartMoneyApp .smartmoney-brief-card {
	border-radius: 24px;
	border: 1px solid var(--border);
	padding: 1.05rem 1.05rem 1rem;
	background:
		linear-gradient(
			180deg,
			rgba(255, 248, 236, 0.07),
			rgba(255, 248, 236, 0.035)
		),
		rgba(255, 248, 236, 0.02);
}

#smartMoneyApp .smartmoney-brief-card-title {
	font-family: "Manrope", "Noto Sans KR", sans-serif;
	font-size: 1.12rem;
	font-weight: 800;
	letter-spacing: -0.03em;
	color: var(--smartmoney-text-strong);
}

#smartMoneyApp .smartmoney-brief-card-copy {
	margin-top: 0.45rem;
	font-size: 0.85rem;
	line-height: 1.78;
	color: var(--smartmoney-text-soft);
}

#smartMoneyApp .smartmoney-meter {
	height: 0.42rem;
	border-radius: 9999px;
	background: rgba(148, 163, 184, 0.14);
	overflow: hidden;
}

#smartMoneyApp .smartmoney-meter-fill {
	display: block;
	height: 100%;
	border-radius: inherit;
}

#smartMoneyApp .smartmoney-meter-fill-up {
	background: linear-gradient(
		90deg,
		rgba(232, 108, 86, 0.86),
		rgba(255, 182, 165, 0.98)
	);
}

#smartMoneyApp .smartmoney-meter-fill-down {
	background: linear-gradient(
		90deg,
		rgba(72, 136, 245, 0.84),
		rgba(156, 206, 255, 0.98)
	);
}

#smartMoneyApp .smartmoney-chip-scroll {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

#smartMoneyApp .smartmoney-etf-card-list {
	max-height: 15.5rem;
	overflow-y: auto;
	padding-right: 0.25rem;
	scrollbar-gutter: stable;
	overscroll-behavior: contain;
}

#smartMoneyApp .smartmoney-etf-card-list::-webkit-scrollbar {
	width: 0.45rem;
}

#smartMoneyApp .smartmoney-etf-card-list::-webkit-scrollbar-track {
	border-radius: 999px;
	background: rgba(15, 23, 42, 0.05);
}

#smartMoneyApp .smartmoney-etf-card-list::-webkit-scrollbar-thumb {
	border-radius: 999px;
	background: rgba(15, 23, 42, 0.2);
}

#smartMoneyApp .smartmoney-table-wrap {
	overflow-x: auto;
	border-radius: 22px;
	border: 1px solid rgba(248, 242, 229, 0.13);
	background:
		linear-gradient(
			180deg,
			rgba(255, 248, 236, 0.06),
			rgba(255, 248, 236, 0.03)
		),
		rgba(26, 38, 26, 0.24);
}

#smartMoneyApp .smartmoney-table {
	width: 100%;
	min-width: 820px;
	border-collapse: collapse;
}

#smartMoneyApp .smartmoney-table thead th {
	padding: 0.8rem 1rem;
	border-bottom: 1px solid rgba(248, 242, 229, 0.12);
	font-size: 0.74rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	text-align: left;
	color: var(--smartmoney-text-soft);
	background: rgba(255, 248, 236, 0.08);
}

#smartMoneyApp .smartmoney-table tbody td {
	padding: 0.92rem 1rem;
	border-bottom: 1px solid rgba(248, 242, 229, 0.08);
	font-size: 0.84rem;
	vertical-align: top;
	color: var(--smartmoney-text-body);
}

#smartMoneyApp .smartmoney-table tbody tr:last-child td {
	border-bottom: 0;
}

#smartMoneyApp .smartmoney-table tbody tr:hover {
	background: rgba(255, 248, 236, 0.06);
}

#smartMoneyApp .smartmoney-mini-list {
	display: grid;
	gap: 0.7rem;
}

#smartMoneyApp .smartmoney-mini-item {
	border-radius: 18px;
	border: 1px solid rgba(248, 242, 229, 0.12);
	padding: 0.82rem 0.9rem;
	background:
		linear-gradient(
			180deg,
			rgba(255, 248, 236, 0.08),
			rgba(255, 248, 236, 0.04)
		),
		rgba(25, 36, 24, 0.22);
}

#smartMoneyApp .smartmoney-analyst-grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

#smartMoneyApp .smartmoney-analyst-grid .smartmoney-mini-item {
	min-width: 0;
	height: 100%;
}

#smartMoneyApp .smartmoney-analyst-grid .smartmoney-mini-item > .flex.items-start {
	height: 100%;
	align-items: flex-start;
}

#smartMoneyApp .smartmoney-analyst-card-content {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 0.7rem;
	align-items: start;
	height: 100%;
}

#smartMoneyApp .smartmoney-analyst-card-main {
	display: flex;
	min-width: 0;
	gap: 0.7rem;
	align-items: flex-start;
}

#smartMoneyApp .smartmoney-analyst-card-copy {
	min-width: 0;
}

#smartMoneyApp .smartmoney-analyst-card-title {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
	align-items: center;
	min-width: 0;
}

#smartMoneyApp .smartmoney-analyst-symbol {
	margin: 0;
	font-size: 0.88rem;
	font-weight: 800;
	line-height: 1.1;
	color: var(--app-text-base);
	white-space: nowrap;
}

#smartMoneyApp .smartmoney-analyst-consensus {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 9999px;
	padding: 0.18rem 0.48rem;
	font-size: 0.68rem;
	font-weight: 700;
	line-height: 1;
	white-space: nowrap;
	word-break: keep-all;
}

#smartMoneyApp .smartmoney-analyst-meta {
	margin-top: 0.32rem;
	font-size: 0.74rem;
	line-height: 1.3;
	color: var(--app-text-muted);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	word-break: keep-all;
}

#smartMoneyApp .smartmoney-analyst-score {
	margin: 0;
	font-size: 0.95rem;
	font-weight: 800;
	line-height: 1.1;
	color: var(--smartmoney-up-text);
	white-space: nowrap;
	text-align: right;
}

#smartMoneyApp .smartmoney-rank {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.7rem;
	height: 1.7rem;
	border-radius: 9999px;
	font-size: 0.72rem;
	font-weight: 800;
	background: rgba(255, 248, 236, 0.14);
	color: #4f614d;
}

#smartMoneyApp .smartmoney-mini-progress {
	display: inline-flex;
	flex-direction: column;
	gap: 0.12rem;
	width: 1.05rem;
	min-height: 0.24rem;
	margin-top: 0.48rem;
}

#smartMoneyApp .smartmoney-mini-progress > i {
	display: block;
	width: 100%;
	height: 0.18rem;
	border-radius: 999px;
	background: #212121;
}

#smartMoneyApp .smartmoney-inline-meta {
	font-size: 0.82rem;
	line-height: 1.7;
	color: var(--smartmoney-text-soft);
}

#smartMoneyApp .smartmoney-muted-box {
	border-radius: 20px;
	border: 1px dashed rgba(248, 242, 229, 0.16);
	padding: 1rem 1.05rem;
	font-size: 0.84rem;
	line-height: 1.75;
	color: var(--smartmoney-text-soft);
	background:
		linear-gradient(
			180deg,
			rgba(255, 248, 236, 0.06),
			rgba(255, 248, 236, 0.03)
		),
		rgba(24, 34, 23, 0.18);
}

#smartMoneyApp .smartmoney-break {
	overflow-wrap: anywhere;
	word-break: break-word;
}

#smartMoneyApp .smartmoney-mobile-list {
	display: grid;
	gap: 0.85rem;
}

#smartMoneyApp .smartmoney-etf-grid {
	display: grid;
	gap: 0.9rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	align-items: stretch;
}

#smartMoneyApp .smartmoney-etf-card {
	display: grid;
	gap: 0.72rem;
	min-width: 0;
	border-radius: 22px;
	border: 1px solid var(--app-border-base);
	padding: 1rem;
	background: var(--app-surface-base);
	box-shadow: 0 10px 24px rgba(33, 33, 33, 0.04);
}

#smartMoneyApp .smartmoney-etf-card-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 0.75rem;
}

#smartMoneyApp .smartmoney-etf-name {
	font-size: 0.82rem;
	line-height: 1.62;
	color: var(--app-text-base);
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
	text-overflow: ellipsis;
}

#smartMoneyApp .smartmoney-etf-stat-grid {
	display: grid;
	gap: 0.48rem;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

#smartMoneyApp .smartmoney-etf-meta {
	padding-top: 0.78rem;
	border-top: 1px solid var(--app-border-base);
	font-size: 0.78rem;
	line-height: 1.58;
	color: var(--app-text-base);
}

#smartMoneyApp .smartmoney-etf-meta-primary {
	font-size: 0.84rem;
	line-height: 1.38;
	color: var(--app-text-base);
}

#smartMoneyApp .smartmoney-etf-meta-secondary {
	color: var(--app-text-subtle);
}

#smartMoneyApp .smartmoney-institutional-grid {
	display: none;
	gap: 1rem;
	grid-template-columns: minmax(0, 1fr);
}

#smartMoneyApp .smartmoney-institutional-summary {
	padding: 0;
	overflow: hidden;
}

#smartMoneyApp .smartmoney-institutional-summary-grid {
	display: grid;
	gap: 0;
	grid-template-columns: minmax(0, 1fr);
}

#smartMoneyApp .smartmoney-institutional-summary-item {
	min-width: 0;
	padding: 1rem 1.1rem;
}

#smartMoneyApp
	.smartmoney-institutional-summary-item
	+ .smartmoney-institutional-summary-item {
	border-top: 1px solid var(--app-border-base);
}

#smartMoneyApp .smartmoney-institutional-list {
	display: grid;
	gap: 0;
}

#smartMoneyApp .smartmoney-institutional-list--scroll {
	max-height: 31rem;
	overflow-y: auto;
	padding-right: 0.25rem;
	scrollbar-gutter: stable;
	overscroll-behavior: contain;
}

#smartMoneyApp .smartmoney-institutional-list--scroll::-webkit-scrollbar {
	width: 0.45rem;
}

#smartMoneyApp .smartmoney-institutional-list--scroll::-webkit-scrollbar-track {
	border-radius: 999px;
	background: rgba(15, 23, 42, 0.05);
}

#smartMoneyApp .smartmoney-institutional-list--scroll::-webkit-scrollbar-thumb {
	border-radius: 999px;
	background: rgba(15, 23, 42, 0.2);
}

#smartMoneyApp .smartmoney-institutional-row {
	display: grid;
	gap: 0.38rem;
	padding: 0.9rem 0;
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
}

#smartMoneyApp .smartmoney-institutional-row + .smartmoney-institutional-row {
	border-top: 1px solid var(--app-border-base);
}

#smartMoneyApp .smartmoney-institutional-row-button {
	width: 100%;
	text-align: left;
	padding-left: 0.75rem;
	padding-right: 0.75rem;
	border-radius: 16px;
	background: transparent;
	transition:
		background-color 0.18s ease,
		border-color 0.18s ease;
}

#smartMoneyApp .smartmoney-institutional-row-button:hover {
	background: rgba(0, 0, 0, 0.03);
}

#smartMoneyApp .smartmoney-institutional-row-button.is-active {
	background: rgba(0, 0, 0, 0.04);
	border: 1px solid var(--app-border-base);
}

#smartMoneyApp .smartmoney-investor-rail {
	display: flex;
	gap: 0.8rem;
	overflow-x: auto;
	padding-bottom: 0.18rem;
	scrollbar-width: none;
}

#smartMoneyApp .smartmoney-investor-rail::-webkit-scrollbar {
	display: none;
}

#smartMoneyApp .smartmoney-investor-chip {
	flex: 0 0 auto;
	min-width: 16rem;
	max-width: 20rem;
	border-radius: 18px;
	border: 1px solid var(--app-border-base);
	background: var(--app-surface-base);
	padding: 0.95rem 1rem;
	text-align: left;
	transition:
		border-color 0.18s ease,
		background-color 0.18s ease,
		color 0.18s ease;
}

#smartMoneyApp .smartmoney-investor-chip:hover {
	background: rgba(0, 0, 0, 0.02);
	border-color: rgba(33, 33, 33, 0.22);
}

#smartMoneyApp .smartmoney-investor-chip.is-active {
	background: #212121;
	border-color: #212121;
	box-shadow: none;
}

#smartMoneyApp .smartmoney-investor-chip-name {
	font-size: 0.98rem;
	line-height: 1.3;
	font-weight: 800;
	color: var(--app-text-base);
}

#smartMoneyApp .smartmoney-investor-chip-meta {
	margin-top: 0.18rem;
	font-size: 0.74rem;
	line-height: 1.3;
	color: var(--app-text-subtle);
}

#smartMoneyApp .smartmoney-investor-chip-aum {
	font-size: 0.9rem;
	line-height: 1.2;
	font-weight: 800;
	color: var(--app-text-base);
	white-space: nowrap;
}

#smartMoneyApp
	.smartmoney-investor-chip.is-active
	.smartmoney-investor-chip-name,
#smartMoneyApp
	.smartmoney-investor-chip.is-active
	.smartmoney-investor-chip-meta,
#smartMoneyApp
	.smartmoney-investor-chip.is-active
	.smartmoney-investor-chip-aum {
	color: #ffffff;
}

#smartMoneyApp .smartmoney-mobile-toggle-group {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

#smartMoneyApp .smartmoney-mobile-toggle-chip {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 999px;
	border: 1px solid var(--app-border-base);
	background: var(--app-surface-muted);
	padding: 0.62rem 0.92rem;
	font-size: 0.82rem;
	font-weight: 700;
	line-height: 1;
	color: var(--app-text-base);
	white-space: nowrap;
	transition:
		background-color 0.18s ease,
		color 0.18s ease,
		border-color 0.18s ease;
}

#smartMoneyApp .smartmoney-mobile-toggle-chip.is-active {
	background: #212121;
	border-color: #212121;
	color: #ffffff;
	-webkit-text-fill-color: #ffffff;
	box-shadow: none;
}

#smartMoneyApp .smartmoney-insider-summary-strip {
	padding: 0;
	overflow: hidden;
}

#smartMoneyApp .smartmoney-insider-summary-strip-grid {
	display: grid;
	gap: 0;
	grid-template-columns: minmax(0, 1fr);
}

#smartMoneyApp .smartmoney-insider-summary-strip-item {
	min-width: 0;
	padding: 1rem 1.1rem;
}

#smartMoneyApp
	.smartmoney-insider-summary-strip-item
	+ .smartmoney-insider-summary-strip-item {
	border-top: 1px solid var(--app-border-base);
}

#smartMoneyApp .smartmoney-insider-data-grid {
	display: grid;
	gap: 0;
	grid-template-columns: minmax(0, 1fr);
	position: relative;
}

#smartMoneyApp .smartmoney-insider-data-col {
	min-width: 0;
	padding: 1rem 0;
}

#smartMoneyApp .smartmoney-insider-data-col + .smartmoney-insider-data-col {
	border-top: 1px solid var(--app-border-base);
}

#smartMoneyApp .smartmoney-insider-stock-list {
	display: grid;
	gap: 0;
}

#smartMoneyApp .smartmoney-insider-stock-row {
	display: grid;
	gap: 0.4rem;
	padding: 0.92rem 0;
}

#smartMoneyApp .smartmoney-insider-stock-row + .smartmoney-insider-stock-row {
	border-top: 1px solid var(--app-border-base);
}

#smartMoneyApp .smartmoney-insider-feed-grid {
	display: grid;
	gap: 0.9rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	align-items: stretch;
}

#smartMoneyApp .smartmoney-insider-feed-card {
	display: grid;
	gap: 0.72rem;
	min-width: 0;
	border-radius: 20px;
	border: 1px solid var(--app-border-base);
	padding: 1rem;
	background: var(--app-surface-base);
	box-shadow: none;
}

#smartMoneyApp .smartmoney-insider-feed-head {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: start;
	column-gap: 0.65rem;
	row-gap: 0.3rem;
}

#smartMoneyApp .smartmoney-insider-feed-meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.45rem;
	min-width: 0;
}

#smartMoneyApp .smartmoney-insider-feed-symbol {
	padding: 0.4rem 0.72rem;
	font-size: 0.78rem;
	line-height: 1;
	font-weight: 700;
	white-space: nowrap;
}

#smartMoneyApp .smartmoney-insider-feed-action {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 999px;
	padding: 0.38rem 0.66rem;
	font-size: 0.72rem;
	line-height: 1;
	font-weight: 700;
	white-space: nowrap;
}

#smartMoneyApp .smartmoney-insider-feed-date {
	font-size: 0.72rem;
	line-height: 1.1;
	font-weight: 700;
	color: var(--smartmoney-text-soft);
	text-align: right;
	white-space: nowrap;
}

#smartMoneyApp .smartmoney-insider-feed-divider {
	border-top: 1px solid var(--app-border-base);
}

#smartMoneyApp .smartmoney-insider-feed-facts {
	display: grid;
	gap: 0.28rem;
}

#smartMoneyApp .smartmoney-mobile-card {
	border-radius: 20px;
	border: 1px solid rgba(248, 242, 229, 0.12);
	padding: 1rem;
	background:
		linear-gradient(
			180deg,
			rgba(255, 248, 236, 0.08),
			rgba(255, 248, 236, 0.04)
		),
		rgba(24, 34, 23, 0.22);
}

#smartMoneyApp .smartmoney-mobile-grid {
	display: grid;
	gap: 0.65rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

#smartMoneyApp .smartmoney-mobile-flow-grid {
	display: grid;
	gap: 0.5rem;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

#smartMoneyApp .smartmoney-data-pair {
	border-radius: 16px;
	border: 1px solid rgba(248, 242, 229, 0.1);
	padding: 0.75rem 0.85rem;
	background: rgba(255, 248, 236, 0.04);
	min-width: 0;
}

#smartMoneyApp .smartmoney-data-label {
	font-size: 0.68rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--smartmoney-text-faint);
}

#smartMoneyApp .smartmoney-data-value {
	display: block;
	margin-top: 0.38rem;
	font-size: 0.92rem;
	line-height: 1.45;
	font-weight: 700;
	color: var(--smartmoney-text-strong);
}

#smartMoneyApp .smartmoney-data-pair--compact {
	padding: 0.68rem 0.58rem;
	border-radius: 14px;
}

#smartMoneyApp .smartmoney-data-label--compact {
	font-size: 0.62rem;
	letter-spacing: 0.02em;
	text-transform: none;
}

#smartMoneyApp .smartmoney-data-value--compact {
	margin-top: 0.28rem;
	font-size: 0.72rem;
	line-height: 1.25;
	overflow-wrap: anywhere;
}

#smartMoneyApp .section-cta,
#smartMoneyApp .section-cta:hover {
	background: var(--app-text-base);
	border-color: var(--app-text-base);
	color: #ffffff;
	box-shadow: none;
}

#smartMoneyApp .section-cta span {
	color: #ffffff;
}

@media (min-width: 768px) {
	#smartMoneyApp .smartmoney-institutional-grid {
		display: grid;
	}
}

@media (min-width: 1024px) {
	#smartMoneyApp .smartmoney-etf-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	#smartMoneyApp .smartmoney-insider-feed-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	#smartMoneyApp .smartmoney-institutional-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	#smartMoneyApp .smartmoney-institutional-summary-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	#smartMoneyApp
		.smartmoney-institutional-summary-item
		+ .smartmoney-institutional-summary-item {
		border-top: 0;
		border-left: 1px solid var(--app-border-base);
	}

	#smartMoneyApp .smartmoney-insider-summary-strip-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	#smartMoneyApp
		.smartmoney-insider-summary-strip-item
		+ .smartmoney-insider-summary-strip-item {
		border-top: 0;
		border-left: 1px solid var(--app-border-base);
	}

	#smartMoneyApp .smartmoney-insider-data-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 2.5rem;
	}

	#smartMoneyApp .smartmoney-insider-data-grid::before {
		content: "";
		position: absolute;
		top: 0;
		bottom: 0;
		left: 50%;
		width: 1px;
		background: var(--app-border-base);
		transform: translateX(-0.5px);
		pointer-events: none;
	}

	#smartMoneyApp .smartmoney-insider-data-col {
		padding: 1rem 0.35rem;
	}

	#smartMoneyApp .smartmoney-insider-data-col + .smartmoney-insider-data-col {
		border-top: 0;
		border-left: 0;
	}
}

@media (min-width: 1600px) {
	#smartMoneyApp .smartmoney-etf-grid {
		grid-template-columns: repeat(5, minmax(0, 1fr));
	}

	#smartMoneyApp .smartmoney-insider-feed-grid {
		grid-template-columns: repeat(5, minmax(0, 1fr));
	}

	#smartMoneyApp .smartmoney-institutional-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	#smartMoneyApp .smartmoney-institutional-summary-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

#smartMoneyApp .period-dock-title {
	font-size: 0.72rem;
	font-weight: 800;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--smartmoney-text-soft);
	white-space: nowrap;
}

#smartMoneyApp .period-note {
	font-size: 0.78rem;
	line-height: 1.65;
	color: var(--smartmoney-text-soft);
}

@media (min-width: 900px) {
	#smartMoneyApp .smartmoney-freshness-head {
		grid-template-columns: minmax(0, 1fr) auto;
		align-items: start;
	}

	#smartMoneyApp .smartmoney-freshness-time {
		text-align: right;
	}
}

@media (min-width: 768px) {
	#smartMoneyApp
		.period-dock--desktop
		.period-dock-panel {
		max-width: min(calc(100vw - 2rem), 35rem);
	}
}

@media (min-width: 1440px) {
	#smartMoneyApp .smartmoney-hero-layout {
		grid-template-columns: minmax(0, 1.7fr) minmax(21rem, 0.95fr);
	}

}

@media (max-width: 767.98px) {
	#smartMoneyApp,
	#smartMoneyMain {
		overflow-x: hidden;
	}

	#smartMoneyApp .smartmoney-shell {
		padding-left: 0.45rem;
		padding-right: 0.45rem;
		padding-bottom: 6.5rem;
	}

	#smartMoneyApp .story-card {
		border-radius: 20px;
	}

	#smartMoneyApp .smartmoney-page-title {
		font-size: 1.18rem;
		line-height: 1.12;
	}

	#smartMoneyApp .smartmoney-page-lead {
		font-size: 1.92rem;
		line-height: 1.02;
		letter-spacing: -0.04em;
	}

	#smartMoneyApp .smartmoney-page-note,
	#smartMoneyApp .smartmoney-inline-meta,
	#smartMoneyApp .smartmoney-brief-card-copy {
		font-size: 0.78rem;
		line-height: 1.68;
	}

	#smartMoneyApp .smartmoney-brief-card-title {
		font-size: 1rem;
	}

	#smartMoneyApp .glass-chip {
		max-width: 100%;
		padding: 0.34rem 0.62rem;
		font-size: 10px;
	}

	#smartMoneyApp .smartmoney-chip-scroll {
		gap: 0.4rem;
	}

	#smartMoneyApp .smartmoney-summary-chip {
		padding: 0.48rem 0.82rem;
		font-size: 0.8rem;
	}

	#smartMoneyApp .smartmoney-summary-chip--rotation {
		padding: 0.54rem 0.88rem;
		font-size: 0.85rem;
	}

	#smartMoneyApp .smartmoney-mobile-toggle-group {
		flex-wrap: nowrap;
		overflow-x: auto;
		padding-bottom: 0.1rem;
		scrollbar-width: none;
	}

	#smartMoneyApp .smartmoney-mobile-toggle-group::-webkit-scrollbar {
		display: none;
	}

	#smartMoneyApp .smartmoney-mobile-toggle-chip {
		flex: 0 0 auto;
		padding: 0.58rem 0.84rem;
		font-size: 0.78rem;
	}

	#smartMoneyApp .smartmoney-brief-grid,
	#smartMoneyApp .smartmoney-mobile-grid {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 0.72rem;
	}

	#smartMoneyApp .smartmoney-section-grid,
	#smartMoneyApp .smartmoney-mini-list,
	#smartMoneyApp .smartmoney-mobile-list {
		grid-template-columns: minmax(0, 1fr);
	}

	#smartMoneyApp .smartmoney-hero-quick-grid,
	#smartMoneyApp .smartmoney-mobile-single-grid,
	#smartMoneyApp .smartmoney-bucket-grid,
	#smartMoneyApp .smartmoney-category-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 0.62rem;
	}

	#smartMoneyApp .smartmoney-mobile-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	#smartMoneyApp .smartmoney-mobile-flow-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 0.5rem;
	}

	#smartMoneyApp .smartmoney-mobile-card,
	#smartMoneyApp .smartmoney-mini-item,
	#smartMoneyApp .smartmoney-brief-card,
	#smartMoneyApp .smartmoney-etf-card,
	#smartMoneyApp .smartmoney-compact-flow-card,
	#smartMoneyApp .smartmoney-category-card {
		min-width: 0;
		border-radius: 18px;
	}

	#smartMoneyApp .smartmoney-mobile-single-grid > article,
	#smartMoneyApp .smartmoney-compact-flow-card,
	#smartMoneyApp .smartmoney-category-card {
		padding: 0.82rem 0.74rem;
	}

	#smartMoneyApp .smartmoney-mobile-single-grid h3 {
		font-size: 1rem;
		line-height: 1.2;
	}

	#smartMoneyApp .smartmoney-mobile-single-grid .text-3xl {
		font-size: 1.5rem;
		line-height: 1.05;
	}

	#smartMoneyApp .smartmoney-mobile-single-grid .h-2 {
		height: 0.34rem;
	}

	#smartMoneyApp .smartmoney-compact-flow-head {
		gap: 0.28rem;
	}

	#smartMoneyApp .smartmoney-bucket-title-line {
		align-items: flex-start;
		gap: 0.3rem;
	}

	#smartMoneyApp .smartmoney-compact-flow-head .glass-chip {
		max-width: 100%;
	}

	#smartMoneyApp .smartmoney-hero-link {
		gap: 0.38rem;
		padding: 0.72rem 0.7rem;
	}

	#smartMoneyApp .smartmoney-hero-link-label {
		font-size: 0.86rem;
		line-height: 1.12;
	}

	#smartMoneyApp .smartmoney-hero-link-meta {
		font-size: 0.68rem;
		line-height: 1.1;
	}

	#smartMoneyApp .smartmoney-compact-flow-card .text-2xl,
	#smartMoneyApp .smartmoney-category-card .text-2xl {
		font-size: 1.16rem;
		line-height: 1.1;
	}

	#smartMoneyApp .smartmoney-category-card .smartmoney-inline-meta,
	#smartMoneyApp .smartmoney-category-card .font-semibold,
	#smartMoneyApp .smartmoney-compact-flow-card .font-semibold {
		display: block;
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;
	}

	#smartMoneyApp .smartmoney-etf-grid {
		grid-template-columns: minmax(0, 1fr);
		gap: 0.62rem;
	}

	#smartMoneyApp .smartmoney-etf-card {
		gap: 0.48rem;
		padding: 0.68rem 0.72rem;
	}

	#smartMoneyApp .smartmoney-etf-card-head {
		gap: 0.4rem;
	}

	#smartMoneyApp .smartmoney-etf-card-head > .min-w-0 {
		display: grid;
		gap: 0.22rem;
	}

	#smartMoneyApp
		.smartmoney-etf-card-head
		.flex.flex-wrap.items-center.gap-2 {
		column-gap: 0.28rem;
		row-gap: 0.22rem;
	}

	#smartMoneyApp .smartmoney-etf-current {
		font-size: 0.9rem;
		line-height: 1.1;
	}

	#smartMoneyApp .smartmoney-etf-stat-grid {
		gap: 0.28rem;
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	#smartMoneyApp .smartmoney-etf-name {
		margin-top: 0;
		font-size: 0.76rem;
		line-height: 1.28;
		-webkit-line-clamp: 1;
	}

	#smartMoneyApp .smartmoney-data-pair--compact {
		padding: 0.36rem 0.32rem;
		border-radius: 12px;
	}

	#smartMoneyApp .smartmoney-data-label--compact {
		font-size: 0.56rem;
		letter-spacing: 0;
		white-space: nowrap;
	}

	#smartMoneyApp .smartmoney-data-value--compact {
		margin-top: 0.16rem;
		font-size: 0.68rem;
		line-height: 1.12;
		white-space: nowrap;
		overflow: visible;
		text-overflow: clip;
	}

	#smartMoneyApp .smartmoney-etf-meta {
		padding-top: 0.48rem;
		font-size: 0.7rem;
		line-height: 1.34;
	}

	#smartMoneyApp .smartmoney-etf-meta-primary {
		font-size: 0.74rem;
		line-height: 1.24;
	}

	#smartMoneyApp .smartmoney-etf-meta-secondary {
		display: block;
		overflow: visible;
	}

	#smartMoneyApp .smartmoney-mobile-card .smartmoney-break,
	#smartMoneyApp .smartmoney-mini-item .smartmoney-break,
	#smartMoneyApp .smartmoney-mobile-card .smartmoney-inline-meta,
	#smartMoneyApp .smartmoney-mini-item .smartmoney-inline-meta,
	#smartMoneyApp .smartmoney-brief-card-copy {
		display: -webkit-box;
		-webkit-box-orient: vertical;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	#smartMoneyApp .smartmoney-mobile-card .smartmoney-break,
	#smartMoneyApp .smartmoney-mini-item .smartmoney-break,
	#smartMoneyApp .smartmoney-mobile-card .smartmoney-inline-meta,
	#smartMoneyApp .smartmoney-mini-item .smartmoney-inline-meta {
		-webkit-line-clamp: 2;
	}

	#smartMoneyApp .smartmoney-brief-card-copy {
		-webkit-line-clamp: 3;
	}

	#smartMoneyApp
		.period-dock--mobile
		.period-dock-panel {
		display: flex;
		width: 100%;
		max-width: 100%;
		border-radius: 999px;
		padding: 0.38rem;
		background: var(--app-surface-base);
		border: 1px solid var(--app-border-base);
		box-shadow: 0 12px 28px rgba(15, 23, 42, 0.08);
		box-sizing: border-box;
		overflow: hidden;
	}

	#smartMoneyApp .period-dock--mobile .period-group {
		width: 100%;
		display: flex;
		flex-wrap: nowrap;
		gap: 0.28rem;
	}

	#smartMoneyApp .period-dock--mobile .period-pill {
		flex: 1 1 0;
		width: auto;
		min-width: 0;
		padding: 0.62rem 0.1rem;
		font-size: 0.68rem;
		font-weight: 800;
		letter-spacing: 0;
		white-space: nowrap;
		text-align: center;
	}

	#smartMoneyApp .smartmoney-table {
		min-width: 100%;
	}

	#smartMoneyApp
		:is(
			#smartRotation,
			#smartEtfDetail,
			#smartEtfList,
			#smartAnalyst,
			#smartInstitutional,
			#smartInsider
		)
		> .smartmoney-section-shell
		> .flex.flex-col,
	#smartMoneyApp #smartEtfList .smartmoney-section-shell > .mt-5 > .flex.flex-col,
	#smartMoneyApp #smartInstitutional .smartmoney-mobile-toggle-group {
		padding-left: 0.5rem;
		padding-right: 0.5rem;
		box-sizing: border-box;
	}

	#smartMoneyApp
		#smartEtfDetail
		.smartmoney-section-shell
		> .mt-5
		> .smartmoney-etf-top-lists
		> .panel-soft {
		display: flex;
		flex-direction: column;
		height: 100%;
		padding-left: 0;
		padding-right: 0;
	}

	#smartMoneyApp
		#smartEtfDetail
		.smartmoney-section-shell
		> .mt-5
		> .smartmoney-etf-top-lists
		> .panel-soft
		> .flex.items-center {
		padding-left: 0.5rem;
		padding-right: 0.5rem;
		box-sizing: border-box;
	}

	#smartMoneyApp #smartEtfDetail .smartmoney-etf-top-lists .glass-chip {
		max-width: none;
		min-width: max-content;
		padding-left: 0.42rem;
		padding-right: 0.42rem;
		font-size: 0.56rem;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
		overflow-wrap: normal;
		word-break: normal;
		line-height: 1.12;
		text-align: center;
	}

	#smartMoneyApp #smartEtfDetail .smartmoney-etf-top-lists .smartmoney-mini-list {
		flex: 1 1 auto;
		grid-template-rows: repeat(5, minmax(5.55rem, 1fr));
		gap: 0.58rem;
	}

	#smartMoneyApp #smartEtfDetail .smartmoney-etf-top-lists .smartmoney-mini-item {
		display: flex;
		align-items: center;
		min-height: 0;
	}

	#smartMoneyApp
		#smartEtfDetail
		.smartmoney-etf-top-lists
		.smartmoney-mini-item
		> .flex.items-start {
		width: 100%;
	}

	#smartMoneyApp #smartInsider .smartmoney-section-shell > .mt-5 > article.panel-soft {
		padding-left: 0;
		padding-right: 0;
	}

	#smartMoneyApp
		#smartInsider
		.smartmoney-section-shell
		> .mt-5
		> article.panel-soft
		> .flex.flex-col,
	#smartMoneyApp #smartInsider .smartmoney-insider-data-col {
		padding-left: 0.5rem;
		padding-right: 0.5rem;
		box-sizing: border-box;
	}
}

@media (max-width: 480px) {
	#smartMoneyApp .smartmoney-bucket-grid,
	#smartMoneyApp .smartmoney-category-grid,
	#smartMoneyApp .smartmoney-mobile-single-grid {
		gap: 0.5rem;
	}

	#smartMoneyApp .smartmoney-compact-flow-card,
	#smartMoneyApp .smartmoney-category-card {
		padding: 0.72rem 0.62rem;
	}

	#smartMoneyApp .smartmoney-compact-flow-card > .flex.items-start,
	#smartMoneyApp .smartmoney-category-card > .flex.items-center {
		gap: 0.4rem;
	}

	#smartMoneyApp .smartmoney-compact-flow-head,
	#smartMoneyApp .smartmoney-bucket-title-line {
		gap: 0.24rem;
	}

	#smartMoneyApp .smartmoney-compact-flow-head .font-semibold,
	#smartMoneyApp .smartmoney-bucket-title-line .font-semibold,
	#smartMoneyApp .smartmoney-category-card .font-semibold {
		display: -webkit-box;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 2;
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: normal;
		font-size: 0.76rem;
		line-height: 1.16;
	}

	#smartMoneyApp .smartmoney-compact-flow-card .text-base,
	#smartMoneyApp .smartmoney-category-card .text-2xl {
		font-size: 1rem;
		line-height: 1.08;
	}

	#smartMoneyApp .smartmoney-symbol-toggle {
		margin-top: 0.62rem;
		padding-top: 0.52rem;
	}

	#smartMoneyApp .smartmoney-symbol-toggle > summary {
		min-height: 1.5rem;
		padding: 0.3rem 0.52rem;
		font-size: 0.64rem;
	}

	#smartMoneyApp .smartmoney-symbol-panel {
		margin-top: 0.48rem;
		padding-top: 0.48rem;
	}

	#smartMoneyApp .smartmoney-symbol-headline {
		font-size: 0.66rem;
		line-height: 1.3;
	}

	#smartMoneyApp .smartmoney-compact-flow-card .glass-chip,
	#smartMoneyApp .smartmoney-category-card .glass-chip {
		padding: 0.28rem 0.5rem;
		font-size: 0.64rem;
		line-height: 1;
	}

	#smartMoneyApp .smartmoney-mini-item {
		padding: 0.68rem 0.58rem;
	}

	#smartMoneyApp .smartmoney-mini-item > .flex.items-start {
		display: grid;
		grid-template-columns: auto minmax(0, 1fr);
		grid-template-areas:
			"rank head"
			"meta meta";
		align-items: start;
		gap: 0.42rem 0.5rem;
	}

	#smartMoneyApp .smartmoney-mini-item > .flex.items-start > .smartmoney-rank,
	#smartMoneyApp .smartmoney-mini-item > .flex.items-start > .smartmoney-mini-progress {
		grid-area: rank;
	}

	#smartMoneyApp .smartmoney-mini-item > .flex.items-start > .smartmoney-rank {
		font-size: 0.72rem;
		line-height: 1.2;
	}

	#smartMoneyApp .smartmoney-mini-item > .flex.items-start > .smartmoney-mini-progress {
		align-self: center;
		margin-top: 0;
	}

	#smartMoneyApp .smartmoney-mini-progress {
		width: 0.9rem;
		gap: 0.1rem;
	}

	#smartMoneyApp .smartmoney-mini-progress > i {
		height: 0.16rem;
	}

	#smartMoneyApp .smartmoney-mini-item > .flex.items-start > .min-w-0 {
		grid-area: head;
		min-width: 0;
	}

	#smartMoneyApp .smartmoney-mini-item > .flex.items-start > p:last-child {
		grid-area: head;
		justify-self: end;
		align-self: start;
		max-width: 4.1rem;
		padding-left: 0.25rem;
		background: var(--app-surface-base);
		font-size: 0.78rem;
		line-height: 1.15;
	}

	#smartMoneyApp .smartmoney-mini-item .min-w-0 > .flex {
		padding-right: 4.2rem;
		gap: 0.28rem;
	}

	#smartMoneyApp
		#smartEtfDetail
		.smartmoney-etf-top-lists
		.smartmoney-mini-item
		.min-w-0
		> .flex {
		padding-right: 2.8rem;
	}

	#smartMoneyApp .smartmoney-mini-item .text-sm.font-bold {
		font-size: 0.86rem;
		line-height: 1.12;
	}

	#smartMoneyApp .smartmoney-mini-item .glass-chip {
		padding: 0.28rem 0.48rem;
		font-size: 0.62rem;
		line-height: 1;
	}

	#smartMoneyApp .smartmoney-mini-item .text-xs {
		display: -webkit-box;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 2;
		overflow: hidden;
		text-overflow: ellipsis;
		font-size: 0.68rem;
		line-height: 1.35;
	}

	#smartMoneyApp #smartEtfDetail .smartmoney-etf-top-lists .smartmoney-mini-item .text-xs {
		-webkit-line-clamp: 1;
		line-height: 1.25;
	}
}

@media (max-width: 380px) {
	#smartMoneyApp .smartmoney-bucket-grid,
	#smartMoneyApp .smartmoney-category-grid,
	#smartMoneyApp .smartmoney-mobile-single-grid {
		gap: 0.42rem;
	}

	#smartMoneyApp .smartmoney-compact-flow-head .font-semibold,
	#smartMoneyApp .smartmoney-bucket-title-line .font-semibold,
	#smartMoneyApp .smartmoney-category-card .font-semibold {
		font-size: 0.7rem;
	}

	#smartMoneyApp .smartmoney-compact-flow-card,
	#smartMoneyApp .smartmoney-category-card {
		padding: 0.64rem 0.52rem;
	}

	#smartMoneyApp .smartmoney-mini-item > .flex.items-start > p:last-child {
		max-width: 3.7rem;
		font-size: 0.72rem;
	}

	#smartMoneyApp .smartmoney-mini-item .min-w-0 > .flex {
		padding-right: 3.8rem;
	}

	#smartMoneyApp
		#smartEtfDetail
		.smartmoney-etf-top-lists
		.smartmoney-mini-item
		.min-w-0
		> .flex {
		padding-right: 2.65rem;
	}

	#smartMoneyApp
		#smartEtfDetail
		.smartmoney-etf-top-lists
		.smartmoney-mini-category-chip {
		display: inline-flex;
		flex: 0 0 auto;
		width: auto;
		min-width: fit-content;
		max-width: none;
		padding-left: 0.34rem;
		padding-right: 0.34rem;
		font-size: 0.5rem;
		line-height: 1;
		white-space: nowrap;
		overflow: visible;
		text-overflow: clip;
		word-break: normal;
		overflow-wrap: normal;
	}
}

/* Global neutral lock: smart money must follow white/base-text tokens. */
#smartMoneyApp {
	--smartmoney-text-strong: var(--app-text-base);
	--smartmoney-text-body: var(--app-text-base);
	--smartmoney-text-soft: var(--app-text-base);
	--smartmoney-text-faint: var(--app-text-base);
	--smartmoney-up-text: #d14343;
	--smartmoney-up-strong: #b73535;
	--smartmoney-up-border: var(--app-border-base);
	--smartmoney-up-bg: var(--app-surface-muted);
	--smartmoney-down-text: #2f67d4;
	--smartmoney-down-strong: #2452ad;
	--smartmoney-down-border: var(--app-border-base);
	--smartmoney-down-bg: var(--app-surface-muted);
	--smartmoney-card-border: var(--app-border-base);
	--smartmoney-card-bg: var(--app-surface-base);
	--smartmoney-panel-bg: var(--app-surface-base);
}

#smartMoneyApp .smartmoney-hero::before,
#smartMoneyApp .smartmoney-hero::after {
	background: none;
}

#smartMoneyApp
	:is(
		h1,
		h2,
		h3,
		h4,
		p,
		strong,
		span,
		a,
		button,
		summary,
		li,
		.section-kicker,
		.text-text,
		.text-text-2,
		.text-text-3,
		.text-text-muted,
		.text-primary
	) {
	color: var(--app-text-base);
	text-shadow: none;
}

#smartMoneyApp .text-up {
	color: var(--smartmoney-up-text);
}

#smartMoneyApp .text-down {
	color: var(--smartmoney-down-text);
}

#smartMoneyApp
	:is(
		.story-card,
		section.bg-white,
		article.bg-white,
		div.bg-white,
		details.bg-white,
		.panel-soft,
		.smartmoney-surface-card,
		.smartmoney-brief-card,
		.smartmoney-mini-item,
		.smartmoney-table-wrap,
		.smartmoney-muted-box,
		.bg-surface-2,
		.compact-accordion,
		.compact-accordion-body > div,
		.smartmoney-hero-link,
		.period-dock-panel
	) {
	background: var(--app-surface-base);
	border-color: var(--app-border-base);
	box-shadow: 0 10px 24px rgba(33, 33, 33, 0.04);
}

#smartMoneyApp
	:is(
		.glass-chip,
		.inline-flex.bg-white.text-text-2,
		.inline-flex.bg-white.text-text-3
	) {
	background: var(--app-surface-muted);
	border-color: var(--app-border-base);
	color: var(--app-text-base);
	box-shadow: none;
}

#smartMoneyApp .period-pill:not(.is-active) {
	background: var(--app-surface-muted);
	border-color: var(--app-border-base);
	color: var(--app-text-base);
	box-shadow: none;
}

#smartMoneyApp .smartmoney-freshness-item + .smartmoney-freshness-item {
	border-top-color: var(--app-border-base);
}

#smartMoneyApp .smartmoney-analyst-grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

@media (min-width: 1024px) {
	#smartMoneyApp .smartmoney-analyst-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (min-width: 1440px) {
	#smartMoneyApp .smartmoney-analyst-grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

@media (max-width: 767.98px) {
	#smartMoneyApp #smartAnalyst .smartmoney-analyst-grid {
		gap: 0.62rem;
	}

	#smartMoneyApp #smartAnalyst .smartmoney-analyst-grid .smartmoney-mini-item {
		min-height: 7rem;
		padding: 0.72rem 0.62rem;
	}

	#smartMoneyApp #smartAnalyst .smartmoney-analyst-card-content {
		display: flex;
		flex-direction: column;
		gap: 0.52rem;
		align-items: stretch;
		justify-content: space-between;
	}

	#smartMoneyApp #smartAnalyst .smartmoney-analyst-card-main {
		display: grid;
		grid-template-columns: 1.05rem minmax(0, 1fr);
		gap: 0.38rem;
	}

	#smartMoneyApp #smartAnalyst .smartmoney-analyst-grid .smartmoney-rank {
		width: 1.05rem;
		height: 1.05rem;
		font-size: 0.62rem;
		background: transparent;
	}

	#smartMoneyApp #smartAnalyst .smartmoney-analyst-card-title {
		display: grid;
		grid-template-columns: minmax(2.3rem, auto) max-content;
		gap: 0.22rem;
		justify-content: start;
		align-items: center;
	}

	#smartMoneyApp #smartAnalyst .smartmoney-analyst-symbol {
		font-size: 0.76rem;
	}

	#smartMoneyApp #smartAnalyst .smartmoney-analyst-consensus {
		padding: 0.12rem 0.3rem;
		font-size: 0.5rem;
	}

	#smartMoneyApp #smartAnalyst .smartmoney-analyst-meta {
		max-width: 5.3rem;
		margin-top: 0.28rem;
		font-size: 0.55rem;
		line-height: 1.15;
		text-overflow: clip;
	}

	#smartMoneyApp #smartAnalyst .smartmoney-analyst-score {
		font-size: 0.98rem;
		text-align: left;
	}
}

