.niche-results {
  order: 4;
  padding: var(--space-9) 0 var(--space-10);
  border-top: 1px solid var(--color-border);
  background: var(--color-white);
  color: var(--color-ink);
}

.demo-results {
  padding-bottom: var(--space-10);
}

.light-page {
  order: 5;
}

.niche-results__intro {
  margin-bottom: var(--space-6);
  text-align: left;
}

.niche-results__intro h2 {
  max-width: 720px;
  margin: 0;
  font-size: clamp(var(--font-size-3xl), 4vw, var(--font-size-5xl));
  font-weight: var(--font-weight-semibold);
  line-height: var(--line-height-heading);
  letter-spacing: var(--letter-spacing-tight);
  text-wrap: balance;
  transition: opacity 180ms var(--ease-standard), transform 180ms var(--ease-standard);
}

.niche-results__intro h2.is-switching {
  animation: niche-title-switch 180ms var(--ease-standard) both;
}

.niche-summary-box {
  display: grid;
  justify-items: center;
  margin-bottom: var(--space-5);
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  text-align: center;
}

.niche-summary-box strong {
  color: var(--color-ink);
  font-size: var(--font-size-2xl);
  font-weight: var(--font-weight-semibold);
  line-height: var(--line-height-control);
  letter-spacing: var(--letter-spacing-normal);
}

.niche-summary-box strong.is-switching {
  animation: niche-title-switch 180ms var(--ease-standard) both;
}

.niche-summary-box span {
  margin-top: var(--space-2);
  color: var(--color-gray);
  font-size: var(--font-size-sm);
  line-height: var(--line-height-body);
}

.niche-skeleton {
  display: inline-block;
  max-width: 100%;
  border-radius: 6px;
  background: #e6e8eb;
  animation: niche-skeleton 1200ms ease-in-out infinite;
}

.niche-skeleton--score {
  width: 58px;
  height: 42px;
}

.niche-skeleton--text {
  display: block;
  width: min(260px, 100%);
  height: 13px;
  margin: 3px auto 0;
}

.niche-skeleton--text-short {
  width: min(190px, 72%);
  margin-top: 9px;
}

.niche-skeleton--metric {
  width: min(92px, 100%);
  height: 30px;
}

.niche-score-card.is-loading .niche-score-ring__value {
  stroke: var(--color-border);
}

.niche-score-card.is-loading .niche-score-ring span {
  color: var(--color-gray);
}

.revenue-potential.is-loading .revenue-potential__rows strong {
  line-height: var(--line-height-control);
}

.niche-score-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-5);
}

.niche-score-card {
  --score-color: #b44a4a;
  display: flex;
  height: 520px;
  min-width: 0;
  flex-direction: column;
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: transparent;
}

.niche-score-card--medium {
  --score-color: #ffb020;
}

.niche-score-card--high {
  --score-color: #2f7d5b;
}

.niche-score-card__header {
  display: flex;
  min-height: 54px;
  align-items: flex-start;
  padding: var(--space-2) var(--space-2) var(--space-5);
  border-bottom: 1px solid var(--color-border);
  text-align: left;
}

.niche-score-card__header .tooltip-label {
  gap: 5px;
}

.niche-score-card__header h3 {
  margin: 0;
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-semibold);
  line-height: var(--line-height-control);
  letter-spacing: var(--letter-spacing-normal);
}

.niche-score-card__visual {
  display: grid;
  grid-template-rows: 172px 56px;
  justify-items: center;
  padding: var(--space-5) 0;
  text-align: center;
}

.niche-score-ring {
  position: relative;
  display: grid;
  width: 172px;
  height: 172px;
  place-items: center;
}

.niche-score-ring svg {
  position: absolute;
  width: 100%;
  height: 100%;
  overflow: visible;
  transform: rotate(-90deg);
}

.niche-score-ring circle {
  fill: none;
  stroke-width: 8;
}

.niche-score-ring__track {
  stroke: var(--color-border);
}

.niche-score-ring__value {
  stroke: var(--score-color);
  stroke-dasharray: 100;
  stroke-dashoffset: 100;
  stroke-linecap: round;
  transition: stroke-dashoffset 900ms var(--ease-standard);
}

.niche-results.is-visible .niche-score-ring__value {
  stroke-dashoffset: calc(100 - var(--score));
}

.niche-score-ring > div {
  position: relative;
  display: grid;
  justify-items: center;
}

.niche-score-ring strong {
  font-size: 40px;
  font-weight: var(--font-weight-semibold);
  line-height: 1;
  letter-spacing: var(--letter-spacing-tight);
  color: var(--score-color);
}

.niche-score-ring span {
  margin-top: 5px;
  color: var(--color-gray);
  font-size: var(--font-size-xs);
}

