
.card {
  background: rgba(10, 12, 20, 0.9);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 4px;
  padding: 18px 18px;
  box-shadow: 0 10px 30px rgba(0,0,0,0.25);
  margin-top: 18px;
}

.page-title {
  font-size: 28px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  margin-bottom: 6px;
}

.page-subtitle {
  font-size: 14px;
  color: #b9c0e6;
  line-height: 1.35;
}

.rule-section {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.section-title {
  font-size: 18px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin-top: 6px;
}

.section-hint {
  font-size: 13px;
  color: #9ca3c4;
  line-height: 1.35;
}

.rules {
  list-style: none;
  display: grid;
  gap: 10px;
  margin-top: 6px;
}

.rule-item {
  padding: 12px 12px;
  border-radius: 4px;
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.06);
  display: flex;
  gap: 10px;
  align-items: flex-start;
}

.rule-num {
  min-width: 56px;
  font-size: 13px;
  letter-spacing: 0.04em;
  color: #d3d7ff;
  opacity: 0.95;
}

.rule-text {
  font-size: 14px;
  line-height: 1.35;
  color: #f5f5f5;
}

.badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 2px 10px;
  border-radius: 4px;
  font-size: 12px;
  letter-spacing: 0.03em;
  border: 1px solid rgba(255,255,255,0.12);
  background: rgba(255,255,255,0.06);
  color: #e7eaff;
  white-space: nowrap;
  margin-left: 8px;
}

.badge.perm { border-color: rgba(255, 60, 60, 0.45); background: rgba(255, 60, 60, 0.10); }
.badge.temp { border-color: rgba(255, 180, 60, 0.45); background: rgba(255, 180, 60, 0.10); }
.badge.mute { border-color: rgba(120, 180, 255, 0.45); background: rgba(120, 180, 255, 0.10); }
.badge.warn { border-color: rgba(200, 200, 255, 0.35); background: rgba(200, 200, 255, 0.08); }

.hr {
  height: 1px;
  background: rgba(255,255,255,0.08);
  margin: 14px 0;
}

.footer-note {
  font-size: 13px;
  color: #9ca3c4;
  line-height: 1.35;
}