.encryption-stat {
  min-width: 178px;
  overflow: hidden;
}

.encryption-stat strong,
#mapEncryptionValue,
#protocolValue {
  font-variant-numeric: tabular-nums;
  letter-spacing: .035em;
  white-space: nowrap;
}

.encryption-stat strong {
  width: 15.8ch;
  max-width: 100%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1.05;
  font-size: clamp(18px, 2.1vw, 28px);
  transition: opacity .18s ease, transform .18s ease, text-shadow .18s ease, font-size .18s ease, letter-spacing .18s ease;
}

.encryption-stat.enc-compact strong {
  font-size: clamp(15px, 1.72vw, 23px);
  letter-spacing: .018em;
}

.encryption-stat.enc-tiny strong {
  font-size: clamp(12px, 1.42vw, 18px);
  letter-spacing: .006em;
}

.encryption-stat.enc-micro strong {
  font-size: clamp(10px, 1.18vw, 15px);
  letter-spacing: 0;
}

.encryption-stat.is-switching strong {
  opacity: .28;
  transform: translateY(-2px) scale(.98);
}

.encryption-stat.is-verified strong {
  text-shadow:
    0 0 10px rgba(0, 246, 255, .86),
    0 0 22px rgba(0, 255, 170, .38);
}

#mapEncryptionValue {
  display: inline-block;
  max-width: 18ch;
  overflow: hidden;
  text-overflow: ellipsis;
  vertical-align: bottom;
  color: #fff6c8;
  text-shadow: 0 0 10px rgba(255, 211, 106, .62);
}

#protocolValue {
  display: inline-block;
  max-width: 12ch;
  overflow: hidden;
  text-overflow: ellipsis;
  vertical-align: bottom;
  color: #9afcff;
}

.map-status-bar > div,
.map-top-metrics span {
  white-space: nowrap;
}

@media (max-width: 760px) {
  .encryption-stat { min-width: 138px; }
  .encryption-stat strong { width: 14.4ch; }
  #mapEncryptionValue { max-width: 13ch; }
  #protocolValue { max-width: 9ch; }
}

/* Align ENCRYPTION with neighboring hero-stat cards: same internal grid, fixed value row + label row. */
.hero-stats {
  align-items: stretch;
}

.hero-stat {
  min-height: 88px;
  display: grid;
  grid-template-rows: minmax(38px, 1fr) 16px;
  align-items: center;
  justify-items: center;
  text-align: center;
}

.hero-stat strong {
  margin-bottom: 0 !important;
  align-self: end;
  min-height: 38px;
  display: flex !important;
  align-items: flex-end;
  justify-content: center;
  line-height: 1;
}

.hero-stat span {
  align-self: start;
  min-height: 16px;
  line-height: 16px;
  display: block;
}

.encryption-stat {
  min-width: 0;
}

.encryption-stat strong {
  width: 100%;
  min-height: 38px;
  align-items: flex-end;
  line-height: 1;
  transform-origin: center bottom;
}

.encryption-stat.is-switching strong {
  transform: translateY(-1px) scale(.98);
}

@media (max-width: 760px) {
  .hero-stat {
    min-height: 82px;
    grid-template-rows: minmax(34px, 1fr) 16px;
  }

  .hero-stat strong,
  .encryption-stat strong {
    min-height: 34px;
  }
}