.niche-score-card__visual p {
  align-self: start;
  max-width: 290px;
  margin: var(--space-4) 0 0;
  color: var(--color-gray);
  font-size: var(--font-size-sm);
  line-height: var(--line-height-body);
}

.niche-score-card__metrics {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  height: 132px;
  margin: 0;
  padding-top: var(--space-5);
  gap: var(--space-5);
  border-top: 1px solid var(--color-border);
}

.niche-score-card__metrics > div {
  display: grid;
  grid-template-rows: auto 1fr;
  min-width: 0;
  padding: 0;
  background: var(--color-white);
}

.niche-score-card__metrics > div + div {
  padding-left: var(--space-2);
}

.niche-score-card__metrics dd {
  margin: 0;
  color: var(--color-ink);
  font-size: var(--font-size-2xl);
  font-weight: var(--font-weight-semibold);
  line-height: var(--line-height-control);
  letter-spacing: var(--letter-spacing-tight);
}

.niche-score-card__metrics small {
  display: block;
  align-self: start;
  max-width: 180px;
  margin-top: var(--space-2);
  padding-bottom: var(--space-3);
  color: var(--color-gray);
  font-size: var(--font-size-sm);
  line-height: var(--line-height-body);
}

.revenue-potential {
  margin-top: var(--space-5);
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
}

.revenue-potential__header {
  display: flex;
  justify-content: space-between;
  min-height: 54px;
  align-items: flex-start;
  padding: var(--space-2) var(--space-2) var(--space-5);
  gap: var(--space-6);
  border-bottom: 1px solid var(--color-border);
}

.revenue-potential__header h3 {
  margin: 0;
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-semibold);
  line-height: var(--line-height-control);
  letter-spacing: var(--letter-spacing-normal);
}

.revenue-potential__header p {
  max-width: 420px;
  margin: 0;
  color: var(--color-gray);
  font-size: var(--font-size-sm);
  line-height: var(--line-height-body);
}

.revenue-potential__rows {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-top: var(--space-5);
  gap: 0;
}

.revenue-potential__rows > div {
  display: flex;
  min-width: 0;
  min-height: 76px;
  flex-direction: column;
  justify-content: center;
  padding: 0 var(--space-5);
}

.revenue-potential__rows > div:first-child {
  padding-left: 0;
}

.revenue-potential__rows > div:last-child {
  padding-right: 0;
}

.revenue-potential__rows > div + div {
  border-left: 1px solid var(--color-border);
}

.revenue-potential__rows span {
  margin-top: var(--space-2);
  color: var(--color-gray);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-medium);
  line-height: var(--line-height-compact);
}

.revenue-potential__rows strong {
  color: var(--color-ink);
  font-size: var(--font-size-xl);
  font-weight: var(--font-weight-semibold);
  letter-spacing: var(--letter-spacing-tight);
}

@keyframes niche-title-switch {
  from {
    opacity: 0.34;
    transform: translateY(6px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes niche-skeleton {
  0% {
    opacity: 0.72;
  }

  50% {
    opacity: 1;
  }

  100% {
    opacity: 0.72;
  }
}

@media (max-width: 1050px) {
  .niche-score-grid {
    grid-template-columns: 1fr;
  }

  .niche-score-card {
    height: auto;
    min-height: auto;
  }

  .niche-score-card__visual {
    grid-template-rows: 172px auto;
  }

  .niche-score-card__metrics {
    height: auto;
    min-height: 132px;
  }
}

@media (max-width: 760px) {
  .niche-results {
    padding: var(--space-7) 0 var(--space-9);
  }

  .niche-results__intro {
    margin-bottom: var(--space-6);
  }

  .niche-results__intro h2 {
    font-size: var(--font-size-3xl);
  }

  .niche-summary-box {
    padding: var(--space-4);
  }

  .niche-summary-box strong {
    font-size: var(--font-size-xl);
  }

  .revenue-potential {
    padding: var(--space-4);
  }

  .revenue-potential__header {
    flex-direction: column;
    gap: var(--space-3);
  }

  .revenue-potential__rows {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-5) 0;
  }

  .revenue-potential__rows > div:nth-child(3) {
    padding-left: 0;
    border-left: 0;
  }
}

@media (max-width: 480px) {
  .niche-score-card__metrics {
    grid-template-columns: 1fr;
  }

  .niche-score-card__metrics > div + div {
    padding-left: 0;
  }

  .niche-score-card__metrics > div {
    padding: var(--space-3) 0;
  }

  .revenue-potential__rows > div {
    min-height: 68px;
    padding-right: var(--space-3);
  }
}

@media (prefers-reduced-motion: reduce) {
  .niche-results__intro h2 {
    transition: none;
  }

  .niche-score-ring__value {
    transition: none;
  }

  .niche-skeleton {
    animation: none;
  }
}
