.runtime-card {
  display: grid;
  gap: 14px;
  margin: 22px 0;
  padding: 20px;
  border: 1px solid #225762;
  border-radius: 14px;
  background: #061419;
}

.runtime-card > div:first-child {
  display: flex;
  align-items: center;
  gap: 10px;
}

.runtime-card p { margin: 0; }

.runtime-card dl {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
}

.runtime-card dl div {
  padding: 12px;
  border: 1px solid #17414a;
  border-radius: 10px;
}

.runtime-card dt {
  color: #a7d9e4;
  font-size: .78rem;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.runtime-card dd {
  margin: 5px 0 0;
  font-weight: 800;
  text-transform: capitalize;
}

.runtime-dot {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #71848a;
  box-shadow: 0 0 10px #71848a;
}

.runtime-dot[data-state="healthy"] { background: #45df81; box-shadow: 0 0 12px #45df81; }
.runtime-dot[data-state="degraded"] { background: #ffd23f; box-shadow: 0 0 12px #ffd23f; }
.runtime-dot[data-state="unavailable"] { background: #ff5f68; box-shadow: 0 0 12px #ff5f68; }

.progress { grid-template-columns: repeat(6, minmax(0, 1fr)); }

.edition-banner {
  display: grid;
  gap: 3px;
  margin: 18px 0;
  padding: 16px;
  border: 1px solid #ffd23f;
  border-radius: 12px;
  background: #061419;
}

.edition-banner strong { color: #ffd23f; }
.edition-banner span { color: #a7d9e4; }
.choice-grid label.unavailable { opacity: .48; }
.choice-grid label.unavailable input { cursor: not-allowed; }

.assurance-card { margin:22px 0;padding:20px;border:1px solid #225762;border-radius:14px;background:#061419 }
.assurance-heading { display:flex;align-items:flex-start;justify-content:space-between;gap:16px }
.assurance-heading h3,.assurance-heading p { margin:0 }
.assurance-status { flex:0 0 auto;padding:7px 11px;border-radius:999px;background:#16313a;color:#a7d9e4;font-size:.78rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase }
.assurance-status[data-state="ready"] { background:#123c27;color:#78efa2 }
.assurance-status[data-state="action-needed"] { background:#482329;color:#ff9298 }
.assurance-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px }
.assurance-grid article { padding:14px;border:1px solid #17414a;border-radius:10px;background:#041014 }
.assurance-grid article>div { display:flex;align-items:center;gap:9px }
.assurance-grid article p { margin:8px 0 0;color:#c6d9df }
.assurance-grid article small { display:block;margin-top:8px;color:#ffd23f }
.assurance-dot { width:9px;height:9px;border-radius:50%;background:#71848a }
.assurance-grid article[data-state="ready"] .assurance-dot { background:#45df81 }
.assurance-grid article[data-state="action"] .assurance-dot { background:#ff5f68 }
.assurance-grid article[data-state="pending"] .assurance-dot { background:#ffd23f }
.retention-progress { display:grid;gap:8px;margin:0 0 20px;padding:0;list-style:none }
.retention-progress li { display:flex;align-items:center;gap:9px;color:#c6d9df;text-transform:capitalize }
.retention-progress li[data-state="verified"] .assurance-dot { background:#45df81 }
.retention-progress li[data-state="active"] .assurance-dot { background:#ffd23f }
.retention-progress li[data-state="blocked"] .assurance-dot,.retention-progress li[data-state="cancelled"] .assurance-dot { background:#71848a }

@media (max-width: 700px) {
  .runtime-card dl { grid-template-columns: 1fr; }
  .progress { grid-template-columns: 1fr; }
  .assurance-heading { display:grid }
  .assurance-grid { grid-template-columns:1fr }
}
