/* Index impact intelligence: page-only styles to keep other market pages light. */
.nx-impact-page .nx-impact-representation-grid {
  display: grid;
  grid-template-columns: 1.1fr 1fr .9fr;
  gap: .8rem;
  padding: 0 1rem 1rem;
}
.nx-impact-page .nx-impact-comparison-card,
.nx-impact-page .nx-impact-breadth-card,
.nx-impact-page .nx-impact-focus-card {
  min-width: 0;
  padding: .9rem 1rem;
  border: 1px solid #e2eaf3;
  border-radius: 1rem;
  background: #fff;
}
.nx-impact-page .nx-impact-comparison-row,
.nx-impact-page .nx-impact-breadth-card > div:first-child {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .7rem;
  color: #475569;
  font-size: .74rem;
  font-weight: 800;
}
.nx-impact-page .nx-impact-comparison-row strong,
.nx-impact-page .nx-impact-breadth-card strong {
  color: #0f172a;
  font-size: .9rem;
  font-weight: 900;
}
.nx-impact-page .nx-impact-comparison-track {
  position: relative;
  height: 8px;
  margin: .48rem 0 .8rem;
  overflow: hidden;
  border-radius: 999px;
  background: #eef2f7;
}
.nx-impact-page .nx-impact-comparison-track span {
  display: block;
  width: 0;
  height: 100%;
  border-radius: inherit;
  background: #2563eb;
  transition: width .3s ease;
}
.nx-impact-page .nx-impact-comparison-track span[data-tone="down"] { background: #d11f45; }
.nx-impact-page .nx-impact-comparison-track span[data-tone="up"] { background: #0f8a5f; }
.nx-impact-page .nx-impact-comparison-track.is-equal span[data-tone="up"] { background: #0e7490; }
.nx-impact-page .nx-impact-comparison-track.is-equal span[data-tone="down"] { background: #be123c; }
.nx-impact-page .nx-impact-breadth-track {
  display: flex;
  height: 12px;
  margin: .75rem 0 .65rem;
  overflow: hidden;
  border-radius: 999px;
  background: #eef2f7;
}
.nx-impact-page .nx-impact-breadth-track span { display: block; height: 100%; transition: width .3s ease; }
.nx-impact-page #nxImpactBreadthPositiveBar { background: #0f8a5f; }
.nx-impact-page #nxImpactBreadthNegativeBar { background: #d11f45; }
.nx-impact-page .nx-impact-breadth-legend {
  display: flex;
  justify-content: space-between;
  gap: .75rem;
  font-size: .68rem;
  font-weight: 800;
}
.nx-impact-page .nx-impact-breadth-legend .is-up { color: #087a49; }
.nx-impact-page .nx-impact-breadth-legend .is-down { color: #c0263d; }
.nx-impact-page .nx-impact-focus-card {
  display: flex;
  flex-direction: column;
  justify-content: center;
  background: linear-gradient(145deg, #f8fbff, #f5f8fc);
}
.nx-impact-page .nx-impact-focus-card > span {
  color: #64748b;
  font-size: .69rem;
  font-weight: 800;
}
.nx-impact-page .nx-impact-focus-card > strong {
  margin-top: .3rem;
  color: #0f172a;
  font-size: 1.35rem;
  font-weight: 950;
}
.nx-impact-page .nx-impact-focus-card p {
  margin: .35rem 0 0;
  color: #64748b;
  font-size: .67rem;
  line-height: 1.7;
}

.nx-impact-page .nx-impact-chart-card { min-height: 430px; overflow: visible; }
.nx-impact-page .nx-impact-chart { min-height: 410px; }
.nx-impact-page .nx-impact-chart-card--sector { min-height: 470px; }
.nx-impact-page .nx-impact-chart--sector { min-height: 450px; }
.nx-impact-page .apexcharts-tooltip { z-index: 80 !important; }
.nx-impact-page .nx-impact-tip {
  min-width: 190px;
  padding: .7rem .75rem;
  direction: rtl;
  text-align: right;
  background: #fff;
}
.nx-impact-page .nx-impact-tip > strong {
  display: block;
  margin-bottom: .45rem;
  color: #0f172a;
  font-size: .76rem;
}
.nx-impact-page .nx-impact-tip > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .9rem;
  padding-top: .28rem;
  color: #64748b;
  font-size: .66rem;
}
.nx-impact-page .nx-impact-tip b { font-size: .69rem; }

.nx-impact-page .nx-impact-concentration-card {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: .75rem;
  padding: 0 1rem 1rem;
}
.nx-impact-page .nx-impact-concentration-side {
  padding: .85rem;
  border: 1px solid #e5ecf3;
  border-radius: .9rem;
  background: #fff;
}
.nx-impact-page .nx-impact-concentration-side.is-up { background: #f7fcf9; border-color: #d8efe4; }
.nx-impact-page .nx-impact-concentration-side.is-down { background: #fff8f9; border-color: #f1dde2; }
.nx-impact-page .nx-impact-concentration-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .7rem;
  margin-bottom: .75rem;
  font-size: .71rem;
}
.nx-impact-page .nx-impact-concentration-side.is-up .nx-impact-concentration-head strong { color: #087a49; }
.nx-impact-page .nx-impact-concentration-side.is-down .nx-impact-concentration-head strong { color: #be123c; }
.nx-impact-page .nx-impact-concentration-head span { color: #64748b; font-size: .63rem; font-weight: 800; }
.nx-impact-page .nx-impact-concentration-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: .32rem .65rem;
  align-items: center;
  margin-top: .6rem;
}
.nx-impact-page .nx-impact-concentration-item > span { color: #526078; font-size: .64rem; font-weight: 750; }
.nx-impact-page .nx-impact-concentration-item > b { color: #0f172a; font-size: .68rem; }
.nx-impact-page .nx-impact-concentration-item > div {
  grid-column: 1 / -1;
  height: 6px;
  overflow: hidden;
  border-radius: 999px;
  background: #e9eef4;
}
.nx-impact-page .nx-impact-concentration-item i { display: block; width: 0; height: 100%; border-radius: inherit; transition: width .3s ease; }
.nx-impact-page .is-up .nx-impact-concentration-item i { background: #0f8a5f; }
.nx-impact-page .is-down .nx-impact-concentration-item i { background: #d11f45; }

.nx-impact-page #impactTable th:nth-child(2),
.nx-impact-page #impactTable td:nth-child(2) { min-width: 150px; }

@media (max-width: 1199.98px) {
  .nx-impact-page .nx-impact-representation-grid { grid-template-columns: 1fr 1fr; }
  .nx-impact-page .nx-impact-focus-card { grid-column: 1 / -1; }
}
@media (max-width: 767.98px) {
  .nx-impact-page .nx-impact-representation-grid { grid-template-columns: 1fr; padding: 0 .75rem .8rem; }
  .nx-impact-page .nx-impact-focus-card { grid-column: auto; }
  .nx-impact-page .nx-impact-concentration-card { grid-template-columns: 1fr; padding: 0 .75rem .8rem; }
  .nx-impact-page .nx-impact-chart-card { min-height: 400px; }
  .nx-impact-page .nx-impact-chart { min-height: 380px; }
  .nx-impact-page .nx-impact-chart-card--sector { min-height: 440px; }
  .nx-impact-page .nx-impact-chart--sector { min-height: 420px; }
}
