/* Intel Hub · FX Strength · Cross Desk (fonts +1) */

#ih-panel-fx-strength .ih-fs--crossdesk {
  --fs-amber: #e8b44a;
  --fs-mint: #67E6C9;
  --fs-red: #E77A7A;
  --fs-steel: #4a8fa0;
  --fs-line: #1a2a34;
  --fs-text: #e8eef2;
  --fs-dim: #8aa0ab;
  background: #000;
  color: var(--fs-text);
  display: flex;
  flex-direction: column;
  font-family: var(--font-bloomberg, "Bloomberg", "IBM Plex Mono", Consolas, monospace);
  height: 100%;
  min-height: 0;
  overflow: hidden;
}

#ih-panel-fx-strength .ih-fs-cd-top {
  align-items: center;
  border-bottom: 1px solid var(--fs-line);
  display: flex;
  flex: 0 0 auto;
  justify-content: space-between;
  padding: 12px 18px;
}

#ih-panel-fx-strength .ih-fs-cd-brand {
  color: var(--fs-text);
  font-size: clamp(21px, 1.45vw, 31px);
  font-weight: 700;
  letter-spacing: 0.14em;
}

#ih-panel-fx-strength .ih-fs-cd-clock {
  color: var(--fs-dim);
  font-size: clamp(18px, 1.2vw, 26px);
  letter-spacing: 0.08em;
}

#ih-panel-fx-strength .ih-fs-cd-ribbon {
  border-bottom: 1px solid var(--fs-line);
  display: grid;
  flex: 0 0 auto;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

#ih-panel-fx-strength .ih-fs-cd-ribbon-item {
  align-items: baseline;
  border-right: 1px solid var(--fs-line);
  display: flex;
  gap: 14px;
  padding: 14px 18px;
}

#ih-panel-fx-strength .ih-fs-cd-ribbon-item:last-child {
  border-right: 0;
}

#ih-panel-fx-strength .ih-fs-cd-ribbon-item span {
  color: var(--fs-dim);
  font-size: clamp(14px, 0.92vw, 19px);
  letter-spacing: 0.1em;
}

#ih-panel-fx-strength .ih-fs-cd-ribbon-item b {
  font-size: clamp(27px, 1.85vw, 40px);
  font-weight: 700;
  letter-spacing: 0.04em;
}

#ih-panel-fx-strength .ih-fs-cd-ribbon-item em {
  font-size: clamp(21px, 1.4vw, 32px);
  font-style: normal;
  font-weight: 600;
}

#ih-panel-fx-strength .ih-fs-cd-ribbon-item.up b,
#ih-panel-fx-strength .ih-fs-cd-ribbon-item.up em {
  color: var(--fs-mint);
}

#ih-panel-fx-strength .ih-fs-cd-ribbon-item.dn b,
#ih-panel-fx-strength .ih-fs-cd-ribbon-item.dn em {
  color: var(--fs-red);
}

#ih-panel-fx-strength .ih-fs-cd-titlebar {
  align-items: center;
  display: flex;
  flex: 0 0 auto;
  gap: 16px;
  justify-content: space-between;
  padding: 16px 18px 8px;
}

#ih-panel-fx-strength .ih-fs-cd-title {
  color: #fff;
  font-size: clamp(32px, 2.2vw, 48px);
  font-weight: 700;
  letter-spacing: 0.08em;
  margin: 0;
}

#ih-panel-fx-strength .ih-fs-cd-titlebar-right {
  align-items: center;
  display: flex;
  gap: 12px;
}

#ih-panel-fx-strength .ih-fs-cd-base {
  color: var(--fs-amber);
  display: flex;
  font-size: clamp(15px, 1vw, 21px);
  gap: 12px;
  letter-spacing: 0.1em;
}

#ih-panel-fx-strength .ih-fs-cd-base select {
  background: #0a1014;
  border: 1px solid var(--fs-amber);
  color: var(--fs-amber);
  font: inherit;
  font-weight: 700;
  padding: 8px 12px;
}

#ih-panel-fx-strength .ih-fs__refresh {
  background: #0a1014;
  border: 1px solid var(--fs-line);
  color: var(--fs-text);
  cursor: pointer;
  font-size: clamp(19px, 1.2vw, 26px);
  min-height: 42px;
  min-width: 42px;
}

#ih-panel-fx-strength .ih-fs__meta {
  color: var(--fs-dim);
  flex: 0 0 auto;
  font-size: clamp(14px, 0.92vw, 19px);
  letter-spacing: 0.08em;
  padding: 0 18px 12px;
}

#ih-panel-fx-strength .ih-fs__err {
  background: rgba(224, 134, 134, 0.12);
  border-bottom: 1px solid rgba(224, 134, 134, 0.35);
  color: #ee7773;
  flex: 0 0 auto;
  font-size: clamp(14px, 0.92vw, 19px);
  padding: 10px 18px;
}

#ih-panel-fx-strength .ih-fs-cd-scroll {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  gap: 16px;
  min-height: 0;
  overflow: auto;
  padding: 0 18px 14px;
}

#ih-panel-fx-strength .ih-fs-cd-sec {
  color: var(--fs-amber);
  font-size: clamp(18px, 1.2vw, 26px);
  font-weight: 700;
  letter-spacing: 0.14em;
  margin: 0 0 12px;
}

