.activation-message {
  margin: 0 0 18px;
  padding: 15px 18px;
  border-radius: 14px;
  font-weight: 700;
  line-height: 1.45;
}
.activation-message.loading { background: #eef2ff; color: #2445bb; }
.activation-message.success { background: #eaf8ef; color: #17643a; }
.activation-message.error { background: #fff0f0; color: #9d2f2f; }
.access-summary {
  margin: 0 0 22px;
  padding: 18px 20px;
  border: 1px solid #d9e0ff;
  border-radius: 18px;
  background: linear-gradient(135deg, #f7f8ff, #eef2ff);
  display: grid;
  grid-template-columns: 1fr 1fr auto;
  gap: 18px;
  align-items: center;
}
.access-summary div { display: grid; gap: 4px; }
.access-summary small { font-size: .7rem; letter-spacing: .12em; color: #66708a; }
.access-summary strong { font-size: 1rem; color: #151824; }
.access-summary > span {
  padding: 8px 12px;
  border-radius: 999px;
  background: #fff;
  color: #3157ff;
  font-size: .78rem;
  font-weight: 800;
  white-space: nowrap;
}
@media (max-width: 640px) {
  .access-summary { grid-template-columns: 1fr 1fr; }
  .access-summary > span { grid-column: 1 / -1; justify-self: start; }
  .activation-message { font-size: .92rem; }
}
