/* SentinelQ page. Colours, fonts and shared components come from theme.css. */
:root {
  /* make Bootstrap's primary/dark utilities (bg-primary, bg-dark, ...) use the IDS colours */
  --bs-primary: #274cff;
  --bs-primary-rgb: 39, 76, 255;
  --bs-dark: #111315;
  --bs-dark-rgb: 17, 19, 21;
}
.text-sq-muted {
  color: var(--muted);
}
.bg-sq-paper {
  background: var(--paper);
}
.stage {
  background: var(--dark);
  border-radius: 28px;
}
.window {
  background: #f6f8fa;
  border-radius: 16px;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.24);
}
.topbar {
  height: 28px;
  border-bottom: 1px solid #e2e5e8;
}
.preview-bars {
  height: 160px;
  align-items: end;
}
.preview-bars i {
  flex: 1;
  background: var(--blue);
  border-radius: 3px 3px 0 0;
}
.preview-bars i:nth-child(1) {
  height: 26%;
}
.preview-bars i:nth-child(2) {
  height: 44%;
}
.preview-bars i:nth-child(3) {
  height: 36%;
}
.preview-bars i:nth-child(4) {
  height: 62%;
}
.preview-bars i:nth-child(5) {
  height: 79%;
}
.preview-bars i:nth-child(6) {
  height: 94%;
}
.donut {
  width: 150px;
  height: 150px;
  border-radius: 50%;
  margin: 10px auto;
  background: conic-gradient(var(--blue) 0 48%, #aab7ff 48% 72%, #d8deea 72% 100%);
  position: relative;
}
.donut:after {
  content: "";
  position: absolute;
  inset: 28px;
  border-radius: 50%;
  background: white;
}
.market-dashboard {
  background: #f1f0eb;
}

.market-stat {
  min-height: 155px;
}
.market-stat strong {
  font-family: var(--heading-font);
  font-size: clamp(22px, 2.8vw, 44px);
  letter-spacing: -0.045em;
  line-height: 1.15;
  white-space: nowrap;
}
.market-stat .stat-label {
  font-size: 10px;
  letter-spacing: 0.08em;
}
.market-stat small {
  font-size: 11px;
  opacity: 0.75;
}
.market-stat.light-stat {
  min-height: 220px;
}
.market-stat.light-stat svg {
  width: calc(100% + 32px);
  height: 75px;
  margin: 15px -16px -16px;
  overflow: visible;
}
.market-stat.light-stat svg path {
  fill: none;
  stroke: var(--blue);
  stroke-width: 2.5;
  vector-effect: non-scaling-stroke;
}
.market-stat.light-stat:nth-child(2) svg path {
  stroke: #8c5beb;
}
.market-stat.light-stat:nth-child(3) svg path {
  stroke: #16a0c8;
}
.market-stat.light-stat:nth-child(4) svg path {
  stroke: #04a68b;
}
.market-note {
  font-size: 11px;
}
.ai-card {
  background: var(--dark);
  min-height: 390px;
}
.ai-msg {
  max-width: 85%;
  font-size: 13px;
  line-height: 1.6;
}
.ai-user {
  background: var(--blue);
  align-self: flex-end;
}
.ai-response {
  background: #25292d;
  align-self: flex-start;
}
@media (max-width: 575.98px) {
  .market-stat {
    min-height: 130px;
  }
  .market-stat.light-stat {
    min-height: 180px;
  }
  .market-stat strong {
    font-size: clamp(20px, 5.2vw, 29px);
  }
  .ai-card {
    min-height: 320px;
  }
}
#marketTabs .nav-link {
  border: 0;
  border-bottom: 4px solid transparent;
  border-radius: 0;
  background: transparent;
  color: #84868a;
}

#marketTabs .nav-link.active {
  color: var(--blue);
  border-bottom-color: var(--blue);
}