#ih-panel-fx-strength .ih-fs-cd-matrix-panel {
  flex: 0 0 auto;
}

#ih-panel-fx-strength .ih-fs-cd-matrix-grid {
  border: 1px solid var(--fs-line);
  display: grid;
  gap: 0;
  grid-template-columns: 88px repeat(8, minmax(0, 1fr));
}

#ih-panel-fx-strength .ih-fs-cd-matrix-corner,
#ih-panel-fx-strength .ih-fs-cd-matrix-h {
  background: #05090c;
  border-bottom: 1px solid var(--fs-line);
  border-right: 1px solid var(--fs-line);
  color: var(--fs-amber);
  font-size: clamp(15px, 1vw, 21px);
  font-weight: 700;
  letter-spacing: 0.08em;
  padding: 12px 8px;
  text-align: center;
}

#ih-panel-fx-strength .ih-fs-cd-matrix-cell {
  border-bottom: 1px solid var(--fs-line);
  border-right: 1px solid var(--fs-line);
  font-size: clamp(17px, 1.1vw, 24px);
  font-weight: 600;
  padding: 12px 6px;
  text-align: center;
}

#ih-panel-fx-strength .ih-fs-cd-matrix-cell.up {
  background: rgba(116, 222, 198, 0.22);
  color: #dff7ea;
}

#ih-panel-fx-strength .ih-fs-cd-matrix-cell.up-hot {
  background: rgba(116, 222, 198, 0.45);
  color: #fff;
}

#ih-panel-fx-strength .ih-fs-cd-matrix-cell.dn {
  background: rgba(224, 134, 134, 0.28);
  color: #f6d4d4;
}

#ih-panel-fx-strength .ih-fs-cd-matrix-cell.dn-hot {
  background: rgba(224, 134, 134, 0.48);
  color: #fff;
}

#ih-panel-fx-strength .ih-fs-cd-matrix-cell.flat,
#ih-panel-fx-strength .ih-fs-cd-matrix-cell.neu {
  background: #05070a;
  color: #6f828c;
}

#ih-panel-fx-strength .ih-fs-cd-ranks {
  display: grid;
  flex: 1 1 auto;
  gap: 16px;
  grid-template-columns: 1fr 1fr;
  min-height: 280px;
}

#ih-panel-fx-strength .ih-fs-cd-ranks > article {
  border: 1px solid var(--fs-line);
  display: flex;
  flex-direction: column;
  min-height: 0;
  min-width: 0;
  overflow: hidden;
  padding: 12px 12px 0;
}

#ih-panel-fx-strength .ih-fs-cd-rank-wrap {
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;
}

#ih-panel-fx-strength .ih-fs-cd-rank-table {
  border-collapse: collapse;
  font-size: clamp(16px, 1.05vw, 22px);
  width: 100%;
}

#ih-panel-fx-strength .ih-fs-cd-rank-table th {
  background: #05090c;
  border-bottom: 1px solid var(--fs-line);
  color: var(--fs-amber);
  font-size: clamp(14px, 0.92vw, 19px);
  font-weight: 700;
  letter-spacing: 0.08em;
  padding: 13px 7px;
  position: sticky;
  text-align: center;
  top: 0;
  white-space: nowrap;
  z-index: 1;
}

#ih-panel-fx-strength .ih-fs-cd-rank-table td {
  border-bottom: 1px solid rgba(26, 42, 52, 0.9);
  padding: 13px 7px;
  text-align: center;
  white-space: nowrap;
}

#ih-panel-fx-strength .ih-fs-cd-rank-table td.rank {
  color: var(--fs-dim);
  font-weight: 700;
}

#ih-panel-fx-strength .ih-fs-cd-rank-table td.ccy {
  text-align: left;
}

#ih-panel-fx-strength .ih-fs-cd-rank-table td.ccy b {
  color: #fff;
  display: block;
  font-size: clamp(20px, 1.35vw, 29px);
}

#ih-panel-fx-strength .ih-fs-cd-rank-table td.ccy small {
  color: var(--fs-dim);
  font-size: clamp(13px, 0.82vw, 17px);
  letter-spacing: 0.06em;
}

#ih-panel-fx-strength .ih-fs-cd-rank-table .up,
#ih-panel-fx-strength .ih-fs-cd-rank-table .up-hot {
  color: var(--fs-mint);
}

#ih-panel-fx-strength .ih-fs-cd-rank-table .dn,
#ih-panel-fx-strength .ih-fs-cd-rank-table .dn-hot {
  color: var(--fs-red);
}

#ih-panel-fx-strength .ih-fs-cd-rank-table .neu,
#ih-panel-fx-strength .ih-fs-cd-rank-table .flat {
  color: #6f828c;
}

#ih-panel-fx-strength .ih-fs__foot {
  align-items: center;
  border-top: 1px solid var(--fs-line);
  color: var(--fs-dim);
  display: flex;
  flex: 0 0 auto;
  font-size: clamp(14px, 0.9vw, 18px);
  justify-content: space-between;
  letter-spacing: 0.08em;
  padding: 12px 18px;
}

@media (max-width: 1400px) {
  #ih-panel-fx-strength .ih-fs-cd-ranks {
    grid-template-columns: 1fr;
  }
}
